aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/TvShowsService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-11-30 13:32:39 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-11-30 13:32:39 -0500
commit58f1a314b5ef3d13c2bc034f8a8949d9e88d1c20 (patch)
treecae5544871563ceacd3fefe0fdecee812766af0e /MediaBrowser.Api/TvShowsService.cs
parent45a4d25e2615e5ec05befc61560ad54b419504eb (diff)
update to service stack 3.0.70.0
Diffstat (limited to 'MediaBrowser.Api/TvShowsService.cs')
-rw-r--r--MediaBrowser.Api/TvShowsService.cs23
1 files changed, 22 insertions, 1 deletions
diff --git a/MediaBrowser.Api/TvShowsService.cs b/MediaBrowser.Api/TvShowsService.cs
index 23b8efa7b..9191bfc0c 100644
--- a/MediaBrowser.Api/TvShowsService.cs
+++ b/MediaBrowser.Api/TvShowsService.cs
@@ -81,6 +81,9 @@ namespace MediaBrowser.Api
[ApiMember(Name = "Season", Description = "Optional filter by season number.", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
public int? Season { get; set; }
+ [ApiMember(Name = "SeasonId", Description = "Optional. Filter by season id", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")]
+ public string SeasonId { get; set; }
+
[ApiMember(Name = "IsMissing", Description = "Optional filter by items that are missing episodes or not.", IsRequired = false, DataType = "bool", ParameterType = "query", Verb = "GET")]
public bool? IsMissing { get; set; }
@@ -442,7 +445,25 @@ namespace MediaBrowser.Api
var sortOrder = ItemSortBy.SortName;
- if (request.Season.HasValue)
+ if (!string.IsNullOrEmpty(request.SeasonId))
+ {
+ var season = _libraryManager.GetItemById(request.Id) as Season;
+
+ if (season.IndexNumber.HasValue)
+ {
+ episodes = FilterEpisodesBySeason(episodes, season.IndexNumber.Value, true);
+
+ sortOrder = ItemSortBy.AiredEpisodeOrder;
+ }
+ else
+ {
+ episodes = season.RecursiveChildren.OfType<Episode>();
+
+ sortOrder = ItemSortBy.SortName;
+ }
+ }
+
+ else if (request.Season.HasValue)
{
episodes = FilterEpisodesBySeason(episodes, request.Season.Value, true);