aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJörn <joernhofmann@web.de>2019-06-24 15:06:49 -0700
committerdkanada <dkanada@users.noreply.github.com>2019-06-26 01:13:54 -0700
commit1fd81647560c12728e2eb64430360d0570336f61 (patch)
tree3e1cf0af98f29789402f292a42a064dc63b5099d
parent3c16c34386fc9e5139d2d17bd7af20c2bc3b2856 (diff)
fix issue #1347 introduced in pr #930
-rw-r--r--CONTRIBUTORS.md1
-rw-r--r--MediaBrowser.Api/UserLibrary/ItemsService.cs12
2 files changed, 12 insertions, 1 deletions
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md
index 29456598f..9168dccc8 100644
--- a/CONTRIBUTORS.md
+++ b/CONTRIBUTORS.md
@@ -26,6 +26,7 @@
- [ploughpuff](https://github.com/ploughpuff)
- [pjeanjean](https://github.com/pjeanjean)
- [DrPandemic](https://github.com/drpandemic)
+ - [joern-h](https://github.com/joern-h)
# Emby Contributors
diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs
index f1ae48492..f842230ee 100644
--- a/MediaBrowser.Api/UserLibrary/ItemsService.cs
+++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs
@@ -224,7 +224,17 @@ namespace MediaBrowser.Api.UserLibrary
request.IncludeItemTypes = "Playlist";
}
- if (!(item is UserRootFolder) && !user.Policy.EnableAllFolders && !user.Policy.EnabledFolders.Any(i => new Guid(i) == item.Id))
+ bool isInEnabledFolder = user.Policy.EnabledFolders.Any(i => new Guid(i) == item.Id);
+ var collectionFolders = _libraryManager.GetCollectionFolders(item);
+ foreach (var collectionFolder in collectionFolders)
+ {
+ if (user.Policy.EnabledFolders.Contains(collectionFolder.Id.ToString("N"), StringComparer.OrdinalIgnoreCase))
+ {
+ isInEnabledFolder = true;
+ }
+ }
+
+ if (!(item is UserRootFolder) && !user.Policy.EnableAllFolders && !isInEnabledFolder)
{
Logger.LogWarning("{UserName} is not permitted to access Library {ItemName}.", user.Name, item.Name);
return new QueryResult<BaseItem>