Esempio n. 1
0
        private void categoryCombo_SelectedIndexChanged(object sender, EventArgs e)
        {
            string        selectedCat   = categoryCombo.GetItemText(this.categoryCombo.SelectedItem);
            List <string> filtredTitles = Feeds.fList(selectedCat);

            listBox1.DataSource = filtredTitles;
        }
Esempio n. 2
0
        private void Form1_Load(object sender, EventArgs e)
        {
            Categories.GetCategories();
            List <string> titles = Feeds.getPodcastsFromXML();

            listBox1.DataSource = titles;
        }
Esempio n. 3
0
 protected override async Task CloseAsync()
 {
     ValidationTimer.Stop();
     Feeds.CollectionChanged -= OnFeedsCollectionChanged;
     ValidationTimer.Elapsed -= OnValidationTimerElapsed;
     Feeds.ForEach(f => UnsubscribeFromFeedPropertyChanged(f));
 }
Esempio n. 4
0
 public FeedsSearchingPage()
 {
     Feeds.Add(new FeedViewModel("请输入要你需要订阅的网站", "", "", "NoPic"));
     AddPaperPage.isFeedsSearchingPageActive = true;
     AddPaperPage.isThereFeed = false;
     this.InitializeComponent();
 }
Esempio n. 5
0
        public FeedsViewModel()
        {
            ResourceDictionary res = Application.Current.Resources;

            this.AllRssTitle = res["AllRss_Title"] as String;
            var rssEnabled = res["AllRss_Enabled"];

            this.AreAllRssEnabled = (rssEnabled is Boolean) && (Boolean)rssEnabled == true;

            String allRssGroup = res["AllRss_Group"] as String;

            var collection = res["RssFeeds"];

            if (collection is RssCollection)
            {
                this.Feeds = collection as RssCollection;
                if (this.AreAllRssEnabled)
                {
                    Feeds.Insert(0, new RssViewModelInfo()
                    {
                        Title      = allRssGroup,
                        _viewModel = null,
                        ViewModel  = getAllRssViewModel
                    });
                }
            }
            else if (collection is GroupRssCollection)
            {
                this.RssCollections = collection as GroupRssCollection;
            }
        }
Esempio n. 6
0
 public void Save()
 {
     DataService.SaveFilters(Filters.ToList());
     DataService.SaveFeeds(Feeds.ToList());
     DataService.SaveDownloadedTorrents(DownloadedTorrents.ToList());
     DataService.SaveState(State);
 }
Esempio n. 7
0
 private void LoadStateFromXML(string sFile)
 {
     try
     {
         XElement xDocs = XElement.Load(sFile);
         oFeeds = new Feeds(xDocs.Descendants("Feeds").First());
         foreach (Feed oFeed in oFeeds)
         {
             lvwFeeds.Items.Add(new ListViewItem(new[] { oFeed.Address }));
         }
         oDocs = new Documents(xDocs.Descendants("Documents").First());
         foreach (Document oDoc in oDocs.OrderBy(x => x.Title))
         {
             lvwDownloadLinks.Items.Add(new ListViewItem(new[] { oDoc.Title, oDoc.Status.ToString() }));
         }
         oReps = new Replaces(xDocs.Descendants("Replaces").First());
         ListViewItem oItem;
         foreach (Replace oRep in oReps.OrderBy(x => x.ThisValue))
         {
             oItem     = new ListViewItem(new[] { oRep.ThisValue, oRep.WithThis });
             oItem.Tag = oRep;
             lswReplaces.Items.Add(oItem);
         }
     }
     catch (Exception err)
     {
         MessageBox.Show(err.Message + Environment.NewLine);
         oDocs = new Documents();
     }
 }
Esempio n. 8
0
 public void ItemPaging(NewsFeed feed)
 {
     if (feed == Feeds.Last())
     {
         IsLoadMoreNeed = true;
     }
 }
Esempio n. 9
0
 public void AddCurrentFeed()
 {
     Feeds.Add(CurrentFeed);
     IsFeedAddedMessageShowing = true;
     DoAfterDelay(5000, () => IsFeedAddedMessageShowing = false);
     var withoutAwait = SaveFeedsAsync();
 }
