/// <summary> /// Adds the new feed. /// </summary> /// <param name="urlString">URL string.</param> void AddNewFeed(string urlString) { // Lower the input. urlString = urlString.ToLower(); // Check for valid url. if (!UriHelper.IsValidUrl(urlString) == true) { MessagingCenter.Send(this, Constants.NOTIFICATION_ID_FEED_ITEM_ADD_SUCCEEDED); return; } // Check if blog feed has posts. var feed = WordpressService.GetPosts(urlString); if (feed.Posts.Count == 0) { MessagingCenter.Send(this, Constants.NOTIFICATION_ID_FEED_ITEM_ADD_SUCCEEDED); return; } // Store to preferences. FeedPreferenceService.AddFeed(feed); // Process valid blog feed. MessagingCenter.Send(this, Constants.NOTIFICATION_ID_FEED_ITEM_ADD_SUCCEEDED, feed); // Close page after command was executed. ClosePage(); }
/// <summary> /// Adds in-app stored feed post list pages. /// </summary> void CreateChildren() { Children.Clear(); var feeds = FeedPreferenceService.GetFeeds(); if (feeds.Count == 0) { AddEmptyPage(); } else { foreach (var feed in feeds) { AddFeedPostListPage(feed); } } }
/// <summary> /// Triggeres the removing of all stored feeds. /// </summary> async void RemoveAllFeedsAsync() { // Confirm user's choice. var confirmed = await MaterialDialog.Instance.ConfirmAsync(message : "Are you sure?", title : "Confirm", confirmingText : "Delete", dismissiveText : "No"); // Cancel operation if user declined. if (confirmed == false) { return; } // Remove all feeds from storage. FeedPreferenceService.RemoveAll(); // Raise notifications that feed(s) has been updated aka. removed. MessagingCenter.Send(this, Constants.NOTIFICATION_ID_FEED_ITEM_UPDATED); // Close page after command was executed. ClosePage(); }