aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities/Folder.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities/Folder.cs')
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs27
1 files changed, 20 insertions, 7 deletions
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index b9b6dd517..6472b988a 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -277,6 +277,19 @@ namespace MediaBrowser.Controller.Entities
get { return GetRecursiveChildren(); }
}
+ public override bool IsVisible(User user)
+ {
+ if (this is ICollectionFolder)
+ {
+ if (user.Configuration.BlockedMediaFolders.Contains(Name, StringComparer.OrdinalIgnoreCase))
+ {
+ return false;
+ }
+ }
+
+ return base.IsVisible(user);
+ }
+
private List<BaseItem> LoadChildrenInternal()
{
return LoadChildren().ToList();
@@ -762,15 +775,15 @@ namespace MediaBrowser.Controller.Entities
{
list.Add(child);
}
- }
-
- if (recursive && child.IsFolder)
- {
- var folder = (Folder)child;
- if (folder.AddChildrenToList(user, includeLinkedChildren, list, true, filter))
+ if (recursive && child.IsFolder)
{
- hasLinkedChildren = true;
+ var folder = (Folder)child;
+
+ if (folder.AddChildrenToList(user, includeLinkedChildren, list, true, filter))
+ {
+ hasLinkedChildren = true;
+ }
}
}
}