diff --git a/MediaBrowser.Api/TvShowsService.cs b/MediaBrowser.Api/TvShowsService.cs index e3dfb7f5a0..697e396281 100644 --- a/MediaBrowser.Api/TvShowsService.cs +++ b/MediaBrowser.Api/TvShowsService.cs @@ -415,17 +415,6 @@ namespace MediaBrowser.Api private IEnumerable FilterVirtualSeasons(GetSeasons request, IEnumerable items) { - if (request.IsMissing.HasValue && request.IsVirtualUnaired.HasValue) - { - var isMissing = request.IsMissing.Value; - var isVirtualUnaired = request.IsVirtualUnaired.Value; - - if (!isMissing && !isVirtualUnaired) - { - return items.Where(i => !i.IsMissingOrVirtualUnaired); - } - } - if (request.IsMissing.HasValue) { var val = request.IsMissing.Value; diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index c94c266262..e7b1df55ad 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -772,7 +772,7 @@ namespace MediaBrowser.Controller.Entities return true; } } - + var supportsUserDataQueries = ConfigurationManager.Configuration.SchemaVersion >= 76; if (query.SortBy != null && query.SortBy.Length > 0) @@ -1294,7 +1294,7 @@ namespace MediaBrowser.Controller.Entities /// /// Adds the children to list. /// - private void AddChildrenToList(Dictionary result, bool includeLinkedChildren, bool recursive, Func filter) + private void AddChildrenToList(Dictionary result, bool includeLinkedChildren, bool recursive, Func filter) { foreach (var child in Children) { @@ -1525,14 +1525,12 @@ namespace MediaBrowser.Controller.Entities User = user, Recursive = true, IsFolder = false, - IsUnaired = false, EnableTotalRecordCount = false - }; - if (!user.Configuration.DisplayMissingEpisodes) + if (!user.Configuration.DisplayMissingEpisodes || !user.Configuration.DisplayUnairedEpisodes) { - query.IsMissing = false; + query.ExcludeLocationTypes = new[] { LocationType.Virtual }; } var itemsResult = await GetItems(query).ConfigureAwait(false); diff --git a/MediaBrowser.Controller/Entities/TV/Season.cs b/MediaBrowser.Controller/Entities/TV/Season.cs index ab125eecb6..10436e0f24 100644 --- a/MediaBrowser.Controller/Entities/TV/Season.cs +++ b/MediaBrowser.Controller/Entities/TV/Season.cs @@ -152,12 +152,6 @@ namespace MediaBrowser.Controller.Entities.TV get { return LocationType == LocationType.Virtual && IsUnaired; } } - [IgnoreDataMember] - public bool IsMissingOrVirtualUnaired - { - get { return (IsMissingSeason ?? false) || (LocationType == LocationType.Virtual && IsUnaired); } - } - [IgnoreDataMember] public bool IsSpecialSeason { diff --git a/MediaBrowser.Controller/Entities/TV/Series.cs b/MediaBrowser.Controller/Entities/TV/Series.cs index 4a1982edca..a1e7c7e15e 100644 --- a/MediaBrowser.Controller/Entities/TV/Series.cs +++ b/MediaBrowser.Controller/Entities/TV/Series.cs @@ -238,20 +238,13 @@ namespace MediaBrowser.Controller.Entities.TV seasons = LibraryManager.Sort(base.GetChildren(user, true), user, new[] { ItemSortBy.SortName }, SortOrder.Ascending).OfType(); } - if (!includeMissingSeasons && !includeVirtualUnaired) + if (!includeMissingSeasons) { - seasons = seasons.Where(i => !i.IsMissingOrVirtualUnaired); + seasons = seasons.Where(i => !(i.IsMissingSeason ?? false)); } - else + if (!includeVirtualUnaired) { - if (!includeMissingSeasons) - { - seasons = seasons.Where(i => !(i.IsMissingSeason ?? false)); - } - if (!includeVirtualUnaired) - { - seasons = seasons.Where(i => !i.IsVirtualUnaired); - } + seasons = seasons.Where(i => !i.IsVirtualUnaired); } return seasons; diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs index 682eafb373..fbca357cd8 100644 --- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs +++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs @@ -1134,22 +1134,6 @@ namespace MediaBrowser.Controller.Entities bool? isVirtualUnaired, bool? isUnaired) { - if (isMissing.HasValue && isVirtualUnaired.HasValue) - { - if (!isMissing.Value && !isVirtualUnaired.Value) - { - return items.Where(i => - { - var e = i as Season; - if (e != null) - { - return !e.IsMissingOrVirtualUnaired; - } - return true; - }); - } - } - if (isMissing.HasValue) { var val = isMissing.Value;