Merge pull request #1394 from joern-h/bugfix-issue1347
Check if an item is a child of an EnabledFolder
This commit is contained in:
commit
c52e8a2027
|
@ -26,6 +26,7 @@
|
||||||
- [ploughpuff](https://github.com/ploughpuff)
|
- [ploughpuff](https://github.com/ploughpuff)
|
||||||
- [pjeanjean](https://github.com/pjeanjean)
|
- [pjeanjean](https://github.com/pjeanjean)
|
||||||
- [DrPandemic](https://github.com/drpandemic)
|
- [DrPandemic](https://github.com/drpandemic)
|
||||||
|
- [joern-h](https://github.com/joern-h)
|
||||||
|
|
||||||
# Emby Contributors
|
# Emby Contributors
|
||||||
|
|
||||||
|
|
|
@ -224,7 +224,17 @@ namespace MediaBrowser.Api.UserLibrary
|
||||||
request.IncludeItemTypes = "Playlist";
|
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);
|
Logger.LogWarning("{UserName} is not permitted to access Library {ItemName}.", user.Name, item.Name);
|
||||||
return new QueryResult<BaseItem>
|
return new QueryResult<BaseItem>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user