private async void Commands_AddRssFeed(object sender, ExecutedRoutedEventArgs e) { var query = new UI.AddRSSFeed() { Icon = this.Icon, Owner = this }; if (query.ShowDialog() == true) { if (string.IsNullOrWhiteSpace(query.Url)) { MessageBox.Show(this, "Url cannot be empty.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); return; } if (!query.Url.StartsWith("http://") || !query.Url.StartsWith("https://")) { query.Url = "http://" + query.Url; } var rss_entry = new RssUrlEntry() { Url = query.Url, Alias = query.CustomAlias, AutoDownload = query.AutoDownload == true, Filters = query.Filters, DownloadDirectory = string.IsNullOrWhiteSpace(query.DownloadPath) ? App.Settings.DefaultDownloadPath : query.DownloadPath, IsCustomtUpdateInterval = query.UpdateIntervalType == 1, CustomUpdateInterval = new TimeSpan(0, 0, query.CustomIntervalSeconds), DefaultSettings = App.Settings.DefaultTorrentProperties }; if (await rss_entry.TestAsync()) { FeedsManager.Add(rss_entry); } else { MessageBox.Show( this, "This RSS entry seem to be invalid. \n\n If your internet connection is down, try adding it when it's up again.", "Error", MessageBoxButton.OK, MessageBoxImage.Error); } } }