public static void hamtaRssInfo(string url, int freq, string kategori) { using (XmlReader reader = XmlReader.Create(url)) { try { SyndicationFeed feed = SyndicationFeed.Load(reader); var mainTitle = feed.Title.Text; int i = 0; foreach (SyndicationItem item in feed.Items) { string title = item.Title.Text; string summary = (((TextSyndicationContent)item.Summary).Text); Avsnitt avsnitt = new Avsnitt(mainTitle, title, summary); AvsnittsLista.laggTill(avsnitt); i++; } Podcast podcast = new Podcast(mainTitle, freq, kategori, i, url); PodcastLista.laggTill(podcast); FrekvensTimer.Start(mainTitle, url, freq, kategori); } catch (Exception) { System.Windows.Forms.MessageBox.Show("Denna RSS-feed gick ej att läsa"); } } }
public void SparaPodcast(string pTitel) { foreach (var pod in PodcastLista.hamtaLista().Where(p => p.PodcastTitel.Equals(pTitel))) { tbUrl.Text = pod.Url; cbUpdFreq.SelectedIndex = cbUpdFreq.Items.IndexOf(pod.UppdateringsFrekvens + " minuter"); cbKategori.SelectedIndex = cbKategori.Items.IndexOf(pod.Kategori); } }
public void UppdateraPodcast(string pTitel) { string url = tbUrl.Text; int freq = Convert.ToInt32(cbUpdFreq.Text.Split(' ')[0]); string kat = cbKategori.Text; PodcastLista.TabortPodcast(pTitel); AvsnittsLista.TabortAvsnitt(pTitel); Gateway.LaggTillNyPodcast(url, freq, kat); UpdatePodcastListview(); lvAvsnitt.Items.Clear(); }
public static void SparaListaPodcast() { if (File.Exists("podcasts.txt")) { File.Delete("podcasts.txt"); } using (Stream stream = File.OpenWrite(Environment.CurrentDirectory + "\\podcasts.txt")) { XmlSerializer xmlSer = new XmlSerializer(typeof(List <Podcast>)); xmlSer.Serialize(stream, PodcastLista.hamtaLista()); stream.Close(); } }
private void btnTabortPodcast_Click(object sender, EventArgs e) { var titel = ""; try { titel = lvPodcasts.SelectedItems[0].Text; PodcastLista.TabortPodcast(titel); AvsnittsLista.TabortAvsnitt(titel); UpdatePodcastListview(); } catch (Exception) { System.Windows.Forms.MessageBox.Show("För att ta bort en podcast måste podcasten som ska tas bort vara markerad"); } }
public void UpdatePodcastListviewKategori(string kategori) { List <Podcast> lista = PodcastLista.hamtaLista(); lvPodcasts.Items.Clear(); foreach (var pod in lista.Where(p => p.Kategori == kategori)) { var list = new ListViewItem(new[] { pod.PodcastTitel, pod.Kategori, pod.AntalAvsnitt.ToString(), pod.UppdateringsFrekvens.ToString() + " minuter" }); lvPodcasts.Items.Add(list); } }
public static void SkapaListaPodcast() { if (File.Exists("podcasts.txt")) { XDocument xdoc = XDocument.Load("podcasts.txt"); xdoc.Descendants("Podcast").Select(p => new { url = p.Element("Url").Value, podcastTitel = p.Element("PodcastTitel").Value, uppdateringsFrekvens = Convert.ToInt32(p.Element("UppdateringsFrekvens").Value), kategori = p.Element("Kategori").Value, antalAvsnitt = Convert.ToInt32(p.Element("AntalAvsnitt").Value) }).ToList().ForEach(p => { Podcast podcast = new Podcast(p.podcastTitel, p.uppdateringsFrekvens, p.kategori, p.antalAvsnitt, p.url); PodcastLista.laggTill(podcast); FrekvensTimer.Start(p.podcastTitel, p.url, p.uppdateringsFrekvens, p.kategori); }); } }