New: Sonarr can now update series to use another tvdbid in case when tvdb removes a duplicate and Skyhook detects it.

This commit is contained in:
Taloth Saldono
2015-08-12 20:45:44 +02:00
parent 2627072aab
commit 9bcb6ff19a
9 changed files with 124 additions and 20 deletions
+19 -1
View File
@@ -6,6 +6,7 @@ using NLog;
using NzbDrone.Common.Extensions;
using NzbDrone.Common.Instrumentation.Extensions;
using NzbDrone.Core.DataAugmentation.DailySeries;
using NzbDrone.Core.Exceptions;
using NzbDrone.Core.MediaFiles;
using NzbDrone.Core.Messaging.Commands;
using NzbDrone.Core.Messaging.Events;
@@ -48,10 +49,27 @@ namespace NzbDrone.Core.Tv
private void RefreshSeriesInfo(Series series)
{
_logger.ProgressInfo("Updating Info for {0}", series.Title);
var tuple = _seriesInfo.GetSeriesInfo(series.TvdbId);
Tuple<Series, List<Episode>> tuple;
try
{
tuple = _seriesInfo.GetSeriesInfo(series.TvdbId);
}
catch (SeriesNotFoundException)
{
_logger.Error("Series '{0}' (tvdbid {1}) was not found, it may have been removed from TheTVDB.", series.Title, series.TvdbId);
return;
}
var seriesInfo = tuple.Item1;
if (series.TvdbId != seriesInfo.TvdbId)
{
_logger.Warn("Series '{0}' (tvdbid {1}) was replaced with '{2}' (tvdbid {3}), because the original was a duplicate.", series.Title, series.TvdbId, seriesInfo.Title, seriesInfo.TvdbId);
series.TvdbId = seriesInfo.TvdbId;
}
series.Title = seriesInfo.Title;
series.TitleSlug = seriesInfo.TitleSlug;
series.TvRageId = seriesInfo.TvRageId;