/// <summary> /// Displays the duplicates between links in the episode, if any found. /// </summary> /// <param name="episode">The episode.</param> private void DisplayDuplicates(Episode episode) { bool duplicatesFound = false; List <Item> episodeItems = EpisodeHelper.GetEpisodeContentItems(episode); foreach (ContentItem contentItem in episodeItems) { if (!string.IsNullOrEmpty(contentItem.Url)) { string url = GetCleanUrl(contentItem.Url.TrimEnd('/')); foreach (ContentItem ci in episodeItems) { if ((contentItem != ci) && !string.IsNullOrEmpty(contentItem.Url) && !string.IsNullOrEmpty(ci.Url)) { string url2 = GetCleanUrl(ci.Url.TrimEnd('/')); if (url.Equals(url2, StringComparison.OrdinalIgnoreCase)) { ConsoleHelper.Warning("Current episode titles: \"{0}\" and \"{1}\"", contentItem.Title, ci.Title); duplicatesFound = true; } } } } } if (!duplicatesFound) { ConsoleHelper.Success("Yay! No duplicates found."); } }
/// <summary> /// Displays possible stop words in the episode. /// </summary> /// <param name="episode">The last episode.</param> /// <param name="stopWords">The stop words.</param> private void DisplayStopWords(Episode episode, string[] stopWords) { List <Item> episodeItems = EpisodeHelper.GetEpisodeContentItems(episode); string regexExpression = string.Empty; for (int i = 0; i < stopWords.Length; i++) { regexExpression += stopWords[i]; if (i != stopWords.Length - 1) { regexExpression += "|"; } } regexExpression = $@"\b({regexExpression})\b"; foreach (ContentItem contentItem in episodeItems) { if (contentItem.Title != null) { FindStopWords("Title", contentItem.Title, regexExpression); } if (contentItem.Text != null) { FindStopWords("Text", contentItem.Text, regexExpression); } } }
/// <summary> /// Displays the duplicates. /// </summary> /// <param name="episode">The episode.</param> /// <param name="episodesList">The episodes list.</param> /// <returns></returns> private void DisplayDuplicates(Episode episode, List <Episode> episodesList) { bool duplicatesFound = false; foreach (Episode pastEpisode in episodesList) { List <Item> pastEpisodeItems = EpisodeHelper.GetEpisodeContentItems(pastEpisode); List <Item> episodeItems = EpisodeHelper.GetEpisodeContentItems(episode); foreach (ContentItem pastEpisodeItem in pastEpisodeItems) { string pastEpisodeUrl = GetCleanUrl(pastEpisodeItem.Url.TrimEnd('/')); foreach (ContentItem episodeItem in episodeItems) { if (!string.IsNullOrEmpty(episodeItem.Url)) { string episodeUrl = GetCleanUrl(episodeItem.Url.TrimEnd('/')); if (pastEpisodeUrl.Equals(episodeUrl, StringComparison.OrdinalIgnoreCase)) { ConsoleHelper.Warning("Ep. {0}, Url {1}. Current episode title: {2}".PadRight(10), pastEpisode.Number, pastEpisodeItem.Url, episodeItem.Title); duplicatesFound = true; } } } } } if (!duplicatesFound) { ConsoleHelper.Success("Yay! No duplicates found."); } }