diff options
| author | Bond-009 <bond.009@outlook.com> | 2020-04-07 19:10:34 +0200 |
|---|---|---|
| committer | Joshua M. Boniface <joshua@boniface.me> | 2020-04-12 15:49:32 -0400 |
| commit | ee47a75f9ffd72b1de889fbd26661fef02c0782f (patch) | |
| tree | 067bef5b5c61bfcda96ef097bd7c7cf4bc736a2c | |
| parent | 66e7e8bcd2f4a92f9a5c7d8a932d6e0678018e77 (diff) | |
Merge pull request #2721 from PrplHaz4/patch-2
Separate Channels permissions from All Libraries
(cherry picked from commit 3a98ad82554a6911990a89abd95332ee132462de)
Signed-off-by: Joshua M. Boniface <joshua@boniface.me>
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/ItemsService.cs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs index c7b505171..22e4eea0b 100644 --- a/MediaBrowser.Api/UserLibrary/ItemsService.cs +++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs @@ -213,7 +213,10 @@ namespace MediaBrowser.Api.UserLibrary request.IncludeItemTypes = "Playlist"; } - bool isInEnabledFolder = user.Policy.EnabledFolders.Any(i => new Guid(i) == item.Id); + bool isInEnabledFolder = user.Policy.EnabledFolders.Any(i => new Guid(i) == item.Id) + // Assume all folders inside an EnabledChannel are enabled + || user.Policy.EnabledChannels.Any(i => new Guid(i) == item.Id); + var collectionFolders = _libraryManager.GetCollectionFolders(item); foreach (var collectionFolder in collectionFolders) { @@ -225,7 +228,7 @@ namespace MediaBrowser.Api.UserLibrary } } - if (!(item is UserRootFolder) && !user.Policy.EnableAllFolders && !isInEnabledFolder) + if (!(item is UserRootFolder) && !user.Policy.EnableAllFolders && !isInEnabledFolder && !user.Policy.EnableAllChannels) { Logger.LogWarning("{UserName} is not permitted to access Library {ItemName}.", user.Name, item.Name); return new QueryResult<BaseItem> |