Esempio n. 10
0
 public void AddNewFeed()
 {
     Feeds.Add(NewFeedBookmark);
     NewFeedBookmark = new FeedBookmarkItem();
     HasChanges      = true;
     Feeds.FireChange();
 }
Esempio n. 11
0
        private async Task RefreshItems(bool Confirm)
        {
            try
            {
                int MsgBoxResult = 1;
                if (Confirm)
                {
                    MsgBoxResult = await new MessagePopup().OpenPopup("Refresh news items", "Do you want to refresh all the news items and scroll to the top?", "Refresh news items", "", "", "", "", true);
                }
                if (MsgBoxResult == 1)
                {
                    //Reset the online status
                    OnlineUpdateFeeds = true;
                    OnlineUpdateNews  = true;
                    ApiMessageError   = string.Empty;

                    //Load all the items
                    await LoadItems(true, false);
                }
                else if (!List_NewsItems.Any() && !(bool)AppVariables.ApplicationSettings["DisplayReadMarkedItems"])
                {
                    Feeds TempFeed = new Feeds();
                    TempFeed.feed_id = "1";

                    //Change the selection feed
                    ChangeSelectionFeed(TempFeed, false);

                    //Load all the items
                    await LoadItems(false, true);
                }
            }
            catch { }
        }
Esempio n. 12
0
        static void Main(string[] args)
        {
            //RssFeed feed;

            //feed = new RssFeed("https://www.heise.de/rss/heise-atom.xml", 7);
            //feed.Refresh();
            //feed.MarkAllItemsAsRead();
            //Print(feed.Items);

            //feed = new RssFeed("https://rss.golem.de/rss.php?feed=ATOM1.0", 7);
            //feed.Refresh();
            //Print(feed.Items);

            Feeds feeds = new Feeds();

            feeds.Add("https://www.heise.de/rss/heise-atom.xml");
            feeds.Add("https://rss.golem.de/rss.php?feed=ATOM1.0");

            foreach (RssFeed f in feeds.FeedList)
            {
                f.Refresh();
                Print(f.Items);
            }

            Console.ReadLine();
        }
Esempio n. 13
0
        //Cleanup page resources
        async Task CleanupPageResources()
        {
            try
            {
                System.Diagnostics.Debug.WriteLine("Clearing page resources...");

                DisablePageEvents();
                vCurrentLoadingFeedFolder = null;

                ListView_Items.ItemContainerStyle = null;
                ListView_Items.ItemsSource        = null;
                ListView_Items.ItemsPanel         = null;
                ListView_Items.Items.Clear();

                combobox_FeedSelection.ItemContainerStyle = null;
                combobox_FeedSelection.ItemsSource        = null;
                combobox_FeedSelection.ItemsPanel         = null;
                combobox_FeedSelection.Items.Clear();

                await ClearObservableCollection(List_Feeds);
                await ClearObservableCollection(List_FeedSelect);
                await ClearObservableCollection(List_NewsItems);
                await ClearObservableCollection(List_SearchItems);
                await ClearObservableCollection(List_StarredItems);
            }
            catch { }
        }
