You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1001 B
33 lines
1001 B
using System.Linq;
|
|
using NzbDrone.Core.Download;
|
|
using NzbDrone.Core.Parser;
|
|
using NzbDrone.Core.Parser.Model;
|
|
|
|
namespace NzbDrone.Core.MediaFiles.EpisodeImport.Aggregation.Aggregators.Augmenters.Language
|
|
{
|
|
public class AugmentLanguageFromFileName : IAugmentLanguage
|
|
{
|
|
public int Order => 1;
|
|
public string Name => "FileName";
|
|
|
|
public AugmentLanguageResult AugmentLanguage(LocalEpisode localEpisode, DownloadClientItem downloadClientItem)
|
|
{
|
|
var languages = localEpisode.FileEpisodeInfo?.Languages;
|
|
|
|
if (languages == null)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
foreach (var episode in localEpisode.Episodes)
|
|
{
|
|
var episodeTitleLanguage = LanguageParser.ParseLanguages(episode.Title, false);
|
|
|
|
languages = languages.Except(episodeTitleLanguage).ToList();
|
|
}
|
|
|
|
return new AugmentLanguageResult(languages, Confidence.Filename);
|
|
}
|
|
}
|
|
}
|