diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-02-18 03:32:17 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2017-02-18 03:32:17 -0500 |
| commit | 6091e00e180b9b859de99c72b23dc155f284f516 (patch) | |
| tree | d59db82f7dadc0302cc20b8165036369cd25f41a /MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | |
| parent | 36f8eb1149e821de46b1ee15dcd1990c6a378ca9 (diff) | |
clean related files when deleting items
Diffstat (limited to 'MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs')
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | 68 |
1 files changed, 1 insertions, 67 deletions
diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs index 5b939244e..c1cc1555d 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs @@ -245,25 +245,15 @@ namespace MediaBrowser.Api.UserLibrary User user = null; BaseItem parentItem; - List<BaseItem> libraryItems = null; if (!string.IsNullOrWhiteSpace(request.UserId)) { user = UserManager.GetUserById(request.UserId); parentItem = string.IsNullOrEmpty(request.ParentId) ? user.RootFolder : LibraryManager.GetItemById(request.ParentId); - - if (RequiresLibraryItems(request, dtoOptions)) - { - libraryItems = user.RootFolder.GetRecursiveChildren(user).ToList(); - } } else { parentItem = string.IsNullOrEmpty(request.ParentId) ? LibraryManager.RootFolder : LibraryManager.GetItemById(request.ParentId); - if (RequiresLibraryItems(request, dtoOptions)) - { - libraryItems = LibraryManager.RootFolder.GetRecursiveChildren().ToList(); - } } IEnumerable<BaseItem> items; @@ -307,8 +297,6 @@ namespace MediaBrowser.Api.UserLibrary var filteredItems = FilterItems(request, extractedItems, user); - filteredItems = FilterByLibraryItems(request, filteredItems.Cast<IItemByName>(), user, libraryItems).Cast<BaseItem>(); - filteredItems = LibraryManager.Sort(filteredItems, user, request.GetOrderBy(), request.SortOrder ?? SortOrder.Ascending); var ibnItemsArray = filteredItems.ToList(); @@ -334,15 +322,7 @@ namespace MediaBrowser.Api.UserLibrary } - IEnumerable<Tuple<BaseItem, List<BaseItem>>> tuples; - if (dtoOptions.Fields.Contains(ItemFields.ItemCounts)) - { - tuples = ibnItems.Select(i => new Tuple<BaseItem, List<BaseItem>>(i, ((IItemByName)i).GetTaggedItems(libraryItems).ToList())); - } - else - { - tuples = ibnItems.Select(i => new Tuple<BaseItem, List<BaseItem>>(i, new List<BaseItem>())); - } + var tuples = ibnItems.Select(i => new Tuple<BaseItem, List<BaseItem>>(i, new List<BaseItem>())); var syncProgess = DtoService.GetSyncedItemProgress(dtoOptions); var dtos = tuples.Select(i => DtoService.GetItemByNameDto(i.Item1, dtoOptions, i.Item2, syncProgess, user)); @@ -352,52 +332,6 @@ namespace MediaBrowser.Api.UserLibrary return result; } - private bool RequiresLibraryItems(GetItemsByName request, DtoOptions options) - { - var filters = request.GetFilters().ToList(); - - if (filters.Contains(ItemFilter.IsPlayed)) - { - return true; - } - - if (filters.Contains(ItemFilter.IsUnplayed)) - { - return true; - } - - if (request.IsPlayed.HasValue) - { - return true; - } - - return options.Fields.Contains(ItemFields.ItemCounts); - } - - private IEnumerable<IItemByName> FilterByLibraryItems(GetItemsByName request, IEnumerable<IItemByName> items, User user, IEnumerable<BaseItem> libraryItems) - { - var filters = request.GetFilters().ToList(); - - if (filters.Contains(ItemFilter.IsPlayed)) - { - items = items.Where(i => i.GetTaggedItems(libraryItems).All(l => l.IsPlayed(user))); - } - - if (filters.Contains(ItemFilter.IsUnplayed)) - { - items = items.Where(i => i.GetTaggedItems(libraryItems).All(l => l.IsUnplayed(user))); - } - - if (request.IsPlayed.HasValue) - { - var val = request.IsPlayed.Value; - - items = items.Where(i => i.GetTaggedItems(libraryItems).All(l => l.IsPlayed(user)) == val); - } - - return items; - } - /// <summary> /// Filters the items. /// </summary> |