Esempio n. 14
0
        //Set the feed icon
        private async void btn_SetIcon_Clicked(object sender, EventArgs e)
        {
            try
            {
                Feeds SelectedItem = (Feeds)listview_Items.SelectedItem;
                if (SelectedItem != null)
                {
                    List <string> messageAnswers = new List <string>();
                    messageAnswers.Add("Set custom icon");
                    messageAnswers.Add("Reset the icon");
                    messageAnswers.Add("Cancel");

                    string messageResult = await MessagePopup.Popup("Change the feed icon", "Would you like to set a custom feed icon for " + SelectedItem.feed_title + "?", messageAnswers);

                    if (messageResult == "Set custom icon")
                    {
                        Debug.WriteLine("Changing icon for feed: " + SelectedItem.feed_id + " / " + SelectedItem.feed_title);

                        PickOptions pickOptions = new PickOptions();
                        pickOptions.FileTypes = FilePickerFileType.Png;

                        FileResult pickResult = await FilePicker.PickAsync(pickOptions);

                        if (pickResult != null)
                        {
                            //Load feed icon
                            Stream imageStream = await pickResult.OpenReadAsync();

                            //Update feed icon
                            if (imageStream.CanSeek)
                            {
                                imageStream.Position = 0;
                            }
                            SelectedItem.feed_icon = ImageSource.FromStream(() => imageStream);

                            //Save feed icon
                            AVFiles.File_SaveStream(SelectedItem.feed_id + ".png", imageStream, true, true);
                        }
                    }
                    else if (messageResult == "Reset the icon")
                    {
                        //Delete the feed icon
                        AVFiles.File_Delete(SelectedItem.feed_id + ".png", true);

                        //Load default feed icon
                        SelectedItem.feed_icon = ImageSource.FromResource("NewsScroll.Assets.iconRSS-Dark.png");

                        //Reset the online status
                        OnlineUpdateFeeds = true;
                        ApiMessageError   = string.Empty;

                        List <string> messageAnswersReset = new List <string>();
                        messageAnswersReset.Add("Ok");

                        await MessagePopup.Popup("Feed icon reset", "The feed icon has been reset and will be refreshed on the next online feed update, you can refresh the feeds by clicking on the refresh icon above.", messageAnswersReset);
                    }
                }
            }
            catch { }
        }
        /// <summary>
        /// Writes the configuration to loader config and saves the config.
        /// </summary>
        public void Save()
        {
            _config.NuGetFeeds = Feeds.Where(x => !string.IsNullOrEmpty(x.URL)).ToArray();
            IConfig <LoaderConfig> .ToPath(_config, Paths.LoaderConfigPath);

            IoC.Get <AggregateNugetRepository>().FromFeeds(Feeds);
        }
Esempio n. 16
0
        private void ChangeBtn_Click(object sender, EventArgs e)
        {
            string newCat = changeCatCombo.GetItemText(this.changeCatCombo.SelectedItem);
            string feed   = PickFeedCombo.GetItemText(this.PickFeedCombo.SelectedItem);
            string newInt = intervalCombo.GetItemText(this.intervalCombo.SelectedItem);

            if (Validation.textEmpty(feed))
            {
                MessageBox.Show("Du måste välja en feed att ändra!");
            }
            else
            {
                if (Validation.textEmpty(newCat))
                {
                    MessageBox.Show("Du måste välja en kategori!");
                }
                else
                {
                    if (Validation.textEmpty(newInt))
                    {
                        MessageBox.Show("Du måste välja en intervall");
                    }
                    else
                    {
                        Feeds.UpdateXml(feed, newCat, newInt);
                        MessageBox.Show("Feeden: " + feed + " har ändrats!");
                        Close();
                    }
                }
            }
        }
Esempio n. 17
0
        /// <summary>
        ///     Follows the feed to find all versions of package matching 'name'
        /// </summary>
        /// <param name="name">the name or partial name of a package to find</param>
        /// <returns>A set of packages</returns>
        internal IEnumerable <Package> Query(string name)
        {
            if (!IsValid || string.IsNullOrEmpty(name))
            {
                return(Enumerable.Empty <Package>());
            }

            // first get all the packages that are in this feed with a matched name
            var packages = PackagesFilteredByName(name).Select(packageGroup => new Package(_request, packageGroup)).Where(package => package.IsValid && package.Name.EqualsIgnoreCase(name));

            // then follow any supplemental links to more declared latest packages.
            var morePackages = More.SelectMany(nextGroup => new Feed(_request, nextGroup).Query(name));

            // let's search child feeds that declare that the name of the package in the feed matches the given name
            var packagesByName = Feeds.Where(feedGroup => feedGroup.Any(link => name.EqualsIgnoreCase(link.Attributes[Iso19770_2.Discovery.Name]))).SelectMany(feed => new Feed(_request, feed).Query(name));

            // and search child feeds that the name would be in their range.
            var packagesByNameRange = Feeds.Where(feedGroup => feedGroup.Any(link => {
                var minName = link.Attributes[Iso19770_2.Discovery.MinimumName];
                var maxName = link.Attributes[Iso19770_2.Discovery.MaximumName];
                if (string.IsNullOrEmpty(minName) || string.IsNullOrEmpty(maxName))
                {
                    return(false);
                }
                return(String.Compare(minName, name, StringComparison.OrdinalIgnoreCase) <= 0 && String.Compare(name, maxName, StringComparison.OrdinalIgnoreCase) <= 0);
            })).SelectMany(feed => new Feed(_request, feed).Query(name));

            return(packages.Concat(morePackages).Concat(packagesByName).Concat(packagesByNameRange));
        }
