From 94cc56d0f68c66b2dd31231349e3b5227c1b305d Mon Sep 17 00:00:00 2001 From: Bogdan Date: Thu, 20 Apr 2023 10:39:15 +0300 Subject: [PATCH] Fixed: (AnimeBytes) Improve season/episode detection --- .../Indexers/Definitions/AnimeBytes.cs | 30 ++++++++++++++----- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/src/NzbDrone.Core/Indexers/Definitions/AnimeBytes.cs b/src/NzbDrone.Core/Indexers/Definitions/AnimeBytes.cs index 19c3c92bc..6229012ed 100644 --- a/src/NzbDrone.Core/Indexers/Definitions/AnimeBytes.cs +++ b/src/NzbDrone.Core/Indexers/Definitions/AnimeBytes.cs @@ -333,7 +333,10 @@ namespace NzbDrone.Core.Indexers.Definitions { var resolutionProperty = properties.FirstOrDefault(RemuxResolutions.ContainsIgnoreCase); - properties.Add(resolutionProperty.IsNotNullOrWhiteSpace() ? $"{resolutionProperty} Remux" : "Remux"); + if (resolutionProperty.IsNotNullOrWhiteSpace()) + { + properties.Add($"{resolutionProperty} Remux"); + } } if (properties.Any(p => p.StartsWithIgnoreCase("M2TS"))) @@ -379,13 +382,24 @@ namespace NzbDrone.Core.Indexers.Definitions season = ParseSeasonFromTitles(synonyms); } - if (episode is > 0) - { - releaseInfo = $" - {episode:00}"; - } - else if (_settings.EnableSonarrCompatibility && season is > 0) + if (season is > 0 || episode is > 0) { - releaseInfo = $"S{season:00}"; + releaseInfo = string.Empty; + + if (_settings.EnableSonarrCompatibility && season is > 0) + { + releaseInfo = $"S{season:00}"; + + if (episode is > 0) + { + releaseInfo += $"E{episode:00}"; + } + } + + if (episode is > 0) + { + releaseInfo += $" - {episode:00}"; + } } releaseInfo = releaseInfo.Trim(); @@ -554,7 +568,7 @@ namespace NzbDrone.Core.Indexers.Definitions { var advancedSeasonRegex = new Regex(@"(\d+)(st|nd|rd|th) Season", RegexOptions.Compiled | RegexOptions.IgnoreCase); var seasonCharactersRegex = new Regex(@"(I{2,})$", RegexOptions.Compiled); - var seasonNumberRegex = new Regex(@"([2-9])$", RegexOptions.Compiled); + var seasonNumberRegex = new Regex(@"\b([2-9])$", RegexOptions.Compiled); foreach (var title in titles) {