mirror of
https://github.com/Readarr/Readarr.git
synced 2026-04-23 22:25:09 -04:00
Basic UI + Wizard for custom naming added
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using FluentValidation;
|
||||
using Nancy.Responses;
|
||||
using NzbDrone.Core.MediaFiles;
|
||||
@@ -28,6 +29,8 @@ namespace NzbDrone.Api.Config
|
||||
Get["/samples"] = x => GetExamples(this.Bind<NamingConfigResource>());
|
||||
|
||||
SharedValidator.RuleFor(c => c.MultiEpisodeStyle).InclusiveBetween(0, 3);
|
||||
SharedValidator.RuleFor(c => c.StandardEpisodeFormat).NotEmpty();
|
||||
SharedValidator.RuleFor(c => c.DailyEpisodeFormat).NotEmpty();
|
||||
}
|
||||
|
||||
private void UpdateNamingConfig(NamingConfigResource resource)
|
||||
@@ -59,7 +62,8 @@ namespace NzbDrone.Api.Config
|
||||
{
|
||||
SeasonNumber = 1,
|
||||
EpisodeNumber = 1,
|
||||
Title = "Episode Title (1)"
|
||||
Title = "Episode Title (1)",
|
||||
AirDate = "2013-10-30"
|
||||
};
|
||||
|
||||
var episode2 = new Episode
|
||||
@@ -77,19 +81,43 @@ namespace NzbDrone.Api.Config
|
||||
|
||||
var sampleResource = new NamingSampleResource();
|
||||
|
||||
sampleResource.SingleEpisodeExample = _buildFileNames.BuildFilename(new List<Episode> { episode1 },
|
||||
series,
|
||||
episodeFile,
|
||||
nameSpec);
|
||||
sampleResource.SingleEpisodeExample = BuildSample(new List<Episode> { episode1 },
|
||||
series,
|
||||
episodeFile,
|
||||
nameSpec);
|
||||
|
||||
episodeFile.Path = @"C:\Test\Series.Title.S01E01-E02.720p.HDTV.x264-EVOLVE.mkv";
|
||||
|
||||
sampleResource.MultiEpisodeExample = _buildFileNames.BuildFilename(new List<Episode> { episode1, episode2 },
|
||||
series,
|
||||
episodeFile,
|
||||
nameSpec);
|
||||
sampleResource.MultiEpisodeExample = BuildSample(new List<Episode> { episode1, episode2 },
|
||||
series,
|
||||
episodeFile,
|
||||
nameSpec);
|
||||
|
||||
episodeFile.Path = @"C:\Test\Series.Title.2013.10.30.HDTV.x264-EVOLVE.mkv";
|
||||
series.SeriesType = SeriesTypes.Daily;
|
||||
|
||||
sampleResource.DailyEpisodeExample = BuildSample(new List<Episode> { episode1 },
|
||||
series,
|
||||
episodeFile,
|
||||
nameSpec);
|
||||
|
||||
return sampleResource.AsResponse();
|
||||
}
|
||||
|
||||
private string BuildSample(List<Episode> episodes, Core.Tv.Series series, EpisodeFile episodeFile, NamingConfig nameSpec)
|
||||
{
|
||||
try
|
||||
{
|
||||
return _buildFileNames.BuildFilename(episodes,
|
||||
series,
|
||||
episodeFile,
|
||||
nameSpec);
|
||||
}
|
||||
catch (NamingFormatException ex)
|
||||
{
|
||||
//Catching to avoid blowing up all samples
|
||||
return String.Empty;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user