Esempio n. 18
0
        private async Task Filter()
        {
            TokenSource.Cancel();

            var query = from feed in await RSSDataService.GetFeedsDataAsync(0) select feed;

            if (FilterSelectedSource != null)
            {
                query = query.Where(x => x.PostSource.Id == FilterSelectedSource.Id);
            }
            if (!string.IsNullOrWhiteSpace(FilterTitle))
            {
                query = query.Where(x => x.PostTitle.ToLower().Contains(FilterTitle.ToLower()));
            }
            if (!string.IsNullOrWhiteSpace(FilterCreator))
            {
                query = query.Where(x => x.Authors.Any(x => x.Email.ToLower() == FilterCreator.ToLower()));
            }
            if (FilterIsUnreadOnly)
            {
                query = query.Where(x => x.IsRead == false);
            }

            Feeds.Clear();
            foreach (var item in query)
            {
                Feeds.Add(item);
            }
        }
        private async void RefreshMethod()
        {
            #region Checking Network

            if (false == Utility.Instance.IsNetworkAvailable)
            {
                ToasteIndicator.Instance.Show(String.Empty, "网络连接已中断", null, 3);

                return;
            }

            #endregion

            FeedsLoading = true;

            var result = await _feed.GetFeedsAsync(LoginUser.Current.Token, "/feeds?excerpt_len=75", true);

            if (result.Result == null)
            {
                ToasteIndicator.Instance.Show(String.Empty, result.Error.Message, null, 3);
                return;
            }

            var previousUri = new Uri(result.Result.Paging.Previous);

            var feedsAll = (from object feed in Feeds select feed as Feed).ToList();

            var newFeeds = new List <Feed>();

            var query = from i in result.Result.GetItems()
                        let asFeed = i as Feed
                                     where feedsAll.All(o => asFeed != null && o.Target.Url != asFeed.Target.Url)
                                     select asFeed;

            newFeeds.AddRange(query);

            if (newFeeds.Count == 0)
            {
                FeedsLoading = false;

                ToasteIndicator.Instance.Show(String.Empty, "没有更新的内容了...", null, 3);

                return;
            }

            ToasteIndicator.Instance.Show(String.Empty, String.Format("获得了 {0} 条动态...", newFeeds.Count), null, 3);

            FeedsLoading = false;

            if (newFeeds.Count == 20)
            {
                Feeds = new IncrementalLoading <Feed>(GetMoreFeeds, "/feeds?excerpt_len=75", Offset, false);
                return;
            }

            for (var i = 0; i < newFeeds.Count; i++)
            {
                Feeds.Insert(i, newFeeds[i]);
            }
        }
Esempio n. 20
0
        public void EnterModelContext(NavigationContext oldContext, NavigationContext newContext)
        {
            // Load settings
            NewsSettings settings = ServiceRegistration.Get <ISettingsManager>().Load <NewsSettings>();

            HasChanges      = false;
            NewFeedBookmark = new FeedBookmarkItem();
            Feeds.Clear();
            lock (settings.FeedsList)
            {
                if (settings.FeedsList.Count == 0)
                {
                    foreach (var feed in NewsSettings.GetDefaultRegionalFeeds())
                    {
                        Feeds.Add(new FeedBookmarkItem {
                            Name = feed.Name, Url = feed.Url
                        });
                    }
                }
                else
                {
                    foreach (var feed in settings.FeedsList)
                    {
                        Feeds.Add(new FeedBookmarkItem {
                            Name = feed.Name, Url = feed.Url
                        });
                    }
                }
            }
        }
