1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2026-04-28 23:16:32 -04:00

Fixed: Parsing of releases with episode titles that contain languages

Closes #861
This commit is contained in:
Mark McDowall
2022-12-08 18:59:36 -08:00
committed by GitHub
parent 16e2d130e6
commit 6216a71f8c
35 changed files with 436 additions and 197 deletions
@@ -7,6 +7,7 @@ using NzbDrone.Common.Extensions;
using NzbDrone.Core.Configuration;
using NzbDrone.Core.CustomFormats;
using NzbDrone.Core.DecisionEngine;
using NzbDrone.Core.Download.Aggregation;
using NzbDrone.Core.Indexers;
using NzbDrone.Core.Jobs;
using NzbDrone.Core.Languages;
@@ -44,7 +45,8 @@ namespace NzbDrone.Core.Download.Pending
private readonly IDelayProfileService _delayProfileService;
private readonly ITaskManager _taskManager;
private readonly IConfigService _configService;
private readonly ICustomFormatCalculationService _customFormatCalculationService;
private readonly ICustomFormatCalculationService _formatCalculator;
private readonly IRemoteEpisodeAggregationService _aggregationService;
private readonly IEventAggregator _eventAggregator;
private readonly Logger _logger;
@@ -55,7 +57,8 @@ namespace NzbDrone.Core.Download.Pending
IDelayProfileService delayProfileService,
ITaskManager taskManager,
IConfigService configService,
ICustomFormatCalculationService customFormatCalculationService,
ICustomFormatCalculationService formatCalculator,
IRemoteEpisodeAggregationService aggregationService,
IEventAggregator eventAggregator,
Logger logger)
{
@@ -66,7 +69,8 @@ namespace NzbDrone.Core.Download.Pending
_delayProfileService = delayProfileService;
_taskManager = taskManager;
_configService = configService;
_customFormatCalculationService = customFormatCalculationService;
_formatCalculator = formatCalculator;
_aggregationService = aggregationService;
_eventAggregator = eventAggregator;
_logger = logger;
}
@@ -158,6 +162,7 @@ namespace NzbDrone.Core.Download.Pending
var nextRssSync = new Lazy<DateTime>(() => _taskManager.GetNextExecution(typeof(RssSyncCommand)));
var pendingReleases = IncludeRemoteEpisodes(_repository.WithoutFallback());
foreach (var pendingRelease in pendingReleases)
{
foreach (var episode in pendingRelease.RemoteEpisode.Episodes)
@@ -185,7 +190,7 @@ namespace NzbDrone.Core.Download.Pending
Id = GetQueueId(pendingRelease, episode),
Series = pendingRelease.RemoteEpisode.Series,
Episode = episode,
Languages = pendingRelease.RemoteEpisode.ParsedEpisodeInfo.Languages,
Languages = pendingRelease.RemoteEpisode.Languages,
Quality = pendingRelease.RemoteEpisode.ParsedEpisodeInfo.Quality,
Title = pendingRelease.Title,
Size = pendingRelease.RemoteEpisode.Release.Size,
@@ -330,7 +335,8 @@ namespace NzbDrone.Core.Download.Pending
release.RemoteEpisode.Episodes = new List<Episode>();
}
release.RemoteEpisode.CustomFormats = _customFormatCalculationService.ParseCustomFormat(release.RemoteEpisode.ParsedEpisodeInfo, release.RemoteEpisode.Series);
_aggregationService.Augment(release.RemoteEpisode);
release.RemoteEpisode.CustomFormats = _formatCalculator.ParseCustomFormat(release.RemoteEpisode);
result.Add(release);
}