mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-07-15 02:33:33 +01:00
Merge branch 'master' into network-rewrite
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
|
||||
using Jellyfin.Data.Enums;
|
||||
using MediaBrowser.Controller.Entities;
|
||||
@@ -53,13 +54,21 @@ internal class FixPlaylistOwner : IMigrationRoutine
|
||||
foreach (var playlist in playlists)
|
||||
{
|
||||
var shares = playlist.Shares;
|
||||
var firstEditShare = shares.First(x => x.CanEdit);
|
||||
if (firstEditShare is not null && Guid.TryParse(firstEditShare.UserId, out var guid))
|
||||
if (shares.Length > 0)
|
||||
{
|
||||
playlist.OwnerUserId = guid;
|
||||
playlist.Shares = shares.Where(x => x != firstEditShare).ToArray();
|
||||
|
||||
_playlistManager.UpdatePlaylistAsync(playlist).GetAwaiter().GetResult();
|
||||
var firstEditShare = shares.First(x => x.CanEdit);
|
||||
if (firstEditShare is not null && Guid.TryParse(firstEditShare.UserId, out var guid))
|
||||
{
|
||||
playlist.OwnerUserId = guid;
|
||||
playlist.Shares = shares.Where(x => x != firstEditShare).ToArray();
|
||||
playlist.UpdateToRepositoryAsync(ItemUpdateType.MetadataEdit, CancellationToken.None).GetAwaiter().GetResult();
|
||||
_playlistManager.SavePlaylistFile(playlist);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
playlist.OpenAccess = true;
|
||||
playlist.UpdateToRepositoryAsync(ItemUpdateType.MetadataEdit, CancellationToken.None).GetAwaiter().GetResult();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user