Esempio n. 21
0
 public RssPage()
 {
     System.Web.HttpContext.Current.Response.ContentType = "application/xml";
     if (config.Rssstatus == 1)
     {
         int forumid = DNTRequest.GetInt("forumid", -1);
         if (forumid == -1)
         {
             System.Web.HttpContext.Current.Response.Write(Feeds.GetRssXml(config.Rssttl));
             System.Web.HttpContext.Current.Response.End();
             return;
         }
         else
         {
             ForumInfo forum = Forums.GetForumInfo(forumid);
             if (forum != null)
             {
                 if (forum.Allowrss == 1)
                 {
                     System.Web.HttpContext.Current.Response.Write(Feeds.GetForumRssXml(config.Rssttl, forumid));
                     System.Web.HttpContext.Current.Response.End();
                     return;
                 }
             }
         }
     }
     System.Web.HttpContext.Current.Response.Write("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
     System.Web.HttpContext.Current.Response.Write("<Rss>Error</Rss>\r\n");
     System.Web.HttpContext.Current.Response.End();
 }
Esempio n. 22
0
        public MainViewModel()
        {
            TorrentDropDirectory = DROP_FOLDER;

            if (!Directory.Exists(Path.GetDirectoryName(TorrentDropDirectory)))
            {
                Directory.CreateDirectory(Path.GetDirectoryName(TorrentDropDirectory));
            }

            Feed tvFeed = new Feed()
            {
                Title = "TV Shows", URL = "https://kickass.to/tv/?rss=1"
            };

            Feeds.Add(tvFeed);
            Feeds.Add(new Feed()
            {
                Title = "Movies", URL = "https://kickass.to/movies/?rss=1"
            });
            Feeds.Add(new Feed()
            {
                Title = "Music", URL = "https://kickass.to/music/?rss=1"
            });

            Filter tvFilter = new Filter()
            {
                Enabled = false, SearchInFeed = tvFeed, TitleFilter = "*", IgnoreCaps = true, Include = "", Exclude = "1080p;HDTV;", IsTV = false
            };

            Filters.Add(tvFilter);

            SelectedFeed   = tvFeed;
            SelectedFilter = tvFilter;
        }
Esempio n. 23
0
 public async Task <IEnumerable <FeedItem> > Get([FromUri] DateTime dmin,
                                                 DateTime dmax, int?lmin, int?lmax, IEnumerable <int> ls, IEnumerable <int> ets,
                                                 int?c, int?r, string cf, IEnumerable <int> us, int?topN)
 {
     return(await Task.FromResult(Feeds.Get(dmin, dmax, lmin, lmax,
                                            ls, ets, c, r, cf, us, topN)));
 }
Esempio n. 24
0
 /// <inheritdoc/>
 public override int GetHashCode()
 {
     unchecked
     {
         int result = base.GetHashCode();
         if (MinInjectorVersion != null)
         {
             result = (result * 397) ^ MinInjectorVersion.GetHashCode();
         }
         if (Uri != null)
         {
             result = (result * 397) ^ Uri.GetHashCode();
         }
         if (Name != null)
         {
             result = (result * 397) ^ Name.GetHashCode();
         }
         result = (result * 397) ^ Summaries.GetSequencedHashCode();
         result = (result * 397) ^ Descriptions.GetSequencedHashCode();
         if (Homepage != null)
         {
             result = (result * 397) ^ Homepage.GetHashCode();
         }
         result = (result * 397) ^ NeedsTerminal.GetHashCode();
         result = (result * 397) ^ Feeds.GetSequencedHashCode();
         result = (result * 397) ^ Categories.GetSequencedHashCode();
         result = (result * 397) ^ Icons.GetSequencedHashCode();
         result = (result * 397) ^ Elements.GetSequencedHashCode();
         result = (result * 397) ^ EntryPoints.GetSequencedHashCode();
         result = (result * 397) ^ CapabilityLists.GetSequencedHashCode();
         return(result);
     }
 }
Esempio n. 25
0
        private void gridFeed_CellValueChanged(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                if (gridFeed.Rows.Count < 0)
                {
                    return;
                }
                if (e.RowIndex < 0)
                {
                    return;
                }
                var rad = gridFeed.Rows[e.RowIndex];
                if (rad.Tag == null)
                {
                    return;
                }

                int   rowIndex = gridFeed.Rows[e.RowIndex].Index;
                Feeds valdCell = (Feeds)gridFeed.Rows[rowIndex].Tag;
                var   feed     = (Feeds)rad.Tag;
                feed.FeedTitle                   = (String)rad.Cells["Title"].Value;
                feed.FeedUpdateIntervall         = (String)rad.Cells["Frequencys"].Value;
                feed.FeedCategories.CategoryName = (String)rad.Cells["Category"].Value;
                feedsMethods.UpdateFeeden(rowIndex, feed);
                gridFeed.Rows.Clear();
                UpdateFeed();
            }
            catch (NullReferenceException)
            { return; }
        }
