Fix a bug in Emby.Notifications and clean up

This commit is contained in:
Patrick Barron 2020-05-26 23:08:27 -04:00
parent eef7cfd912
commit 31f725fdbf
3 changed files with 15 additions and 27 deletions

View File

@ -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()
}; };

View File

@ -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();

View File

@ -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]