From 6850d77dd2a052f2cba202b6b48ef041c64d9b4d Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Thu, 12 Sep 2013 23:47:40 -0700 Subject: [PATCH] Update episodes monitored state only when season changes --- NzbDrone.Core.Test/NzbDrone.Core.Test.csproj | 3 ++- .../AddSeriesFixture.cs} | Bin 1790 -> 1805 bytes .../SeriesServiceTests/UpdateSeriesFixture.cs | Bin 0 -> 3398 bytes NzbDrone.Core/Tv/SeriesService.cs | 12 ++++++++++++ 4 files changed, 14 insertions(+), 1 deletion(-) rename NzbDrone.Core.Test/TvTests/{SeriesServiceFixture.cs => SeriesServiceTests/AddSeriesFixture.cs} (90%) create mode 100644 NzbDrone.Core.Test/TvTests/SeriesServiceTests/UpdateSeriesFixture.cs diff --git a/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj b/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj index 68f5bd6b3..2235812d2 100644 --- a/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj +++ b/NzbDrone.Core.Test/NzbDrone.Core.Test.csproj @@ -189,6 +189,7 @@ + @@ -211,7 +212,7 @@ - + diff --git a/NzbDrone.Core.Test/TvTests/SeriesServiceFixture.cs b/NzbDrone.Core.Test/TvTests/SeriesServiceTests/AddSeriesFixture.cs similarity index 90% rename from NzbDrone.Core.Test/TvTests/SeriesServiceFixture.cs rename to NzbDrone.Core.Test/TvTests/SeriesServiceTests/AddSeriesFixture.cs index aea6ff92871e0d04a729a2807515c5208c010243..ab33ff0724940e12dfd3ee923903605e37a0cf98 100644 GIT binary patch delta 39 pcmeyz+silM5}#ghYEfotF_0|FOirD6R*%y$B?Th3nS=2gD*!tg4?zF` delta 28 icmeC>`^P)s(!{5lyuqnOnW@Db+b6*H&y_&2@AIX diff --git a/NzbDrone.Core.Test/TvTests/SeriesServiceTests/UpdateSeriesFixture.cs b/NzbDrone.Core.Test/TvTests/SeriesServiceTests/UpdateSeriesFixture.cs new file mode 100644 index 0000000000000000000000000000000000000000..903e98102201e6ef5fa8427f22f81e394e3b907a GIT binary patch literal 3398 zcmeHHOK#gR5bfH4@4%%E7zEm7n;1yaBruS;Kp#b#S$Va<{a(xDOvrEb z*@?Kl{S<28)5A<8G3e$d$w1lzV?Y<->Wg#LxKA&ou>3@aYuG4#UE6fd5tcMoheBG@ z*xWAOYb60MG5;lY#89LtlI7he?z2B1v$E0BdY}&S>Q1g6_o8dF$1`Ph@B7)+m z-@EJg7_QIsc_MCXrs0b_O0z{GA{Hf~G3+vpLkliIX~y0%DuW#NT9L=jzl==LQ!R3I zXU>cT%ka94h2Y76R@Vq_gt6FX=Tubb3=!=N>}6WwEPNf-T!|Qy*eo3ko4_6rvh}jF zeO79qtYFNKG$7I`Yz9MK+zo~v#=^f1?5|@qfI29!FQGxTU?d3}c7|mm96BnQBzsz& zLgNS6zJOF2YSwn_`&RiFLmo-jsFE?G zL1zaO%O~bQZufA;pwrNkyytd-Zd#f_r!Bs!Ta^`);E|_gRw_&4Kq?z##Xtxk6-LEi z0uQ=VgKY#|_6Q(+vwou(&evchQq?yLv zW9)v!*|^*ea-ugUu1mN22_0_TJM)wCNjzemHh2dMr4nk)h|L9#XFi1-G=3xGszLus zeM!41CV8+~feb`Nw)qdTD;%`vp=Pd!%?$CNRwiq2s4T<8z`YK5?WtZrpW!4=ppvhn zvP!exN;~8==Qy_NZ1=J}eP#G$j+#npJ$#T6I5{+eAeNu5f*ZtylNJiN+;*>C)(ZnK J3_K48egO=T&}9Gs literal 0 HcmV?d00001 diff --git a/NzbDrone.Core/Tv/SeriesService.cs b/NzbDrone.Core/Tv/SeriesService.cs index 95daaa417..1ada36255 100644 --- a/NzbDrone.Core/Tv/SeriesService.cs +++ b/NzbDrone.Core/Tv/SeriesService.cs @@ -119,6 +119,18 @@ namespace NzbDrone.Core.Tv public Series UpdateSeries(Series series) { + var storedSeries = GetSeries(series.Id); + + foreach (var season in series.Seasons) + { + var storedSeason = storedSeries.Seasons.SingleOrDefault(s => s.SeasonNumber == season.SeasonNumber); + + if (storedSeason != null && season.Monitored != storedSeason.Monitored) + { + _episodeService.SetEpisodeMonitoredBySeason(series.Id, season.SeasonNumber, season.Monitored); + } + } + return _seriesRepository.Update(series); }