Esempio n. 26
0
        private void ParseRssFile()
        {
            string       RssFeedUrl = "http://www.haberturk.com/rss/" + konuid + ".xml";
            List <Feeds> feeds      = new List <Feeds>();

            try
            {
                XDocument xDoc = new XDocument();
                xDoc = XDocument.Load(RssFeedUrl);
                var items = (from x in xDoc.Descendants("item")
                             select new
                {
                    title = x.Element("title").Value,
                    link = x.Element("link").Value,
                    pubDate = x.Element("pubDate").Value,
                    description = x.Element("description").Value
                });
                if (items != null)
                {
                    foreach (var i in items)
                    {
                        Feeds f = new Feeds
                        {
                            title       = i.title,
                            link        = i.link,
                            pubDate     = i.pubDate,
                            description = i.description
                        };

                        feeds.Add(f);
                    }
                }
                //  Response.Write("<script>alert('Data inserted successfully')</script>");
                DataTable table1 = new DataTable();
                table1.Columns.Add("title");
                table1.Columns.Add("link");
                table1.Columns.Add("pubDate");
                table1.Columns.Add("description");



                foreach (Feeds prime in feeds)
                {
                    //resimLink = prime.description.Substring(51, 70);
                    //  Response.Write("<script>alert('"+theDescription+"')</script>");
                    table1.Rows.Add(prime.title, prime.link, prime.pubDate, prime.description);
                    //Response.Write("<script>alert('"+prime.title+"  "+prime.description+"')</script>");
                }
                DataList1.DataSource = table1;
                DataList1.DataBind();


                // gvRss.DataSource = feeds;
                // gvRss.DataBind();
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Esempio n. 27
0
 /// <summary>
 /// Adds the current feed (in the Add Feed view) to the list of saved feeds.
 /// </summary>
 public void AddCurrentFeed()
 {
     Feeds.Add(CurrentFeed);
     NameOfFeedJustAdded       = CurrentFeed.Name;
     IsFeedAddedMessageShowing = true;
     Helpers.DoAfterDelay(5000, () => IsFeedAddedMessageShowing = false);
 }
Esempio n. 28
0
 public async Task UpdateFeedAsync()
 {
     for (int i = 1; i < Feeds.Count(); i++)
     {
         await FeedDataSource.UpdateArticles(Feeds[i]);
     }
     Initialized?.Invoke(this, EventArgs.Empty);
 }
Esempio n. 29
0
 public void LoadTiles(MetroPanel panel)
 {
     foreach (Feed feed in Feeds.GetFeedsFromConfig())
     {
         var tile = CreateTile(feed);
         AddTile(panel, tile);
     }
 }
Esempio n. 30
0
 /// <summary>
 /// Gets every item in the feed and change any unread item to read
 /// then updateing the database with it
 /// </summary>
 /// <returns>Task Type</returns>
 private async Task MarkAsRead()
 {
     foreach (var item in Feeds.Where(x => x.IsRead == false))
     {
         item.IsRead = true;
         await RSSDataService.UpdateFeedAsync(item);
     }
 }