From 816c62979a9550a1c9a171e324decc7609b81a59 Mon Sep 17 00:00:00 2001 From: Devin Buhl Date: Fri, 24 Feb 2017 21:30:12 -0500 Subject: [PATCH] Ignore Deleted Movies (#755) (#879) --- src/NzbDrone.Core/Tv/MovieService.cs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/NzbDrone.Core/Tv/MovieService.cs b/src/NzbDrone.Core/Tv/MovieService.cs index d15d3bf80..41acb3d07 100644 --- a/src/NzbDrone.Core/Tv/MovieService.cs +++ b/src/NzbDrone.Core/Tv/MovieService.cs @@ -13,6 +13,7 @@ using NzbDrone.Core.Tv.Events; using NzbDrone.Core.MediaFiles; using NzbDrone.Core.MediaFiles.Events; using NzbDrone.Core.Datastore; +using NzbDrone.Core.Configuration; namespace NzbDrone.Core.Tv { @@ -46,6 +47,7 @@ namespace NzbDrone.Core.Tv IHandle { private readonly IMovieRepository _movieRepository; + private readonly IConfigService _configService; private readonly IEventAggregator _eventAggregator; private readonly IBuildFileNames _fileNameBuilder; private readonly Logger _logger; @@ -55,11 +57,13 @@ namespace NzbDrone.Core.Tv ISceneMappingService sceneMappingService, IEpisodeService episodeService, IBuildFileNames fileNameBuilder, + IConfigService configService, Logger logger) { _movieRepository = movieRepository; _eventAggregator = eventAggregator; _fileNameBuilder = fileNameBuilder; + _configService = configService; _logger = logger; } @@ -297,8 +301,15 @@ namespace NzbDrone.Core.Tv public void Handle(MovieFileDeletedEvent message) { + var movie = _movieRepository.GetMoviesByFileId(message.MovieFile.Id).First(); movie.MovieFileId = 0; + _logger.Debug("Detaching movie {0} from file.", movie.Id); + + if (message.Reason != DeleteMediaFileReason.Upgrade && _configService.AutoUnmonitorPreviouslyDownloadedEpisodes) + { + movie.Monitored = false; + } UpdateMovie(movie); }