aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Entities/BaseItem.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller/Entities/BaseItem.cs')
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs27
1 files changed, 5 insertions, 22 deletions
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index 75a09a7b0..89706f917 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -1080,31 +1080,14 @@ namespace MediaBrowser.Controller.Entities
if (hasTags != null)
{
- if (user.Policy.TagFilters.Any(i => !IsTagFilterAccepted(hasTags, i)))
+ var policy = user.Policy;
+ if (policy.BlockedTags.Any(i => hasTags.Tags.Contains(i, StringComparer.OrdinalIgnoreCase)))
{
return false;
}
- }
-
- return true;
- }
-
- private bool IsTagFilterAccepted(IHasTags hasTags, TagFilter filter)
- {
- if (IsTagFilterEnforced(filter.Mode))
- {
- if (filter.Mode == TagFilterMode.Block)
- {
- // If content has the tag, it's not allowed
- if (hasTags.Tags.Contains(filter.Tag, StringComparer.OrdinalIgnoreCase))
- {
- return false;
- }
- }
- else if (filter.Mode == TagFilterMode.Allow)
+ if (policy.AllowedTags.Length > 0 && IsAllowTagFilterEnforced())
{
- // If content doesn't have the tag, it's not allowed
- if (!hasTags.Tags.Contains(filter.Tag, StringComparer.OrdinalIgnoreCase))
+ if (policy.AllowedTags.Any(i => !hasTags.Tags.Contains(i, StringComparer.OrdinalIgnoreCase)))
{
return false;
}
@@ -1114,7 +1097,7 @@ namespace MediaBrowser.Controller.Entities
return true;
}
- protected virtual bool IsTagFilterEnforced(TagFilterMode mode)
+ protected virtual bool IsAllowTagFilterEnforced()
{
return true;
}