mirror of https://github.com/jellyfin/jellyfin.git
Fix a bug in Emby.Notifications and clean up
This commit is contained in:
parent
eef7cfd912
commit
31f725fdbf
|
@ -150,9 +150,7 @@ namespace Emby.Notifications.Api
|
||||||
[SuppressMessage("Microsoft.Performance", "CA1801:ReviewUnusedParameters", MessageId = "request", Justification = "Required for ServiceStack")]
|
[SuppressMessage("Microsoft.Performance", "CA1801:ReviewUnusedParameters", MessageId = "request", Justification = "Required for ServiceStack")]
|
||||||
public object Get(GetNotificationsSummary request)
|
public object Get(GetNotificationsSummary request)
|
||||||
{
|
{
|
||||||
return new NotificationsSummary
|
return new NotificationsSummary();
|
||||||
{
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public Task Post(AddAdminNotification request)
|
public Task Post(AddAdminNotification request)
|
||||||
|
@ -166,8 +164,8 @@ namespace Emby.Notifications.Api
|
||||||
Name = request.Name,
|
Name = request.Name,
|
||||||
Url = request.Url,
|
Url = request.Url,
|
||||||
UserIds = _userManager.Users
|
UserIds = _userManager.Users
|
||||||
.Where(p => p.Permissions.Select(x => x.Kind).Contains(PermissionKind.IsAdministrator))
|
.Where(user => user.HasPermission(PermissionKind.IsAdministrator))
|
||||||
.Select(p => p.Id)
|
.Select(user => user.Id)
|
||||||
.ToArray()
|
.ToArray()
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -477,7 +477,7 @@ namespace MediaBrowser.Api.Images
|
||||||
}
|
}
|
||||||
catch (IOException e)
|
catch (IOException e)
|
||||||
{
|
{
|
||||||
// TODO: Log this
|
Logger.LogError(e, "Error deleting user profile image:");
|
||||||
}
|
}
|
||||||
|
|
||||||
user.ProfileImage = null;
|
user.ProfileImage = null;
|
||||||
|
@ -820,14 +820,14 @@ namespace MediaBrowser.Api.Images
|
||||||
/// <param name="request">The request.</param>
|
/// <param name="request">The request.</param>
|
||||||
/// <param name="item">The item.</param>
|
/// <param name="item">The item.</param>
|
||||||
/// <returns>System.String.</returns>
|
/// <returns>System.String.</returns>
|
||||||
private ItemImageInfo GetImageInfo(ImageRequest request, BaseItem item)
|
private static ItemImageInfo GetImageInfo(ImageRequest request, BaseItem item)
|
||||||
{
|
{
|
||||||
var index = request.Index ?? 0;
|
var index = request.Index ?? 0;
|
||||||
|
|
||||||
return item.GetImageInfo(request.Type, index);
|
return item.GetImageInfo(request.Type, index);
|
||||||
}
|
}
|
||||||
|
|
||||||
private ItemImageInfo GetImageInfo(ImageRequest request, User user)
|
private static ItemImageInfo GetImageInfo(ImageRequest request, User user)
|
||||||
{
|
{
|
||||||
var info = new ItemImageInfo
|
var info = new ItemImageInfo
|
||||||
{
|
{
|
||||||
|
@ -859,15 +859,7 @@ namespace MediaBrowser.Api.Images
|
||||||
/// <returns>Task.</returns>
|
/// <returns>Task.</returns>
|
||||||
public async Task PostImage(BaseItem entity, Stream inputStream, ImageType imageType, string mimeType)
|
public async Task PostImage(BaseItem entity, Stream inputStream, ImageType imageType, string mimeType)
|
||||||
{
|
{
|
||||||
using var reader = new StreamReader(inputStream);
|
var memoryStream = await GetMemoryStream(inputStream);
|
||||||
var text = await reader.ReadToEndAsync().ConfigureAwait(false);
|
|
||||||
|
|
||||||
var bytes = Convert.FromBase64String(text);
|
|
||||||
|
|
||||||
var memoryStream = new MemoryStream(bytes)
|
|
||||||
{
|
|
||||||
Position = 0
|
|
||||||
};
|
|
||||||
|
|
||||||
// Handle image/png; charset=utf-8
|
// Handle image/png; charset=utf-8
|
||||||
mimeType = mimeType.Split(';').FirstOrDefault();
|
mimeType = mimeType.Split(';').FirstOrDefault();
|
||||||
|
@ -877,16 +869,21 @@ namespace MediaBrowser.Api.Images
|
||||||
entity.UpdateToRepository(ItemUpdateType.ImageUpdate, CancellationToken.None);
|
entity.UpdateToRepository(ItemUpdateType.ImageUpdate, CancellationToken.None);
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task PostImage(User user, Stream inputStream, string mimeType)
|
private static async Task<MemoryStream> GetMemoryStream(Stream inputStream)
|
||||||
{
|
{
|
||||||
using var reader = new StreamReader(inputStream);
|
using var reader = new StreamReader(inputStream);
|
||||||
var text = await reader.ReadToEndAsync().ConfigureAwait(false);
|
var text = await reader.ReadToEndAsync().ConfigureAwait(false);
|
||||||
|
|
||||||
var bytes = Convert.FromBase64String(text);
|
var bytes = Convert.FromBase64String(text);
|
||||||
var memoryStream = new MemoryStream(bytes)
|
return new MemoryStream(bytes)
|
||||||
{
|
{
|
||||||
Position = 0
|
Position = 0
|
||||||
};
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
private async Task PostImage(User user, Stream inputStream, string mimeType)
|
||||||
|
{
|
||||||
|
var memoryStream = await GetMemoryStream(inputStream);
|
||||||
|
|
||||||
// Handle image/png; charset=utf-8
|
// Handle image/png; charset=utf-8
|
||||||
mimeType = mimeType.Split(';').FirstOrDefault();
|
mimeType = mimeType.Split(';').FirstOrDefault();
|
||||||
|
|
|
@ -2760,14 +2760,7 @@ namespace MediaBrowser.Controller.Entities
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (var parent in GetParents())
|
return GetParents().FirstOrDefault(parent => parent.IsTopParent);
|
||||||
{
|
|
||||||
if (parent.IsTopParent)
|
|
||||||
{
|
|
||||||
return parent;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[JsonIgnore]
|
[JsonIgnore]
|
||||||
|
|
Loading…
Reference in New Issue