aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Api/Controllers/LibraryController.cs
diff options
context:
space:
mode:
authorcrobibero <cody@robibe.ro>2020-07-07 09:10:51 -0600
committercrobibero <cody@robibe.ro>2020-07-07 09:10:51 -0600
commit5d34b07d1ff7239c7961381fc71559d377e7a96b (patch)
tree405408d5cd266b25fc3182951592ce912b0286fd /Jellyfin.Api/Controllers/LibraryController.cs
parent2eef7d49131d717a0752cf3dcab1922637e2ef98 (diff)
Make query parameters nullable or set default value
Diffstat (limited to 'Jellyfin.Api/Controllers/LibraryController.cs')
-rw-r--r--Jellyfin.Api/Controllers/LibraryController.cs56
1 files changed, 31 insertions, 25 deletions
diff --git a/Jellyfin.Api/Controllers/LibraryController.cs b/Jellyfin.Api/Controllers/LibraryController.cs
index f1106cda6..2466b2ac8 100644
--- a/Jellyfin.Api/Controllers/LibraryController.cs
+++ b/Jellyfin.Api/Controllers/LibraryController.cs
@@ -146,11 +146,11 @@ namespace Jellyfin.Api.Controllers
[ProducesResponseType(StatusCodes.Status404NotFound)]
public ActionResult<ThemeMediaResult> GetThemeSongs(
[FromRoute] Guid itemId,
- [FromQuery] Guid userId,
- [FromQuery] bool inheritFromParent)
+ [FromQuery] Guid? userId,
+ [FromQuery] bool inheritFromParent = false)
{
- var user = !userId.Equals(Guid.Empty)
- ? _userManager.GetUserById(userId)
+ var user = userId.HasValue && !userId.Equals(Guid.Empty)
+ ? _userManager.GetUserById(userId.Value)
: null;
var item = itemId.Equals(Guid.Empty)
@@ -212,11 +212,11 @@ namespace Jellyfin.Api.Controllers
[ProducesResponseType(StatusCodes.Status404NotFound)]
public ActionResult<ThemeMediaResult> GetThemeVideos(
[FromRoute] Guid itemId,
- [FromQuery] Guid userId,
- [FromQuery] bool inheritFromParent)
+ [FromQuery] Guid? userId,
+ [FromQuery] bool inheritFromParent = false)
{
- var user = !userId.Equals(Guid.Empty)
- ? _userManager.GetUserById(userId)
+ var user = userId.HasValue && !userId.Equals(Guid.Empty)
+ ? _userManager.GetUserById(userId.Value)
: null;
var item = itemId.Equals(Guid.Empty)
@@ -277,8 +277,8 @@ namespace Jellyfin.Api.Controllers
[ProducesResponseType(StatusCodes.Status200OK)]
public ActionResult<AllThemeMediaResult> GetThemeMedia(
[FromRoute] Guid itemId,
- [FromQuery] Guid userId,
- [FromQuery] bool inheritFromParent)
+ [FromQuery] Guid? userId,
+ [FromQuery] bool inheritFromParent = false)
{
var themeSongs = GetThemeSongs(
itemId,
@@ -361,12 +361,14 @@ namespace Jellyfin.Api.Controllers
[Authorize(Policy = Policies.DefaultAuthorization)]
[ProducesResponseType(StatusCodes.Status204NoContent)]
[ProducesResponseType(StatusCodes.Status401Unauthorized)]
- public ActionResult DeleteItems([FromQuery] string ids)
+ public ActionResult DeleteItems([FromQuery] string? ids)
{
- var itemIds = string.IsNullOrWhiteSpace(ids)
- ? Array.Empty<string>()
- : RequestHelpers.Split(ids, ',', true);
+ if (string.IsNullOrEmpty(ids))
+ {
+ return NoContent();
+ }
+ var itemIds = RequestHelpers.Split(ids, ',', true);
foreach (var i in itemIds)
{
var item = _libraryManager.GetItemById(i);
@@ -403,12 +405,12 @@ namespace Jellyfin.Api.Controllers
[Authorize(Policy = Policies.DefaultAuthorization)]
[ProducesResponseType(StatusCodes.Status200OK)]
public ActionResult<ItemCounts> GetItemCounts(
- [FromQuery] Guid userId,
+ [FromQuery] Guid? userId,
[FromQuery] bool? isFavorite)
{
- var user = userId.Equals(Guid.Empty)
- ? null
- : _userManager.GetUserById(userId);
+ var user = userId.HasValue && !userId.Equals(Guid.Empty)
+ ? _userManager.GetUserById(userId.Value)
+ : null;
var counts = new ItemCounts
{
@@ -437,7 +439,7 @@ namespace Jellyfin.Api.Controllers
[Authorize(Policy = Policies.DefaultAuthorization)]
[ProducesResponseType(StatusCodes.Status200OK)]
[ProducesResponseType(StatusCodes.Status404NotFound)]
- public ActionResult<IEnumerable<BaseItemDto>> GetAncestors([FromRoute] Guid itemId, [FromQuery] Guid userId)
+ public ActionResult<IEnumerable<BaseItemDto>> GetAncestors([FromRoute] Guid itemId, [FromQuery] Guid? userId)
{
var item = _libraryManager.GetItemById(itemId);
@@ -448,8 +450,8 @@ namespace Jellyfin.Api.Controllers
var baseItemDtos = new List<BaseItemDto>();
- var user = !userId.Equals(Guid.Empty)
- ? _userManager.GetUserById(userId)
+ var user = userId.HasValue && !userId.Equals(Guid.Empty)
+ ? _userManager.GetUserById(userId.Value)
: null;
var dtoOptions = new DtoOptions().AddClientFields(Request);
@@ -688,7 +690,7 @@ namespace Jellyfin.Api.Controllers
public ActionResult<QueryResult<BaseItemDto>> GetSimilarItems(
[FromRoute] Guid itemId,
[FromQuery] string? excludeArtistIds,
- [FromQuery] Guid userId,
+ [FromQuery] Guid? userId,
[FromQuery] int? limit,
[FromQuery] string? fields)
{
@@ -737,7 +739,9 @@ namespace Jellyfin.Api.Controllers
[HttpGet("/Libraries/AvailableOptions")]
[Authorize(Policy = Policies.FirstTimeSetupOrElevated)]
[ProducesResponseType(StatusCodes.Status200OK)]
- public ActionResult<LibraryOptionsResultDto> GetLibraryOptionsInfo([FromQuery] string? libraryContentType, [FromQuery] bool isNewLibrary)
+ public ActionResult<LibraryOptionsResultDto> GetLibraryOptionsInfo(
+ [FromQuery] string? libraryContentType,
+ [FromQuery] bool isNewLibrary = false)
{
var result = new LibraryOptionsResultDto();
@@ -878,13 +882,15 @@ namespace Jellyfin.Api.Controllers
private QueryResult<BaseItemDto> GetSimilarItemsResult(
BaseItem item,
string? excludeArtistIds,
- Guid userId,
+ Guid? userId,
int? limit,
string? fields,
string[] includeItemTypes,
bool isMovie)
{
- var user = !userId.Equals(Guid.Empty) ? _userManager.GetUserById(userId) : null;
+ var user = userId.HasValue && !userId.Equals(Guid.Empty)
+ ? _userManager.GetUserById(userId.Value)
+ : null;
var dtoOptions = new DtoOptions()
.AddItemFields(fields)
.AddClientFields(Request);