diff options
Diffstat (limited to 'MediaBrowser.Api/UserLibrary/PersonsService.cs')
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/PersonsService.cs | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/MediaBrowser.Api/UserLibrary/PersonsService.cs b/MediaBrowser.Api/UserLibrary/PersonsService.cs index cf9959e53..33ce6cd80 100644 --- a/MediaBrowser.Api/UserLibrary/PersonsService.cs +++ b/MediaBrowser.Api/UserLibrary/PersonsService.cs @@ -15,8 +15,7 @@ namespace MediaBrowser.Api.UserLibrary /// <summary> /// Class GetPersons /// </summary> - [Route("/Persons", "GET")] - [Api(Description = "Gets all persons from a given item, folder, or the entire library")] + [Route("/Persons", "GET", Summary = "Gets all persons from a given item, folder, or the entire library")] public class GetPersons : GetItemsByName { /// <summary> @@ -30,8 +29,7 @@ namespace MediaBrowser.Api.UserLibrary /// <summary> /// Class GetPerson /// </summary> - [Route("/Persons/{Name}", "GET")] - [Api(Description = "Gets a person, by name")] + [Route("/Persons/{Name}", "GET", Summary = "Gets a person, by name")] public class GetPerson : IReturn<BaseItemDto> { /// <summary> @@ -88,17 +86,16 @@ namespace MediaBrowser.Api.UserLibrary { var item = GetPerson(request.Name, LibraryManager); - // Get everything - var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)); + var dtoOptions = new DtoOptions(); if (request.UserId.HasValue) { var user = UserManager.GetUserById(request.UserId.Value); - return DtoService.GetBaseItemDto(item, fields.ToList(), user); + return DtoService.GetBaseItemDto(item, dtoOptions, user); } - return DtoService.GetBaseItemDto(item, fields.ToList()); + return DtoService.GetBaseItemDto(item, dtoOptions); } /// <summary> @@ -159,11 +156,14 @@ namespace MediaBrowser.Api.UserLibrary { var people = itemsList.SelectMany(i => i.People.OrderBy(p => p.SortOrder ?? int.MaxValue).ThenBy(p => p.Type)); - return personTypes.Length == 0 ? - - people : + if (personTypes.Length > 0) + { + people = people.Where(p => + personTypes.Contains(p.Type ?? string.Empty, StringComparer.OrdinalIgnoreCase) || + personTypes.Contains(p.Role ?? string.Empty, StringComparer.OrdinalIgnoreCase)); + } - people.Where(p => personTypes.Contains(p.Type ?? string.Empty, StringComparer.OrdinalIgnoreCase) || personTypes.Contains(p.Role ?? string.Empty, StringComparer.OrdinalIgnoreCase)); + return people; } } } |
