mirror of
https://github.com/jellyfin/jellyfin.git
synced 2024-07-05 21:33:02 +02:00
Fix partial library and channel access
This commit is contained in:
parent
ba7bdbc494
commit
ec8967b8e6
|
@ -402,13 +402,13 @@ namespace Jellyfin.Server.Implementations.Users
|
||||||
EnablePublicSharing = user.HasPermission(PermissionKind.EnablePublicSharing),
|
EnablePublicSharing = user.HasPermission(PermissionKind.EnablePublicSharing),
|
||||||
AccessSchedules = user.AccessSchedules.ToArray(),
|
AccessSchedules = user.AccessSchedules.ToArray(),
|
||||||
BlockedTags = user.GetPreference(PreferenceKind.BlockedTags),
|
BlockedTags = user.GetPreference(PreferenceKind.BlockedTags),
|
||||||
EnabledChannels = user.GetPreference(PreferenceKind.EnabledChannels),
|
EnabledChannels = user.GetPreference(PreferenceKind.EnabledChannels)?.Select(Guid.Parse).ToArray(),
|
||||||
EnabledDevices = user.GetPreference(PreferenceKind.EnabledDevices),
|
EnabledDevices = user.GetPreference(PreferenceKind.EnabledDevices),
|
||||||
EnabledFolders = user.GetPreference(PreferenceKind.EnabledFolders),
|
EnabledFolders = user.GetPreference(PreferenceKind.EnabledFolders)?.Select(Guid.Parse).ToArray(),
|
||||||
EnableContentDeletionFromFolders = user.GetPreference(PreferenceKind.EnableContentDeletionFromFolders),
|
EnableContentDeletionFromFolders = user.GetPreference(PreferenceKind.EnableContentDeletionFromFolders),
|
||||||
SyncPlayAccess = user.SyncPlayAccess,
|
SyncPlayAccess = user.SyncPlayAccess,
|
||||||
BlockedChannels = user.GetPreference(PreferenceKind.BlockedChannels),
|
BlockedChannels = user.GetPreference(PreferenceKind.BlockedChannels)?.Select(Guid.Parse).ToArray(),
|
||||||
BlockedMediaFolders = user.GetPreference(PreferenceKind.BlockedMediaFolders),
|
BlockedMediaFolders = user.GetPreference(PreferenceKind.BlockedMediaFolders)?.Select(Guid.Parse).ToArray(),
|
||||||
BlockUnratedItems = user.GetPreference(PreferenceKind.BlockUnratedItems).Select(Enum.Parse<UnratedItem>).ToArray()
|
BlockUnratedItems = user.GetPreference(PreferenceKind.BlockUnratedItems).Select(Enum.Parse<UnratedItem>).ToArray()
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -735,9 +735,9 @@ namespace Jellyfin.Server.Implementations.Users
|
||||||
PreferenceKind.BlockUnratedItems,
|
PreferenceKind.BlockUnratedItems,
|
||||||
policy.BlockUnratedItems?.Select(i => i.ToString()).ToArray() ?? Array.Empty<string>());
|
policy.BlockUnratedItems?.Select(i => i.ToString()).ToArray() ?? Array.Empty<string>());
|
||||||
user.SetPreference(PreferenceKind.BlockedTags, policy.BlockedTags);
|
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.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.EnableContentDeletionFromFolders, policy.EnableContentDeletionFromFolders);
|
||||||
|
|
||||||
dbContext.Update(user);
|
dbContext.Update(user);
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
using System;
|
using System;
|
||||||
|
using System.Globalization;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Linq;
|
||||||
using Emby.Server.Implementations.Data;
|
using Emby.Server.Implementations.Data;
|
||||||
using Emby.Server.Implementations.Serialization;
|
using Emby.Server.Implementations.Serialization;
|
||||||
using Jellyfin.Data.Entities;
|
using Jellyfin.Data.Entities;
|
||||||
|
@ -166,9 +168,9 @@ namespace Jellyfin.Server.Migrations.Routines
|
||||||
}
|
}
|
||||||
|
|
||||||
user.SetPreference(PreferenceKind.BlockedTags, policy.BlockedTags);
|
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.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.EnableContentDeletionFromFolders, policy.EnableContentDeletionFromFolders);
|
||||||
user.SetPreference(PreferenceKind.OrderedViews, config.OrderedViews);
|
user.SetPreference(PreferenceKind.OrderedViews, config.OrderedViews);
|
||||||
user.SetPreference(PreferenceKind.GroupedFolders, config.GroupedFolders);
|
user.SetPreference(PreferenceKind.GroupedFolders, config.GroupedFolders);
|
||||||
|
|
|
@ -80,11 +80,11 @@ namespace MediaBrowser.Model.Users
|
||||||
|
|
||||||
public bool EnableAllDevices { get; set; }
|
public bool EnableAllDevices { get; set; }
|
||||||
|
|
||||||
public string[] EnabledChannels { get; set; }
|
public Guid[] EnabledChannels { get; set; }
|
||||||
|
|
||||||
public bool EnableAllChannels { get; set; }
|
public bool EnableAllChannels { get; set; }
|
||||||
|
|
||||||
public string[] EnabledFolders { get; set; }
|
public Guid[] EnabledFolders { get; set; }
|
||||||
|
|
||||||
public bool EnableAllFolders { get; set; }
|
public bool EnableAllFolders { get; set; }
|
||||||
|
|
||||||
|
@ -94,9 +94,9 @@ namespace MediaBrowser.Model.Users
|
||||||
|
|
||||||
public bool EnablePublicSharing { get; set; }
|
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; }
|
public int RemoteClientBitrateLimit { get; set; }
|
||||||
|
|
||||||
|
@ -145,10 +145,10 @@ namespace MediaBrowser.Model.Users
|
||||||
LoginAttemptsBeforeLockout = -1;
|
LoginAttemptsBeforeLockout = -1;
|
||||||
|
|
||||||
EnableAllChannels = true;
|
EnableAllChannels = true;
|
||||||
EnabledChannels = Array.Empty<string>();
|
EnabledChannels = Array.Empty<Guid>();
|
||||||
|
|
||||||
EnableAllFolders = true;
|
EnableAllFolders = true;
|
||||||
EnabledFolders = Array.Empty<string>();
|
EnabledFolders = Array.Empty<Guid>();
|
||||||
|
|
||||||
EnabledDevices = Array.Empty<string>();
|
EnabledDevices = Array.Empty<string>();
|
||||||
EnableAllDevices = true;
|
EnableAllDevices = true;
|
||||||
|
|
Loading…
Reference in a new issue