From b2317ada1f7d76b19abc799ad27d78666c9af3a2 Mon Sep 17 00:00:00 2001 From: Leonardo Galli Date: Mon, 23 Jan 2017 18:52:27 +0100 Subject: [PATCH] Add {Tags} to renaming options --- src/NzbDrone.Core/Organizer/FileNameBuilder.cs | 9 +++++++++ src/NzbDrone.Core/Organizer/FileNameSampleService.cs | 3 ++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/NzbDrone.Core/Organizer/FileNameBuilder.cs b/src/NzbDrone.Core/Organizer/FileNameBuilder.cs index df327bee5..517a22b83 100644 --- a/src/NzbDrone.Core/Organizer/FileNameBuilder.cs +++ b/src/NzbDrone.Core/Organizer/FileNameBuilder.cs @@ -41,6 +41,9 @@ namespace NzbDrone.Core.Organizer private static readonly Regex EpisodeRegex = new Regex(@"(?\{episode(?:\:0+)?})", RegexOptions.Compiled | RegexOptions.IgnoreCase); + private static readonly Regex TagsRegex = new Regex(@"(?\{tags(?:\:0+)?})", + RegexOptions.Compiled | RegexOptions.IgnoreCase); + private static readonly Regex SeasonRegex = new Regex(@"(?\{season(?:\:0+)?})", RegexOptions.Compiled | RegexOptions.IgnoreCase); @@ -165,6 +168,7 @@ namespace NzbDrone.Core.Organizer AddQualityTokens(tokenHandlers, movie, movieFile); AddMediaInfoTokens(tokenHandlers, movieFile); AddMovieFileTokens(tokenHandlers, movieFile); + AddTagsTokens(tokenHandlers, movieFile); var fileName = ReplaceTokens(pattern, tokenHandlers, namingConfig).Trim(); fileName = FileNameCleanupRegex.Replace(fileName, match => match.Captures[0].Value[0].ToString()); @@ -491,6 +495,11 @@ namespace NzbDrone.Core.Organizer tokenHandlers["{Movie Title The}"] = m => TitleThe(movie.Title); } + private void AddTagsTokens(Dictionary> tokenHandlers, MovieFile movieFile) + { + tokenHandlers["{Tags}"] = m => CultureInfo.CurrentCulture.TextInfo.ToTitleCase(movieFile.Edition.ToLower()); + } + private void AddReleaseDateTokens(Dictionary> tokenHandlers, int releaseYear) { tokenHandlers["{Release Year}"] = m => string.Format("{0}", releaseYear.ToString()); //Do I need m.CustomFormat? diff --git a/src/NzbDrone.Core/Organizer/FileNameSampleService.cs b/src/NzbDrone.Core/Organizer/FileNameSampleService.cs index 83360063c..b06c4964f 100644 --- a/src/NzbDrone.Core/Organizer/FileNameSampleService.cs +++ b/src/NzbDrone.Core/Organizer/FileNameSampleService.cs @@ -125,7 +125,8 @@ namespace NzbDrone.Core.Organizer RelativePath = "Movie.Title.2010.1080p.BluRay.DTS.x264-EVOLVE.mkv", SceneName = "Movie.Title.2010.1080p.BluRay.DTS.x264-EVOLVE", ReleaseGroup = "RlsGrp", - MediaInfo = mediaInfo + MediaInfo = mediaInfo, + Edition = "Ultimate extended edition", }; _singleEpisodeFile = new EpisodeFile