aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/UserLibrary
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/UserLibrary')
-rw-r--r--MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs18
-rw-r--r--MediaBrowser.Api/UserLibrary/ItemsService.cs16
2 files changed, 34 insertions, 0 deletions
diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
index df728ee0d..0b54541e5 100644
--- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
+++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
@@ -169,6 +169,24 @@ namespace MediaBrowser.Api.UserLibrary
});
}
+ if (filters.Contains(ItemFilter.IsFavoriteOrLikes))
+ {
+ items = items.Where(i =>
+ {
+ var userdata = i.GetUserItemData(UserDataRepository, user.Id).Result;
+
+ if (userdata == null)
+ {
+ return false;
+ }
+
+ var likes = userdata.Likes ?? false;
+ var favorite = userdata.IsFavorite;
+
+ return likes || favorite;
+ });
+ }
+
if (filters.Contains(ItemFilter.IsFavorite))
{
items = items.Where(i =>
diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs
index b52696efa..a8b54f10c 100644
--- a/MediaBrowser.Api/UserLibrary/ItemsService.cs
+++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs
@@ -335,6 +335,22 @@ namespace MediaBrowser.Api.UserLibrary
{
switch (filter)
{
+ case ItemFilter.IsFavoriteOrLikes:
+ return items.Where(item =>
+ {
+ var userdata = repository.GetUserData(user.Id, item.GetUserDataKey());
+
+ if (userdata == null)
+ {
+ return false;
+ }
+
+ var likes = userdata.Likes ?? false;
+ var favorite = userdata.IsFavorite;
+
+ return likes || favorite;
+ });
+
case ItemFilter.Likes:
return items.Where(item =>
{