aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/TvShowsService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/TvShowsService.cs')
-rw-r--r--MediaBrowser.Api/TvShowsService.cs38
1 files changed, 6 insertions, 32 deletions
diff --git a/MediaBrowser.Api/TvShowsService.cs b/MediaBrowser.Api/TvShowsService.cs
index e295f3b3a..daaa6343d 100644
--- a/MediaBrowser.Api/TvShowsService.cs
+++ b/MediaBrowser.Api/TvShowsService.cs
@@ -423,23 +423,14 @@ namespace MediaBrowser.Api
throw new ResourceNotFoundException("No series exists with Id " + request.Id);
}
- var seasons = series.GetSeasons(user);
-
- if (request.IsSpecialSeason.HasValue)
+ var seasons = (await series.GetItems(new InternalItemsQuery(user)
{
- var val = request.IsSpecialSeason.Value;
-
- seasons = seasons.Where(i => i.IsSpecialSeason == val);
- }
+ IsMissing = request.IsMissing,
+ IsVirtualUnaired = request.IsVirtualUnaired,
+ IsSpecialSeason = request.IsSpecialSeason,
+ AdjacentTo = request.AdjacentTo
- seasons = FilterVirtualSeasons(request, seasons);
-
- // This must be the last filter
- if (!string.IsNullOrEmpty(request.AdjacentTo))
- {
- seasons = UserViewBuilder.FilterForAdjacency(seasons, request.AdjacentTo)
- .Cast<Season>();
- }
+ }).ConfigureAwait(false)).Items.OfType<Season>();
var dtoOptions = GetDtoOptions(request);
@@ -453,23 +444,6 @@ namespace MediaBrowser.Api
};
}
- private IEnumerable<Season> FilterVirtualSeasons(GetSeasons request, IEnumerable<Season> items)
- {
- if (request.IsMissing.HasValue)
- {
- var val = request.IsMissing.Value;
- items = items.Where(i => (i.IsMissingSeason) == val);
- }
-
- if (request.IsVirtualUnaired.HasValue)
- {
- var val = request.IsVirtualUnaired.Value;
- items = items.Where(i => i.IsVirtualUnaired == val);
- }
-
- return items;
- }
-
public async Task<object> Get(GetEpisodes request)
{
var user = _userManager.GetUserById(request.UserId);