aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities')
-rw-r--r--MediaBrowser.Controller/Entities/User.cs12
-rw-r--r--MediaBrowser.Controller/Entities/UserViewBuilder.cs4
2 files changed, 13 insertions, 3 deletions
diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs
index 01a7486b31..5b70ee5f4e 100644
--- a/MediaBrowser.Controller/Entities/User.cs
+++ b/MediaBrowser.Controller/Entities/User.cs
@@ -283,5 +283,17 @@ namespace MediaBrowser.Controller.Entities
return hour >= schedule.StartHour && hour <= schedule.EndHour;
}
+
+ public bool IsFolderGrouped(Guid id)
+ {
+ var config = Configuration;
+
+ if (config.ExcludeFoldersFromGrouping != null)
+ {
+ return !config.ExcludeFoldersFromGrouping.Select(i => new Guid(i)).Contains(id);
+ }
+
+ return config.GroupedFolders.Select(i => new Guid(i)).Contains(id);
+ }
}
}
diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
index 1672bda926..3e4dff0337 100644
--- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs
+++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
@@ -1754,12 +1754,10 @@ namespace MediaBrowser.Controller.Entities
private IEnumerable<Folder> GetMediaFolders(User user)
{
- var excludeFolderIds = user.Configuration.ExcludeFoldersFromGrouping.Select(i => new Guid(i)).ToList();
-
return user.RootFolder
.GetChildren(user, true, true)
.OfType<Folder>()
- .Where(i => !excludeFolderIds.Contains(i.Id) && !UserView.IsExcludedFromGrouping(i));
+ .Where(i => user.IsFolderGrouped(i.Id) && !UserView.IsExcludedFromGrouping(i));
}
private IEnumerable<Folder> GetMediaFolders(User user, IEnumerable<string> viewTypes)