aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/UserLibrary/ItemsService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-15 15:33:23 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-15 15:33:23 -0400
commitd2b6b91ab60cc4ec97416e1de3750d669be578d8 (patch)
tree0f20ccc2416d11b73c8bca80fabbfb6ef758766f /MediaBrowser.Api/UserLibrary/ItemsService.cs
parent7ecbf44590971bf8bcea2fee6b6f71ed172c76c9 (diff)
added players filter to games view
Diffstat (limited to 'MediaBrowser.Api/UserLibrary/ItemsService.cs')
-rw-r--r--MediaBrowser.Api/UserLibrary/ItemsService.cs22
1 files changed, 22 insertions, 0 deletions
diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs
index 879df7e3c..40ce84405 100644
--- a/MediaBrowser.Api/UserLibrary/ItemsService.cs
+++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs
@@ -164,6 +164,9 @@ namespace MediaBrowser.Api.UserLibrary
[ApiMember(Name = "MinIndexNumber", Description = "Optional filter by minimum index number.", IsRequired = false, DataType = "int", ParameterType = "query", Verb = "GET")]
public int? MinIndexNumber { get; set; }
+ [ApiMember(Name = "MinPlayers", Description = "Optional filter by minimum number of game players.", IsRequired = false, DataType = "int", ParameterType = "query", Verb = "GET")]
+ public int? MinPlayers { get; set; }
+
[ApiMember(Name = "ParentIndexNumber", Description = "Optional filter by parent index number.", IsRequired = false, DataType = "int", ParameterType = "query", Verb = "GET")]
public int? ParentIndexNumber { get; set; }
@@ -670,6 +673,25 @@ namespace MediaBrowser.Api.UserLibrary
items = items.Where(i => request.HasThemeVideo.Value ? i.ThemeVideoIds.Count > 0 : i.ThemeVideoIds.Count == 0);
}
+ if (request.MinPlayers.HasValue)
+ {
+ var filterValue = request.MinPlayers.Value;
+
+ items = items.Where(i =>
+ {
+ var game = i as Game;
+
+ if (game != null)
+ {
+ var players = game.PlayersSupported ?? 1;
+
+ return players >= filterValue;
+ }
+
+ return false;
+ });
+ }
+
if (request.HasSpecialFeature.HasValue)
{
var filterValue = request.HasSpecialFeature.Value;