From b8651038715314072f1354462f5a69380d91bf73 Mon Sep 17 00:00:00 2001 From: Leonardo Galli Date: Tue, 7 Aug 2018 17:36:50 +0200 Subject: [PATCH] Fixed: Languages not showing up correctly. --- .../Specifications/LanguageSpecification.cs | 7 ++++--- src/NzbDrone.Core/Parser/Language.cs | 13 ++++++++++++- src/NzbDrone.Core/Parser/Parser.cs | 2 +- src/NzbDrone.Core/Parser/ParsingService.cs | 2 +- 4 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/NzbDrone.Core/DecisionEngine/Specifications/LanguageSpecification.cs b/src/NzbDrone.Core/DecisionEngine/Specifications/LanguageSpecification.cs index 609835838..e87cc4331 100644 --- a/src/NzbDrone.Core/DecisionEngine/Specifications/LanguageSpecification.cs +++ b/src/NzbDrone.Core/DecisionEngine/Specifications/LanguageSpecification.cs @@ -1,5 +1,6 @@ using NLog; using NzbDrone.Core.IndexerSearch.Definitions; +using NzbDrone.Core.Parser; using NzbDrone.Core.Parser.Model; namespace NzbDrone.Core.DecisionEngine.Specifications @@ -19,12 +20,12 @@ namespace NzbDrone.Core.DecisionEngine.Specifications { var wantedLanguage = subject.Movie.Profile.Value.Language; - _logger.Debug("Checking if report meets language requirements. {0}", subject.ParsedMovieInfo.Languages); + _logger.Debug("Checking if report meets language requirements. {0}", subject.ParsedMovieInfo.Languages.ToExtendedString()); if (!subject.ParsedMovieInfo.Languages.Contains(wantedLanguage)) { - _logger.Debug("Report Language: {0} rejected because it is not wanted, wanted {1}", subject.ParsedMovieInfo.Languages, wantedLanguage); - return Decision.Reject("{0} is wanted, but found {1}", wantedLanguage, subject.ParsedMovieInfo.Languages); + _logger.Debug("Report Language: {0} rejected because it is not wanted, wanted {1}", subject.ParsedMovieInfo.Languages.ToExtendedString(), wantedLanguage); + return Decision.Reject("{0} is wanted, but found {1}", wantedLanguage, subject.ParsedMovieInfo.Languages.ToExtendedString()); } return Decision.Accept(); diff --git a/src/NzbDrone.Core/Parser/Language.cs b/src/NzbDrone.Core/Parser/Language.cs index e720890e7..e4cd1e76f 100644 --- a/src/NzbDrone.Core/Parser/Language.cs +++ b/src/NzbDrone.Core/Parser/Language.cs @@ -1,4 +1,7 @@ -namespace NzbDrone.Core.Parser +using System.Collections.Generic; +using System.Linq; + +namespace NzbDrone.Core.Parser { public enum Language { @@ -27,4 +30,12 @@ Hungarian = 22, Hebrew = 23 } + + public static class LanguageExtensions + { + public static string ToExtendedString(this IEnumerable languages) + { + return string.Join(", ", languages.Select(l => l.ToString())); + } + } } diff --git a/src/NzbDrone.Core/Parser/Parser.cs b/src/NzbDrone.Core/Parser/Parser.cs index 777ffe704..e88272b20 100644 --- a/src/NzbDrone.Core/Parser/Parser.cs +++ b/src/NzbDrone.Core/Parser/Parser.cs @@ -265,7 +265,7 @@ namespace NzbDrone.Core.Parser var languageTitle = Regex.Replace(title.Replace(".", " "), foundTitle, "A Movie", RegexOptions.IgnoreCase); result.Languages = LanguageParser.ParseLanguages(title); - Logger.Debug("Language parsed: {0}", result.Languages); + Logger.Debug("Language parsed: {0}", result.Languages.ToExtendedString()); result.Quality = QualityParser.ParseQuality(title); Logger.Debug("Quality parsed: {0}", result.Quality); diff --git a/src/NzbDrone.Core/Parser/ParsingService.cs b/src/NzbDrone.Core/Parser/ParsingService.cs index 8665fe543..2c32ef7e6 100644 --- a/src/NzbDrone.Core/Parser/ParsingService.cs +++ b/src/NzbDrone.Core/Parser/ParsingService.cs @@ -79,7 +79,7 @@ namespace NzbDrone.Core.Parser private ParsedMovieInfo EnhanceMinimalInfo(ParsedMovieInfo minimalInfo, List helpers) { minimalInfo.Languages = LanguageParser.ParseLanguages(minimalInfo.SimpleReleaseTitle); - _logger.Debug("Language(s) parsed: {0}", string.Join(", ", minimalInfo.Languages)); + _logger.Debug("Language(s) parsed: {0}", string.Join(", ", minimalInfo.Languages.ToExtendedString())); minimalInfo.Quality = QualityParser.ParseQuality(minimalInfo.SimpleReleaseTitle);