aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/TV
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-12-12 03:53:25 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-12-12 03:53:25 -0500
commitc2d0fd99852aae31379b89591b538d075743362f (patch)
treebfd9cfd47667bdf35668a9751cc82a56ac609282 /Emby.Server.Implementations/TV
parent1aff48b93b72fe7d418b4798f504bd0d145f44e8 (diff)
update season queries
Diffstat (limited to 'Emby.Server.Implementations/TV')
-rw-r--r--Emby.Server.Implementations/TV/TVSeriesManager.cs23
1 files changed, 12 insertions, 11 deletions
diff --git a/Emby.Server.Implementations/TV/TVSeriesManager.cs b/Emby.Server.Implementations/TV/TVSeriesManager.cs
index 88d224525..363fe5593 100644
--- a/Emby.Server.Implementations/TV/TVSeriesManager.cs
+++ b/Emby.Server.Implementations/TV/TVSeriesManager.cs
@@ -58,7 +58,8 @@ namespace Emby.Server.Implementations.TV
var items = _libraryManager.GetItemList(new InternalItemsQuery(user)
{
IncludeItemTypes = new[] { typeof(Series).Name },
- SortOrder = SortOrder.Ascending,
+ SortBy = new[] { ItemSortBy.SeriesDatePlayed },
+ SortOrder = SortOrder.Descending,
PresentationUniqueKey = presentationUniqueKey,
Limit = limit,
ParentId = parentIdGuid,
@@ -71,7 +72,7 @@ namespace Emby.Server.Implementations.TV
}
}
- }).Cast<Series>();
+ }).Cast<Series>().Select(GetUniqueSeriesKey);
// Avoid implicitly captured closure
var episodes = GetNextUpEpisodes(request, user, items);
@@ -109,19 +110,20 @@ namespace Emby.Server.Implementations.TV
var items = _libraryManager.GetItemList(new InternalItemsQuery(user)
{
IncludeItemTypes = new[] { typeof(Series).Name },
- SortOrder = SortOrder.Ascending,
+ SortBy = new[] { ItemSortBy.SeriesDatePlayed },
+ SortOrder = SortOrder.Descending,
PresentationUniqueKey = presentationUniqueKey,
Limit = limit,
DtoOptions = new MediaBrowser.Controller.Dto.DtoOptions
{
Fields = new List<ItemFields>
{
-
+
},
EnableImages = false
}
- }, parentsFolders.Cast<BaseItem>().ToList()).Cast<Series>();
+ }, parentsFolders.Cast<BaseItem>().ToList()).Cast<Series>().Select(GetUniqueSeriesKey);
// Avoid implicitly captured closure
var episodes = GetNextUpEpisodes(request, user, items);
@@ -129,15 +131,15 @@ namespace Emby.Server.Implementations.TV
return GetResult(episodes, null, request);
}
- public IEnumerable<Episode> GetNextUpEpisodes(NextUpQuery request, User user, IEnumerable<Series> series)
+ public IEnumerable<Episode> GetNextUpEpisodes(NextUpQuery request, User user, IEnumerable<string> seriesKeys)
{
// Avoid implicitly captured closure
var currentUser = user;
- var allNextUp = series
- .Select(i => GetNextUp(GetUniqueSeriesKey(i), currentUser))
- // Include if an episode was found, and either the series is not unwatched or the specific series was requested
- .OrderByDescending(i => i.Item1);
+ var allNextUp = seriesKeys
+ .Select(i => GetNextUp(i, currentUser));
+
+ //allNextUp = allNextUp.OrderByDescending(i => i.Item1);
// If viewing all next up for all series, remove first episodes
// But if that returns empty, keep those first episodes (avoid completely empty view)
@@ -160,7 +162,6 @@ namespace Emby.Server.Implementations.TV
return true;
})
- .Take(request.Limit.HasValue ? (request.Limit.Value * 2) : int.MaxValue)
.Select(i => i.Item2())
.Where(i => i != null)
.Take(request.Limit ?? int.MaxValue);