create single method to form api url

This commit is contained in:
Luke Pulverenti
2015-02-10 00:54:58 -05:00
parent 3d7089a7db
commit 0052f0a09d
71 changed files with 22672 additions and 22657 deletions

View File

@@ -904,9 +904,8 @@ namespace MediaBrowser.Server.Implementations.Session
_libraryManager.RootFolder.GetRecursiveChildren(i => !i.IsFolder && itemFilter(i)) :
user.RootFolder.GetRecursiveChildren(user, i => !i.IsFolder && itemFilter(i));
items = items.OrderBy(i => i.SortName);
return items;
return FilterToSingleMediaType(items)
.OrderBy(i => i.SortName);
}
if (item.IsFolder)
@@ -917,14 +916,22 @@ namespace MediaBrowser.Server.Implementations.Session
folder.GetRecursiveChildren(i => !i.IsFolder) :
folder.GetRecursiveChildren(user, i => !i.IsFolder);
items = items.OrderBy(i => i.SortName);
return items;
return FilterToSingleMediaType(items)
.OrderBy(i => i.SortName);
}
return new[] { item };
}
private IEnumerable<BaseItem> FilterToSingleMediaType(IEnumerable<BaseItem> items)
{
return items
.Where(i => !string.IsNullOrWhiteSpace(i.MediaType))
.ToLookup(i => i.MediaType, StringComparer.OrdinalIgnoreCase)
.OrderByDescending(i => i.Count())
.FirstOrDefault();
}
private IEnumerable<BaseItem> TranslateItemForInstantMix(string id, User user)
{
var item = _libraryManager.GetItemById(id);