diff options
Diffstat (limited to 'Jellyfin.Api/Controllers/UserLibraryController.cs')
| -rw-r--r-- | Jellyfin.Api/Controllers/UserLibraryController.cs | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/Jellyfin.Api/Controllers/UserLibraryController.cs b/Jellyfin.Api/Controllers/UserLibraryController.cs index b908f92be6..25f781e496 100644 --- a/Jellyfin.Api/Controllers/UserLibraryController.cs +++ b/Jellyfin.Api/Controllers/UserLibraryController.cs @@ -31,6 +31,7 @@ namespace Jellyfin.Api.Controllers; /// </summary> [Route("")] [Authorize] +[Tags("Library")] public class UserLibraryController : BaseJellyfinApiController { private readonly IUserManager _userManager; @@ -212,6 +213,7 @@ public class UserLibraryController : BaseJellyfinApiController /// <returns>An <see cref="OkResult"/> containing the <see cref="UserItemDataDto"/>.</returns> [HttpPost("UserFavoriteItems/{itemId}")] [ProducesResponseType(StatusCodes.Status200OK)] + [Tags("UserData")] public ActionResult<UserItemDataDto> MarkFavoriteItem( [FromQuery] Guid? userId, [FromRoute, Required] Guid itemId) @@ -259,6 +261,7 @@ public class UserLibraryController : BaseJellyfinApiController /// <returns>An <see cref="OkResult"/> containing the <see cref="UserItemDataDto"/>.</returns> [HttpDelete("UserFavoriteItems/{itemId}")] [ProducesResponseType(StatusCodes.Status200OK)] + [Tags("UserData")] public ActionResult<UserItemDataDto> UnmarkFavoriteItem( [FromQuery] Guid? userId, [FromRoute, Required] Guid itemId) @@ -306,6 +309,7 @@ public class UserLibraryController : BaseJellyfinApiController /// <returns>An <see cref="OkResult"/> containing the <see cref="UserItemDataDto"/>.</returns> [HttpDelete("UserItems/{itemId}/Rating")] [ProducesResponseType(StatusCodes.Status200OK)] + [Tags("UserData")] public ActionResult<UserItemDataDto?> DeleteUserItemRating( [FromQuery] Guid? userId, [FromRoute, Required] Guid itemId) @@ -354,6 +358,7 @@ public class UserLibraryController : BaseJellyfinApiController /// <returns>An <see cref="OkResult"/> containing the <see cref="UserItemDataDto"/>.</returns> [HttpPost("UserItems/{itemId}/Rating")] [ProducesResponseType(StatusCodes.Status200OK)] + [Tags("UserData")] public ActionResult<UserItemDataDto?> UpdateUserItemRating( [FromQuery] Guid? userId, [FromRoute, Required] Guid itemId, @@ -424,14 +429,8 @@ public class UserLibraryController : BaseJellyfinApiController } var dtoOptions = new DtoOptions(); - if (item is IHasTrailers hasTrailers) - { - var trailers = hasTrailers.LocalTrailers; - return Ok(_dtoService.GetBaseItemDtos(trailers, dtoOptions, user, item).AsEnumerable()); - } - return Ok(item.GetExtras() - .Where(e => e.ExtraType == ExtraType.Trailer) + return Ok(item.GetExtras([ExtraType.Trailer], user) .Select(i => _dtoService.GetBaseItemDto(i, dtoOptions, user, item))); } @@ -482,7 +481,7 @@ public class UserLibraryController : BaseJellyfinApiController var dtoOptions = new DtoOptions(); return Ok(item - .GetExtras() + .GetExtras(user) .Where(i => i.ExtraType.HasValue && BaseItem.DisplayExtraTypes.Contains(i.ExtraType.Value)) .Select(i => _dtoService.GetBaseItemDto(i, dtoOptions, user, item))); } @@ -552,6 +551,8 @@ public class UserLibraryController : BaseJellyfinApiController var dtoOptions = new DtoOptions { Fields = fields } .AddAdditionalDtoOptions(enableImages, enableUserData, imageTypeLimit, enableImageTypes); + dtoOptions.PreferEpisodeParentPoster = true; + var list = _userViewManager.GetLatestItems( new LatestItemsQuery { @@ -572,7 +573,7 @@ public class UserLibraryController : BaseJellyfinApiController var item = tuple.Item2[0]; var childCount = 0; - if (tuple.Item1 is not null && (tuple.Item2.Count > 1 || tuple.Item1 is MusicAlbum || tuple.Item1 is Series)) + if (tuple.Item1 is not null && (tuple.Item2.Count > 1 || tuple.Item1 is MusicAlbum)) { item = tuple.Item1; childCount = tuple.Item2.Count; |
