aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities
diff options
context:
space:
mode:
authorShadowghost <Ghost_of_Stone@web.de>2026-02-16 18:50:11 +0100
committerShadowghost <Ghost_of_Stone@web.de>2026-02-16 18:50:11 +0100
commit0f75518287f79c4c9aa3c009a93bd4ad65e2bab1 (patch)
tree1867f231583edfdb9dcd4a837c571d27f8197581 /MediaBrowser.Controller/Entities
parentde32e2eb6fdb86296312213b7254c37fd4a1a6f3 (diff)
Enforce permissions on BoxSets
Diffstat (limited to 'MediaBrowser.Controller/Entities')
-rw-r--r--MediaBrowser.Controller/Entities/Movies/BoxSet.cs19
1 files changed, 17 insertions, 2 deletions
diff --git a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
index c6579285db..2166a58024 100644
--- a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
+++ b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs
@@ -158,7 +158,7 @@ namespace MediaBrowser.Controller.Entities.Movies
return base.IsVisible(user, skipAllowedTagsCheck);
}
- if (!IsVisibleViaTags(user, skipAllowedTagsCheck))
+ if (!IsParentalAllowed(user, skipAllowedTagsCheck))
{
return false;
}
@@ -176,7 +176,22 @@ namespace MediaBrowser.Controller.Entities.Movies
return true;
}
- return userLibraryFolderIds.Any(i => libraryFolderIds.Contains(i));
+ if (!userLibraryFolderIds.Any(i => libraryFolderIds.Contains(i)))
+ {
+ return false;
+ }
+
+ // If user has parental controls, hide the BoxSet when all children are restricted
+ if (user.MaxParentalRatingScore.HasValue)
+ {
+ var linkedItems = GetLinkedChildren();
+ if (linkedItems.Count > 0 && linkedItems.All(child => !child.IsParentalAllowed(user, true)))
+ {
+ return false;
+ }
+ }
+
+ return true;
}
public override bool IsVisibleStandalone(User user)