diff --git a/src/NzbDrone.Core/Tv/MovieRepository.cs b/src/NzbDrone.Core/Tv/MovieRepository.cs index d9a8cc32e..b51a417d8 100644 --- a/src/NzbDrone.Core/Tv/MovieRepository.cs +++ b/src/NzbDrone.Core/Tv/MovieRepository.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; using NzbDrone.Core.Datastore; using NzbDrone.Core.Messaging.Events; using NzbDrone.Core.Datastore.Extensions; +using Marr.Data.QGen; namespace NzbDrone.Core.Tv { @@ -137,17 +138,20 @@ namespace NzbDrone.Core.Tv public PagingSpec MoviesWithoutFiles(PagingSpec pagingSpec) { - var query = Query.Where(pagingSpec.FilterExpression) + pagingSpec.TotalRecords = GetMoviesWithoutFilesQuery(pagingSpec).GetRowCount(); + pagingSpec.Records = GetMoviesWithoutFilesQuery(pagingSpec).ToList(); + + return pagingSpec; + } + + public SortBuilder GetMoviesWithoutFilesQuery(PagingSpec pagingSpec) + { + return Query.Where(pagingSpec.FilterExpression) .AndWhere(m => m.MovieFileId == 0) .AndWhere(m => m.Status == MovieStatusType.Released) .OrderBy(pagingSpec.OrderByClause(), pagingSpec.ToSortDirection()) .Skip(pagingSpec.PagingOffset()) .Take(pagingSpec.PageSize); - - pagingSpec.Records = query.ToList(); - pagingSpec.TotalRecords = pagingSpec.Records.Count; - - return pagingSpec; } } } \ No newline at end of file