diff options
| author | Luke <luke.pulverenti@gmail.com> | 2017-05-31 15:40:34 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-05-31 15:40:34 -0400 |
| commit | 91176d9ccc1dde8155c10411c70e62a9f4b059d5 (patch) | |
| tree | 21365f5a8dd09534a53d9f88d2a7a3116f3f3f98 /Emby.Server.Implementations/TV | |
| parent | c37c9a75073b1b9caa3af2c3bc62abd837bd630e (diff) | |
| parent | 4e10daf646e0788409f2bc52ef70effa2616e3f3 (diff) | |
Merge pull request #2677 from MediaBrowser/beta
Beta
Diffstat (limited to 'Emby.Server.Implementations/TV')
| -rw-r--r-- | Emby.Server.Implementations/TV/SeriesPostScanTask.cs | 7 | ||||
| -rw-r--r-- | Emby.Server.Implementations/TV/TVSeriesManager.cs | 34 |
2 files changed, 22 insertions, 19 deletions
diff --git a/Emby.Server.Implementations/TV/SeriesPostScanTask.cs b/Emby.Server.Implementations/TV/SeriesPostScanTask.cs index 3d93561f17..23b6a3cb57 100644 --- a/Emby.Server.Implementations/TV/SeriesPostScanTask.cs +++ b/Emby.Server.Implementations/TV/SeriesPostScanTask.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; @@ -58,7 +59,8 @@ namespace Emby.Server.Implementations.TV { IncludeItemTypes = new[] { typeof(Series).Name }, Recursive = true, - GroupByPresentationUniqueKey = false + GroupByPresentationUniqueKey = false, + DtoOptions = new DtoOptions(true) }).Cast<Series>().ToList(); @@ -188,7 +190,8 @@ namespace Emby.Server.Implementations.TV { IncludeItemTypes = new[] { typeof(Series).Name }, Recursive = true, - GroupByPresentationUniqueKey = false + GroupByPresentationUniqueKey = false, + DtoOptions = new DtoOptions(true) }).Cast<Series>().ToList(); diff --git a/Emby.Server.Implementations/TV/TVSeriesManager.cs b/Emby.Server.Implementations/TV/TVSeriesManager.cs index b5e64bc231..876c5d58b0 100644 --- a/Emby.Server.Implementations/TV/TVSeriesManager.cs +++ b/Emby.Server.Implementations/TV/TVSeriesManager.cs @@ -8,6 +8,7 @@ using System; using System.Collections.Generic; using System.Linq; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; namespace Emby.Server.Implementations.TV { @@ -26,7 +27,7 @@ namespace Emby.Server.Implementations.TV _config = config; } - public QueryResult<BaseItem> GetNextUp(NextUpQuery request) + public QueryResult<BaseItem> GetNextUp(NextUpQuery request, DtoOptions dtoOptions) { var user = _userManager.GetUserById(request.UserId); @@ -68,19 +69,19 @@ namespace Emby.Server.Implementations.TV { Fields = new List<ItemFields> { - + ItemFields.PresentationUniqueKey } } }).Cast<Series>().Select(GetUniqueSeriesKey); // Avoid implicitly captured closure - var episodes = GetNextUpEpisodes(request, user, items); + var episodes = GetNextUpEpisodes(request, user, items, dtoOptions); return GetResult(episodes, request); } - public QueryResult<BaseItem> GetNextUp(NextUpQuery request, List<Folder> parentsFolders) + public QueryResult<BaseItem> GetNextUp(NextUpQuery request, List<Folder> parentsFolders, DtoOptions dtoOptions) { var user = _userManager.GetUserById(request.UserId); @@ -118,7 +119,7 @@ namespace Emby.Server.Implementations.TV { Fields = new List<ItemFields> { - + ItemFields.PresentationUniqueKey }, EnableImages = false } @@ -126,18 +127,18 @@ namespace Emby.Server.Implementations.TV }, parentsFolders.Cast<BaseItem>().ToList()).Cast<Series>().Select(GetUniqueSeriesKey); // Avoid implicitly captured closure - var episodes = GetNextUpEpisodes(request, user, items); + var episodes = GetNextUpEpisodes(request, user, items, dtoOptions); return GetResult(episodes, request); } - public IEnumerable<Episode> GetNextUpEpisodes(NextUpQuery request, User user, IEnumerable<string> seriesKeys) + public IEnumerable<Episode> GetNextUpEpisodes(NextUpQuery request, User user, IEnumerable<string> seriesKeys, DtoOptions dtoOptions) { // Avoid implicitly captured closure var currentUser = user; var allNextUp = seriesKeys - .Select(i => GetNextUp(i, currentUser)); + .Select(i => GetNextUp(i, currentUser, dtoOptions)); //allNextUp = allNextUp.OrderByDescending(i => i.Item1); @@ -175,14 +176,12 @@ namespace Emby.Server.Implementations.TV /// Gets the next up. /// </summary> /// <returns>Task{Episode}.</returns> - private Tuple<DateTime, Func<Episode>> GetNextUp(string seriesKey, User user) + private Tuple<DateTime, Func<Episode>> GetNextUp(string seriesKey, User user, DtoOptions dtoOptions) { - var enableSeriesPresentationKey = _config.Configuration.EnableSeriesPresentationUniqueKey; - var lastWatchedEpisode = _libraryManager.GetItemList(new InternalItemsQuery(user) { - AncestorWithPresentationUniqueKey = enableSeriesPresentationKey ? null : seriesKey, - SeriesPresentationUniqueKey = enableSeriesPresentationKey ? seriesKey : null, + AncestorWithPresentationUniqueKey = null, + SeriesPresentationUniqueKey = seriesKey, IncludeItemTypes = new[] { typeof(Episode).Name }, SortBy = new[] { ItemSortBy.SortName }, SortOrder = SortOrder.Descending, @@ -193,7 +192,7 @@ namespace Emby.Server.Implementations.TV { Fields = new List<ItemFields> { - + ItemFields.SortName }, EnableImages = false } @@ -204,8 +203,8 @@ namespace Emby.Server.Implementations.TV { return _libraryManager.GetItemList(new InternalItemsQuery(user) { - AncestorWithPresentationUniqueKey = enableSeriesPresentationKey ? null : seriesKey, - SeriesPresentationUniqueKey = enableSeriesPresentationKey ? seriesKey : null, + AncestorWithPresentationUniqueKey = null, + SeriesPresentationUniqueKey = seriesKey, IncludeItemTypes = new[] { typeof(Episode).Name }, SortBy = new[] { ItemSortBy.SortName }, SortOrder = SortOrder.Ascending, @@ -213,7 +212,8 @@ namespace Emby.Server.Implementations.TV IsPlayed = false, IsVirtualItem = false, ParentIndexNumberNotEquals = 0, - MinSortName = lastWatchedEpisode == null ? null : lastWatchedEpisode.SortName + MinSortName = lastWatchedEpisode == null ? null : lastWatchedEpisode.SortName, + DtoOptions = dtoOptions }).Cast<Episode>().FirstOrDefault(); }; |
