From 4ea412f2ab38211d245c9b383021a9abae12632d Mon Sep 17 00:00:00 2001 From: David Date: Wed, 5 Aug 2020 21:57:01 +0200 Subject: Fix remote images --- Jellyfin.Api/Controllers/RemoteImageController.cs | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'Jellyfin.Api/Controllers/RemoteImageController.cs') diff --git a/Jellyfin.Api/Controllers/RemoteImageController.cs b/Jellyfin.Api/Controllers/RemoteImageController.cs index 1b26163cf..50a161ef6 100644 --- a/Jellyfin.Api/Controllers/RemoteImageController.cs +++ b/Jellyfin.Api/Controllers/RemoteImageController.cs @@ -25,8 +25,7 @@ namespace Jellyfin.Api.Controllers /// /// Remote Images Controller. /// - [Route("Images")] - [Authorize(Policy = Policies.DefaultAuthorization)] + [Route("")] public class RemoteImageController : BaseJellyfinApiController { private readonly IProviderManager _providerManager; @@ -65,7 +64,8 @@ namespace Jellyfin.Api.Controllers /// Remote Images returned. /// Item not found. /// Remote Image Result. - [HttpGet("{itemId}/RemoteImages")] + [HttpGet("Items/{itemId}/RemoteImages")] + [Authorize(Policy = Policies.DefaultAuthorization)] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status404NotFound)] public async Task> GetRemoteImages( @@ -73,7 +73,7 @@ namespace Jellyfin.Api.Controllers [FromQuery] ImageType? type, [FromQuery] int? startIndex, [FromQuery] int? limit, - [FromQuery] string providerName, + [FromQuery] string? providerName, [FromQuery] bool includeAllLanguages = false) { var item = _libraryManager.GetItemById(itemId); @@ -84,7 +84,7 @@ namespace Jellyfin.Api.Controllers var images = await _providerManager.GetAvailableRemoteImages( item, - new RemoteImageQuery(providerName) + new RemoteImageQuery(providerName ?? string.Empty) { IncludeAllLanguages = includeAllLanguages, IncludeDisabledProviders = true, @@ -128,7 +128,8 @@ namespace Jellyfin.Api.Controllers /// Returned remote image providers. /// Item not found. /// List of remote image providers. - [HttpGet("{itemId}/RemoteImages/Providers")] + [HttpGet("Items/{itemId}/RemoteImages/Providers")] + [Authorize(Policy = Policies.DefaultAuthorization)] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status404NotFound)] public ActionResult> GetRemoteImageProviders([FromRoute] Guid itemId) @@ -149,11 +150,11 @@ namespace Jellyfin.Api.Controllers /// Remote image returned. /// Remote image not found. /// Image Stream. - [HttpGet("Remote")] + [HttpGet("Images/Remote")] [Produces(MediaTypeNames.Application.Octet)] [ProducesResponseType(StatusCodes.Status200OK)] [ProducesResponseType(StatusCodes.Status404NotFound)] - public async Task> GetRemoteImage([FromQuery, BindRequired] string imageUrl) + public async Task GetRemoteImage([FromQuery, BindRequired] string imageUrl) { var urlHash = imageUrl.GetMD5(); var pointerCachePath = GetFullCachePath(urlHash.ToString()); @@ -202,7 +203,8 @@ namespace Jellyfin.Api.Controllers /// Remote image downloaded. /// Remote image not found. /// Download status. - [HttpPost("{itemId}/RemoteImages/Download")] + [HttpPost("Items/{itemId}/RemoteImages/Download")] + [Authorize(Policy = Policies.RequiresElevation)] [ProducesResponseType(StatusCodes.Status204NoContent)] [ProducesResponseType(StatusCodes.Status404NotFound)] public async Task DownloadRemoteImage( -- cgit v1.2.3