protected override void ParseSubscription() { if (txtName.Text.Trim() == "" || txtURL.Text.Trim() == "") { MessageBox.Show(i18n.FillPodcastNameAndUrlFieldsMessage, i18n.AllFieldsRequiredTitle, MessageBoxButtons.OK, MessageBoxIcon.Error); this.OnSubscriptionParsed(new SubscriptionParsedEventArgs(false)); return; } if (Subscriptions.Instance.Dictionary.ContainsKey(txtURL.Text)) { MessageBox.Show(string.Format(i18n.PodcastSubscriptionAlreadyExists, Subscriptions.Instance.Dictionary[txtURL.Text].Name), i18n.SubscriptionExists, MessageBoxButtons.OK, MessageBoxIcon.Error); this.OnSubscriptionParsed(new SubscriptionParsedEventArgs(false)); return; } try { var subscription = new PodcastSubscription {Name = txtName.Text, Url = txtURL.Text}; using (var podcast = new Podcast(subscription)) { if (!podcast.IsValid()) { MessageBox.Show(i18n.ErrorParsingPodcastMessage, i18n.ErrorParsingPodcastTitle, MessageBoxButtons.OK, MessageBoxIcon.Error); this.OnSubscriptionParsed(new SubscriptionParsedEventArgs(false)); return; } } this.OnSubscriptionParsed(new SubscriptionParsedEventArgs(true, subscription)); } catch(Exception) { MessageBox.Show(i18n.ErrorParsingPodcastMessage, i18n.ErrorParsingPodcastTitle, MessageBoxButtons.OK, MessageBoxIcon.Error); this.OnSubscriptionParsed(new SubscriptionParsedEventArgs(false)); } }