diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-05-21 03:25:49 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-05-21 03:25:49 -0400 |
| commit | da77b058172e1c7cdeb6dadd6106ea3fdd739544 (patch) | |
| tree | 570215d192714f18170558e6664bcab539a7b07c /MediaBrowser.Controller/Entities/TV | |
| parent | ead88d3b65c8bd1023d6915af0aed1c703e21979 (diff) | |
update data queries
Diffstat (limited to 'MediaBrowser.Controller/Entities/TV')
| -rw-r--r-- | MediaBrowser.Controller/Entities/TV/Season.cs | 19 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/TV/Series.cs | 28 |
2 files changed, 26 insertions, 21 deletions
diff --git a/MediaBrowser.Controller/Entities/TV/Season.cs b/MediaBrowser.Controller/Entities/TV/Season.cs index ed04b5ddcb..af1b6d53c3 100644 --- a/MediaBrowser.Controller/Entities/TV/Season.cs +++ b/MediaBrowser.Controller/Entities/TV/Season.cs @@ -5,6 +5,7 @@ using MediaBrowser.Model.Users; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; +using MediaBrowser.Controller.Dto; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Serialization; @@ -160,7 +161,7 @@ namespace MediaBrowser.Controller.Entities.TV Func<BaseItem, bool> filter = i => UserViewBuilder.Filter(i, user, query, UserDataManager, LibraryManager); - var items = GetEpisodes(user).Where(filter); + var items = GetEpisodes(user, query.DtoOptions).Where(filter); var result = PostFilterAndSort(items, query, false, false); @@ -170,21 +171,19 @@ namespace MediaBrowser.Controller.Entities.TV /// <summary> /// Gets the episodes. /// </summary> - /// <param name="user">The user.</param> - /// <returns>IEnumerable{Episode}.</returns> - public IEnumerable<Episode> GetEpisodes(User user) + public IEnumerable<Episode> GetEpisodes(User user, DtoOptions options) { - return GetEpisodes(Series, user); + return GetEpisodes(Series, user, options); } - public IEnumerable<Episode> GetEpisodes(Series series, User user) + public IEnumerable<Episode> GetEpisodes(Series series, User user, DtoOptions options) { - return GetEpisodes(series, user, null); + return GetEpisodes(series, user, null, options); } - public IEnumerable<Episode> GetEpisodes(Series series, User user, IEnumerable<Episode> allSeriesEpisodes) + public IEnumerable<Episode> GetEpisodes(Series series, User user, IEnumerable<Episode> allSeriesEpisodes, DtoOptions options) { - return series.GetSeasonEpisodes(this, user, allSeriesEpisodes); + return series.GetSeasonEpisodes(this, user, allSeriesEpisodes, options); } public IEnumerable<Episode> GetEpisodes() @@ -194,7 +193,7 @@ namespace MediaBrowser.Controller.Entities.TV public override IEnumerable<BaseItem> GetChildren(User user, bool includeLinkedChildren) { - return GetEpisodes(user); + return GetEpisodes(user, new DtoOptions(true)); } protected override bool GetBlockUnratedValue(UserPolicy config) diff --git a/MediaBrowser.Controller/Entities/TV/Series.cs b/MediaBrowser.Controller/Entities/TV/Series.cs index 7641c95234..f75a78c972 100644 --- a/MediaBrowser.Controller/Entities/TV/Series.cs +++ b/MediaBrowser.Controller/Entities/TV/Series.cs @@ -8,6 +8,7 @@ using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Dto; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; @@ -250,12 +251,15 @@ namespace MediaBrowser.Controller.Entities.TV public override IEnumerable<BaseItem> GetChildren(User user, bool includeLinkedChildren) { - return GetSeasons(user); + return GetSeasons(user, new DtoOptions(true)); } - public IEnumerable<Season> GetSeasons(User user) + public IEnumerable<Season> GetSeasons(User user, DtoOptions options) { - var query = new InternalItemsQuery(user); + var query = new InternalItemsQuery(user) + { + DtoOptions = options + }; SetSeasonQueryOptions(query, user); @@ -321,7 +325,7 @@ namespace MediaBrowser.Controller.Entities.TV return Task.FromResult(LibraryManager.GetItemsResult(query)); } - public IEnumerable<Episode> GetEpisodes(User user) + public IEnumerable<Episode> GetEpisodes(User user, DtoOptions options) { var enableSeriesPresentationKey = ConfigurationManager.Configuration.EnableSeriesPresentationUniqueKey; var seriesKey = GetUniqueSeriesKey(this); @@ -331,7 +335,8 @@ namespace MediaBrowser.Controller.Entities.TV AncestorWithPresentationUniqueKey = enableSeriesPresentationKey ? null : seriesKey, SeriesPresentationUniqueKey = enableSeriesPresentationKey ? seriesKey : null, IncludeItemTypes = new[] { typeof(Episode).Name, typeof(Season).Name }, - SortBy = new[] { ItemSortBy.SortName } + SortBy = new[] { ItemSortBy.SortName }, + DtoOptions = options }; var config = user.Configuration; if (!config.DisplayMissingEpisodes && !config.DisplayUnairedEpisodes) @@ -352,7 +357,7 @@ namespace MediaBrowser.Controller.Entities.TV var allSeriesEpisodes = allItems.OfType<Episode>().ToList(); var allEpisodes = allItems.OfType<Season>() - .SelectMany(i => i.GetEpisodes(this, user, allSeriesEpisodes)) + .SelectMany(i => i.GetEpisodes(this, user, allSeriesEpisodes, options)) .Reverse() .ToList(); @@ -429,7 +434,7 @@ namespace MediaBrowser.Controller.Entities.TV progress.Report(100); } - public IEnumerable<Episode> GetSeasonEpisodes(Season parentSeason, User user) + public IEnumerable<Episode> GetSeasonEpisodes(Season parentSeason, User user, DtoOptions options) { var enableSeriesPresentationKey = ConfigurationManager.Configuration.EnableSeriesPresentationUniqueKey; @@ -445,7 +450,8 @@ namespace MediaBrowser.Controller.Entities.TV AncestorWithPresentationUniqueKey = queryFromSeries && enableSeriesPresentationKey ? null : seriesKey, SeriesPresentationUniqueKey = queryFromSeries && enableSeriesPresentationKey ? seriesKey : null, IncludeItemTypes = new[] { typeof(Episode).Name }, - SortBy = new[] { ItemSortBy.SortName } + SortBy = new[] { ItemSortBy.SortName }, + DtoOptions = options }; if (user != null) { @@ -466,14 +472,14 @@ namespace MediaBrowser.Controller.Entities.TV var allItems = LibraryManager.GetItemList(query).OfType<Episode>(); - return GetSeasonEpisodes(parentSeason, user, allItems); + return GetSeasonEpisodes(parentSeason, user, allItems, options); } - public IEnumerable<Episode> GetSeasonEpisodes(Season parentSeason, User user, IEnumerable<Episode> allSeriesEpisodes) + public IEnumerable<Episode> GetSeasonEpisodes(Season parentSeason, User user, IEnumerable<Episode> allSeriesEpisodes, DtoOptions options) { if (allSeriesEpisodes == null) { - return GetSeasonEpisodes(parentSeason, user); + return GetSeasonEpisodes(parentSeason, user, options); } var episodes = FilterEpisodesBySeason(allSeriesEpisodes, parentSeason, ConfigurationManager.Configuration.DisplaySpecialsWithinSeasons); |
