Beispiel #1
0
        // Anropas i updatefeed, den fill en lista med "feeds". Chosenfile är källan, filestamp används som markör för att se ifall listan redan hämtats. Playlist är en lista av alla sparade profiler.
        private void fillFeedList(string chosenFile, string fileStamp, List <string> playlist)
        {
            try
            {
                listViewDetails.Items.Clear();
                xDoc = XDocument.Load(chosenFile);
                //hämtar ut element från xDoc till en lista av objekt
                var newItems = (from x in xDoc.Descendants("item")
                                select new
                {
                    // hämtar ut title element ur xdoc och ger objektet med namn title det värdet.
                    title = x.Element("title").Value,
                    pubDate = x.Element("pubDate").Value,
                    url = (string)x.Element("enclosure").Attribute("url").Value,
                });
                //så länge items inte är tom..
                if (newItems != null)
                {
                    listViewDetails.Items.Clear();
                    foreach (var i in newItems)
                    {
                        bool played = false;
                        if (HanteraRss.checkPlayedExist(playlist, i.title))
                        {
                            played = true;
                        }
                        this.listViewDetails.Items.Add(new FeedItems {
                            Title = i.title, Date = i.pubDate, URL = i.url, Played = played, Stamp = fileStamp
                        });
                    }
                }
            }

            catch (System.Net.WebException)
            {
                MessageBox.Show("URL fungerade ej");
            }

            catch (FileNotFoundException)
            {
                printStatusMessage("Den URL som du angivit är felaktig");
            }
        }
Beispiel #2
0
        // Metod som anropas när ett objekt har spelats, och markerar det som "spelat".
        private void setPlayed(string chosenFile, string fileStamp)
        {
            List <string> playlist = new List <string>();

            playlist = HanteraRss.getPlayed(@"savedFeeds/" + fileStamp + ".xml");
            try
            {
                listViewDetails.Items.Clear();
                xDoc = XDocument.Load(chosenFile);
                var newItems = (from x in xDoc.Descendants("item")
                                select new
                {
                    title = x.Element("title").Value,
                    pubDate = x.Element("pubDate").Value,
                    url = (string)x.Element("enclosure").Attribute("url").Value,
                });

                if (newItems != null)
                {
                    listViewDetails.Items.Clear();
                    foreach (var i in newItems)
                    {
                        bool played = false;
                        if (HanteraRss.checkPlayedExist(playlist, i.title))
                        {
                            played = true;
                        }
                        this.listViewDetails.Items.Add(new FeedItems {
                            Title = i.title, Date = i.pubDate, URL = i.url, Stamp = fileStamp, Played = played
                        });
                    }
                }
            }

            catch (System.Net.WebException)
            {
                MessageBox.Show("URL fungerade ej");
            }
        }