From 003886a4763154cac42628c7458f8b96e0c66602 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sun, 15 Mar 2015 15:22:04 -0400 Subject: fix web playback --- .../Library/UserViewManager.cs | 23 +++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) (limited to 'MediaBrowser.Server.Implementations/Library/UserViewManager.cs') diff --git a/MediaBrowser.Server.Implementations/Library/UserViewManager.cs b/MediaBrowser.Server.Implementations/Library/UserViewManager.cs index 9f3c95e08..fb14628d8 100644 --- a/MediaBrowser.Server.Implementations/Library/UserViewManager.cs +++ b/MediaBrowser.Server.Implementations/Library/UserViewManager.cs @@ -52,8 +52,6 @@ namespace MediaBrowser.Server.Implementations.Library .OfType() .ToList(); - var list = new List(); - var excludeFolderIds = user.Configuration.ExcludeFoldersFromGrouping.Select(i => new Guid(i)).ToList(); var standaloneFolders = folders @@ -65,7 +63,21 @@ namespace MediaBrowser.Server.Implementations.Library .OfType() .ToList(); - list.AddRange(standaloneFolders); + var list = new List(); + + if (_config.Configuration.EnableUserSpecificUserViews) + { + foreach (var folder in standaloneFolders) + { + var collectionFolder = folder as ICollectionFolder; + var folderViewType = collectionFolder == null ? null : collectionFolder.CollectionType; + list.Add(await GetUserView(folder.Id, folder.Name, folderViewType, string.Empty, user, cancellationToken).ConfigureAwait(false)); + } + } + else + { + list.AddRange(standaloneFolders); + } if (foldersWithViewTypes.Any(i => string.Equals(i.CollectionType, CollectionType.TvShows, StringComparison.OrdinalIgnoreCase)) || foldersWithViewTypes.Any(i => string.IsNullOrWhiteSpace(i.CollectionType))) @@ -169,6 +181,11 @@ namespace MediaBrowser.Server.Implementations.Library return _libraryManager.GetNamedView(user, name, type, sortName, cancellationToken); } + public Task GetUserView(Guid parentId, string name, string type, string sortName, User user, CancellationToken cancellationToken) + { + return _libraryManager.GetNamedView(user, name, parentId.ToString("N"), type, sortName, cancellationToken); + } + public List>> GetLatestItems(LatestItemsQuery request) { var user = _userManager.GetUserById(request.UserId); -- cgit v1.2.3