diff options
| author | LukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com> | 2012-08-01 13:20:22 -0400 |
|---|---|---|
| committer | LukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com> | 2012-08-01 13:20:22 -0400 |
| commit | 00c22a34546ee426cc7097953eb6b1c3443f946b (patch) | |
| tree | 82b2d466f98cec9436148f05a6f29ab98d40ae83 /MediaBrowser.Api/ApiService.cs | |
| parent | a7bead51b2d3f84c0665e9559ca2d024b973c9e4 (diff) | |
Added ParentLogoItemId to indicate what parent item has a logo
Diffstat (limited to 'MediaBrowser.Api/ApiService.cs')
| -rw-r--r-- | MediaBrowser.Api/ApiService.cs | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/MediaBrowser.Api/ApiService.cs b/MediaBrowser.Api/ApiService.cs index 34f7e69e7..bb2427574 100644 --- a/MediaBrowser.Api/ApiService.cs +++ b/MediaBrowser.Api/ApiService.cs @@ -31,9 +31,14 @@ namespace MediaBrowser.Api UserItemData = Kernel.Instance.GetUserItemData(userId, item.Id),
Type = item.GetType().Name,
IsFolder = (item is Folder),
- ParentId = item.Parent == null ? Guid.Empty : item.Parent.Id
+ ParentLogoItemId = GetParentLogoItemId(item)
};
+ if (item.Parent != null)
+ {
+ wrapper.ParentId = item.Parent.Id;
+ }
+
if (includeChildren)
{
var folder = item as Folder;
@@ -46,5 +51,25 @@ namespace MediaBrowser.Api return wrapper;
}
+
+ private static Guid? GetParentLogoItemId(BaseItem item)
+ {
+ if (string.IsNullOrEmpty(item.LogoImagePath))
+ {
+ var parent = item.Parent;
+
+ while (parent != null)
+ {
+ if (!string.IsNullOrEmpty(parent.LogoImagePath))
+ {
+ return parent.Id;
+ }
+
+ parent = parent.Parent;
+ }
+ }
+
+ return null;
+ }
}
}
|
