Merge pull request #4002 from crobibero/partial-access
Fix partial library and channel access
This commit is contained in:
commit
521027b2c0
|
@ -402,13 +402,13 @@ namespace Jellyfin.Server.Implementations.Users
|
|||
EnablePublicSharing = user.HasPermission(PermissionKind.EnablePublicSharing),
|
||||
AccessSchedules = user.AccessSchedules.ToArray(),
|
||||
BlockedTags = user.GetPreference(PreferenceKind.BlockedTags),
|
||||
EnabledChannels = user.GetPreference(PreferenceKind.EnabledChannels),
|
||||
EnabledChannels = user.GetPreference(PreferenceKind.EnabledChannels)?.Select(Guid.Parse).ToArray(),
|
||||
EnabledDevices = user.GetPreference(PreferenceKind.EnabledDevices),
|
||||
EnabledFolders = user.GetPreference(PreferenceKind.EnabledFolders),
|
||||
EnabledFolders = user.GetPreference(PreferenceKind.EnabledFolders)?.Select(Guid.Parse).ToArray(),
|
||||
EnableContentDeletionFromFolders = user.GetPreference(PreferenceKind.EnableContentDeletionFromFolders),
|
||||
SyncPlayAccess = user.SyncPlayAccess,
|
||||
BlockedChannels = user.GetPreference(PreferenceKind.BlockedChannels),
|
||||
BlockedMediaFolders = user.GetPreference(PreferenceKind.BlockedMediaFolders),
|
||||
BlockedChannels = user.GetPreference(PreferenceKind.BlockedChannels)?.Select(Guid.Parse).ToArray(),
|
||||
BlockedMediaFolders = user.GetPreference(PreferenceKind.BlockedMediaFolders)?.Select(Guid.Parse).ToArray(),
|
||||
BlockUnratedItems = user.GetPreference(PreferenceKind.BlockUnratedItems).Select(Enum.Parse<UnratedItem>).ToArray()
|
||||
}
|
||||
};
|
||||
|
@ -735,9 +735,9 @@ namespace Jellyfin.Server.Implementations.Users
|
|||
PreferenceKind.BlockUnratedItems,
|
||||
policy.BlockUnratedItems?.Select(i => i.ToString()).ToArray() ?? Array.Empty<string>());
|
||||
user.SetPreference(PreferenceKind.BlockedTags, policy.BlockedTags);
|
||||
user.SetPreference(PreferenceKind.EnabledChannels, policy.EnabledChannels);
|
||||
user.SetPreference(PreferenceKind.EnabledChannels, policy.EnabledChannels?.Select(i => i.ToString("N", CultureInfo.InvariantCulture)).ToArray());
|
||||
user.SetPreference(PreferenceKind.EnabledDevices, policy.EnabledDevices);
|
||||
user.SetPreference(PreferenceKind.EnabledFolders, policy.EnabledFolders);
|
||||
user.SetPreference(PreferenceKind.EnabledFolders, policy.EnabledFolders?.Select(i => i.ToString("N", CultureInfo.InvariantCulture)).ToArray());
|
||||
user.SetPreference(PreferenceKind.EnableContentDeletionFromFolders, policy.EnableContentDeletionFromFolders);
|
||||
|
||||
dbContext.Update(user);
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
using System;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using Emby.Server.Implementations.Data;
|
||||
using Emby.Server.Implementations.Serialization;
|
||||
using Jellyfin.Data.Entities;
|
||||
|
@ -166,9 +168,9 @@ namespace Jellyfin.Server.Migrations.Routines
|
|||
}
|
||||
|
||||
user.SetPreference(PreferenceKind.BlockedTags, policy.BlockedTags);
|
||||
user.SetPreference(PreferenceKind.EnabledChannels, policy.EnabledChannels);
|
||||
user.SetPreference(PreferenceKind.EnabledChannels, policy.EnabledChannels?.Select(i => i.ToString("N", CultureInfo.InvariantCulture)).ToArray());
|
||||
user.SetPreference(PreferenceKind.EnabledDevices, policy.EnabledDevices);
|
||||
user.SetPreference(PreferenceKind.EnabledFolders, policy.EnabledFolders);
|
||||
user.SetPreference(PreferenceKind.EnabledFolders, policy.EnabledFolders?.Select(i => i.ToString("N", CultureInfo.InvariantCulture)).ToArray());
|
||||
user.SetPreference(PreferenceKind.EnableContentDeletionFromFolders, policy.EnableContentDeletionFromFolders);
|
||||
user.SetPreference(PreferenceKind.OrderedViews, config.OrderedViews);
|
||||
user.SetPreference(PreferenceKind.GroupedFolders, config.GroupedFolders);
|
||||
|
|
|
@ -80,11 +80,11 @@ namespace MediaBrowser.Model.Users
|
|||
|
||||
public bool EnableAllDevices { get; set; }
|
||||
|
||||
public string[] EnabledChannels { get; set; }
|
||||
public Guid[] EnabledChannels { get; set; }
|
||||
|
||||
public bool EnableAllChannels { get; set; }
|
||||
|
||||
public string[] EnabledFolders { get; set; }
|
||||
public Guid[] EnabledFolders { get; set; }
|
||||
|
||||
public bool EnableAllFolders { get; set; }
|
||||
|
||||
|
@ -94,9 +94,9 @@ namespace MediaBrowser.Model.Users
|
|||
|
||||
public bool EnablePublicSharing { get; set; }
|
||||
|
||||
public string[] BlockedMediaFolders { get; set; }
|
||||
public Guid[] BlockedMediaFolders { get; set; }
|
||||
|
||||
public string[] BlockedChannels { get; set; }
|
||||
public Guid[] BlockedChannels { get; set; }
|
||||
|
||||
public int RemoteClientBitrateLimit { get; set; }
|
||||
|
||||
|
@ -145,10 +145,10 @@ namespace MediaBrowser.Model.Users
|
|||
LoginAttemptsBeforeLockout = -1;
|
||||
|
||||
EnableAllChannels = true;
|
||||
EnabledChannels = Array.Empty<string>();
|
||||
EnabledChannels = Array.Empty<Guid>();
|
||||
|
||||
EnableAllFolders = true;
|
||||
EnabledFolders = Array.Empty<string>();
|
||||
EnabledFolders = Array.Empty<Guid>();
|
||||
|
||||
EnabledDevices = Array.Empty<string>();
|
||||
EnableAllDevices = true;
|
||||
|
|
Loading…
Reference in New Issue
Block a user