aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-06 01:13:43 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-06 01:13:43 -0400
commit032f3d376b3818bdff98512229fb96fdfd9f37bb (patch)
tree8638062f98588fcd90a00188bf3bb7c56d98e385 /MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
parent50aa0b86752757692f6de27925b0cd49399528ec (diff)
added more sorting to ibn endpoints
Diffstat (limited to 'MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs')
-rw-r--r--MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs18
1 files changed, 17 insertions, 1 deletions
diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
index 8bb07caa9..d4881c167 100644
--- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
+++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
@@ -142,6 +142,12 @@ namespace MediaBrowser.Api.UserLibrary
items = items.Where(i => string.Compare(request.NameStartsWithOrGreater, i.Name, StringComparison.CurrentCultureIgnoreCase) < 1);
}
+ var imageTypes = request.GetImageTypes().ToArray();
+ if (imageTypes.Length > 0)
+ {
+ items = items.Where(item => imageTypes.Any(imageType => ItemsService.HasImage(item.GetItem().Result, imageType)));
+ }
+
var filters = request.GetFilters().ToList();
if (filters.Count == 0)
@@ -221,6 +227,17 @@ namespace MediaBrowser.Api.UserLibrary
items = items.OrderBy(i => i.Name);
}
}
+ else if (string.Equals(request.SortBy, "Random", StringComparison.OrdinalIgnoreCase))
+ {
+ if (request.SortOrder.HasValue && request.SortOrder.Value == Model.Entities.SortOrder.Descending)
+ {
+ items = items.OrderByDescending(i => Guid.NewGuid());
+ }
+ else
+ {
+ items = items.OrderBy(i => Guid.NewGuid());
+ }
+ }
return items;
}
@@ -358,7 +375,6 @@ namespace MediaBrowser.Api.UserLibrary
public string Name;
- public BaseItem Item;
private UserItemData _userData;
public List<BaseItem> Items