/** * Private helpers: * - Populate bookmarks * [Transforms bookmark models into BookmarkBox which have additional attribute to deremine if the bookmark checkbox on UI hast to be checked] */ private void PopulateBookmarks() { foreach (Bookmark bookmark in (new BookmarkRepo()).LoadBookmarks(User, true)) { BookmarkBoxes.Add(new BookmarkBox(bookmark)); } }
public void Create(object input = null) { try { // 1. Add new bookmark to database string trimmedName = Name.Trim(); bool duplicate_check = (new BookmarkRepo()).AddBookmark(trimmedName, Global, User); // 1.1 Track change BookmarkInfo info = new BookmarkInfo(trimmedName, User); new Tracker(User).TrackCreate <BookmarkInfo>(info); // 2. Refresh Bookmarks collection BookmarkBoxes.Clear(); PopulateBookmarks(); Name = ""; // 3. Hide detailed view //Win.Height = _initialHeight; CreateVisibility = Visibility.Collapsed; NewBookmarkVisibility = Visibility.Visible; // 4. Check bookmark boxes CheckBookmarkBoxes(); Global = 0; if (!duplicate_check) { _dialogService.OpenDialog(new DialogOkViewModel("This bookmark already exists.", "Warning", DialogType.Warning)); } } catch (Exception e) { new BugTracker().Track("Bookmark Manager", "Create Bookmark", e.Message, e.StackTrace); _dialogService.OpenDialog(new DialogOkViewModel("Something went wrong.", "Error", DialogType.Error)); } }