|
|
|
@ -4203,6 +4203,15 @@ namespace Emby.Server.Implementations.Data
|
|
|
|
|
OR (select CleanValue from ItemValues where ItemId=ParentId and Type=6 and CleanValue in ({includedTags})) is not null)
|
|
|
|
|
""");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// A playlist should be accessible to its owner regardless of allowed tags.
|
|
|
|
|
else if (includeTypes.Length == 1 && includeTypes.FirstOrDefault() is BaseItemKind.Playlist)
|
|
|
|
|
{
|
|
|
|
|
whereClauses.Add($"""
|
|
|
|
|
((select CleanValue from ItemValues where ItemId=Guid and Type=6 and CleanValue in ({includedTags})) is not null
|
|
|
|
|
OR data like @PlaylistOwnerUserId)
|
|
|
|
|
""");
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
whereClauses.Add("((select CleanValue from ItemValues where ItemId=Guid and Type=6 and cleanvalue in (" + includedTags + ")) is not null)");
|
|
|
|
@ -4214,6 +4223,11 @@ namespace Emby.Server.Implementations.Data
|
|
|
|
|
{
|
|
|
|
|
statement.TryBind(paramName + index, GetCleanValue(query.IncludeInheritedTags[index]));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (query.User is not null)
|
|
|
|
|
{
|
|
|
|
|
statement.TryBind("@PlaylistOwnerUserId", $"""%"OwnerUserId":"{query.User.Id.ToString("N")}"%""");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|