From 92bab993ae70b23bd620b9a04c3d56b810260322 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Mon, 15 Jul 2013 14:53:35 -0700 Subject: [PATCH] Missing will not include series and episodes that are not monitored --- .../EpisodeRepositoryTests/EpisodesWithoutFilesFixture.cs | 1 + NzbDrone.Core/Datastore/TableMapping.cs | 1 + NzbDrone.Core/Tv/Episode.cs | 2 ++ NzbDrone.Core/Tv/EpisodeRepository.cs | 5 ++++- 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/NzbDrone.Core.Test/TvTests/EpisodeRepositoryTests/EpisodesWithoutFilesFixture.cs b/NzbDrone.Core.Test/TvTests/EpisodeRepositoryTests/EpisodesWithoutFilesFixture.cs index 12513c980..0a8ed7d24 100644 --- a/NzbDrone.Core.Test/TvTests/EpisodeRepositoryTests/EpisodesWithoutFilesFixture.cs +++ b/NzbDrone.Core.Test/TvTests/EpisodeRepositoryTests/EpisodesWithoutFilesFixture.cs @@ -16,6 +16,7 @@ namespace NzbDrone.Core.Test.TvTests.EpisodeRepositoryTests var series = Builder.CreateNew() .With(s => s.Id = 0) .With(s => s.Runtime = 30) + .With(s => s.Monitored = true) .Build(); series.Id = Db.Insert(series).Id; diff --git a/NzbDrone.Core/Datastore/TableMapping.cs b/NzbDrone.Core/Datastore/TableMapping.cs index 55015eb00..80242f783 100644 --- a/NzbDrone.Core/Datastore/TableMapping.cs +++ b/NzbDrone.Core/Datastore/TableMapping.cs @@ -49,6 +49,7 @@ namespace NzbDrone.Core.Datastore Mapper.Entity().RegisterModel("Episodes") .Ignore(e => e.SeriesTitle) + .Ignore(e => e.Series) .Ignore(e => e.HasFile) .Relationship() .HasOne(episode => episode.EpisodeFile, episode => episode.EpisodeFileId); diff --git a/NzbDrone.Core/Tv/Episode.cs b/NzbDrone.Core/Tv/Episode.cs index bc1cfc51a..fb0e04682 100644 --- a/NzbDrone.Core/Tv/Episode.cs +++ b/NzbDrone.Core/Tv/Episode.cs @@ -25,6 +25,8 @@ namespace NzbDrone.Core.Tv public String SeriesTitle { get; private set; } public LazyLoaded EpisodeFile { get; set; } + + public Series Series { get; set; } public Boolean HasFile { diff --git a/NzbDrone.Core/Tv/EpisodeRepository.cs b/NzbDrone.Core/Tv/EpisodeRepository.cs index 61af1d8fd..fdd921b4c 100644 --- a/NzbDrone.Core/Tv/EpisodeRepository.cs +++ b/NzbDrone.Core/Tv/EpisodeRepository.cs @@ -84,9 +84,12 @@ namespace NzbDrone.Core.Tv startingSeasonNumber = 0; } - var pagingQuery = Query.Where(e => e.EpisodeFileId == 0) + var pagingQuery = Query.Join(JoinType.Inner, e => e.Series, (e, s) => e.SeriesId == s.Id) + .Where(e => e.EpisodeFileId == 0) .AndWhere(e => e.SeasonNumber >= startingSeasonNumber) .AndWhere(e => e.AirDate <= currentTime) + .AndWhere(e => e.Monitored) + .AndWhere(e => e.Series.Monitored) .OrderBy(pagingSpec.OrderByClause(), pagingSpec.ToSortDirection()) .Skip(pagingSpec.PagingOffset()) .Take(pagingSpec.PageSize);