From 608ebf4829e7e394170bb2dec8a33c83600e9c08 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sat, 28 Jun 2014 15:35:30 -0400 Subject: update video player layout --- .../Dto/DtoService.cs | 36 ++++++++++++++++------ 1 file changed, 26 insertions(+), 10 deletions(-) (limited to 'MediaBrowser.Server.Implementations/Dto') diff --git a/MediaBrowser.Server.Implementations/Dto/DtoService.cs b/MediaBrowser.Server.Implementations/Dto/DtoService.cs index 061898176..6684c4efb 100644 --- a/MediaBrowser.Server.Implementations/Dto/DtoService.cs +++ b/MediaBrowser.Server.Implementations/Dto/DtoService.cs @@ -62,6 +62,26 @@ namespace MediaBrowser.Server.Implementations.Dto /// Task{DtoBaseItem}. /// item public BaseItemDto GetBaseItemDto(BaseItem item, List fields, User user = null, BaseItem owner = null) + { + var byName = item as IItemByName; + + if (byName != null) + { + var libraryItems = user != null ? + user.RootFolder.GetRecursiveChildren(user) : + _libraryManager.RootFolder.RecursiveChildren; + + var dto = GetBaseItemDtoInternal(item, fields, user); + + SetItemByNameInfo(item, dto, byName.GetTaggedItems(libraryItems).ToList(), user); + + return dto; + } + + return GetBaseItemDtoInternal(item, fields, user, owner); + } + + private BaseItemDto GetBaseItemDtoInternal(BaseItem item, List fields, User user = null, BaseItem owner = null) { if (item == null) { @@ -141,20 +161,18 @@ namespace MediaBrowser.Server.Implementations.Dto return dto; } - public BaseItemDto GetItemByNameDto(T item, List fields, User user = null) + public BaseItemDto GetItemByNameDto(T item, List fields, List taggedItems, User user = null) where T : BaseItem, IItemByName { - var libraryItems = user != null ? user.RootFolder.GetRecursiveChildren(user) : - _libraryManager.RootFolder.RecursiveChildren; + var dto = GetBaseItemDtoInternal(item, fields, user); + + SetItemByNameInfo(item, dto, taggedItems, user); - return GetItemByNameDto(item, fields, item.GetTaggedItems(libraryItems).ToList(), user); + return dto; } - public BaseItemDto GetItemByNameDto(T item, List fields, List taggedItems, User user = null) - where T : BaseItem, IItemByName + private void SetItemByNameInfo(BaseItem item, BaseItemDto dto, List taggedItems, User user = null) { - var dto = GetBaseItemDto(item, fields, user); - if (item is MusicArtist || item is MusicGenre) { dto.AlbumCount = taggedItems.Count(i => i is MusicAlbum); @@ -181,8 +199,6 @@ namespace MediaBrowser.Server.Implementations.Dto } dto.ChildCount = taggedItems.Count; - - return dto; } /// -- cgit v1.2.3