From 7f55945c948b9c937f84fe043027e637bb3df689 Mon Sep 17 00:00:00 2001 From: Ethan Pippin Date: Thu, 13 Jan 2022 23:13:49 -0700 Subject: [PATCH] revert some work and fix collections --- .../BaseItemDto+Stackable.swift | 2 +- Shared/ViewModels/LibraryListViewModel.swift | 30 +------------------ Shared/ViewModels/LibraryViewModel.swift | 3 +- 3 files changed, 4 insertions(+), 31 deletions(-) diff --git a/Shared/Extensions/JellyfinAPIExtensions/BaseItemDto+Stackable.swift b/Shared/Extensions/JellyfinAPIExtensions/BaseItemDto+Stackable.swift index fb1b6bb4..d44f38ec 100644 --- a/Shared/Extensions/JellyfinAPIExtensions/BaseItemDto+Stackable.swift +++ b/Shared/Extensions/JellyfinAPIExtensions/BaseItemDto+Stackable.swift @@ -56,7 +56,7 @@ extension BaseItemDto: PortraitImageStackable { public var showTitle: Bool { switch self.itemType { - case .episode, .series, .movie: + case .episode, .series, .movie, .boxset: return Defaults[.showPosterLabels] default: return true diff --git a/Shared/ViewModels/LibraryListViewModel.swift b/Shared/ViewModels/LibraryListViewModel.swift index b1c2b85d..25ed0557 100644 --- a/Shared/ViewModels/LibraryListViewModel.swift +++ b/Shared/ViewModels/LibraryListViewModel.swift @@ -13,8 +13,6 @@ final class LibraryListViewModel: ViewModel { @Published var libraries: [BaseItemDto] = [] - @Published - var libraryRandomItems: [BaseItemDto: BaseItemDto] = [:] // temp var withFavorites = LibraryFilters(filters: [.isFavorite], sortOrder: [], withGenres: [], sortBy: []) @@ -31,34 +29,8 @@ final class LibraryListViewModel: ViewModel { .sink(receiveCompletion: { completion in self.handleAPIRequestError(completion: completion) }, receiveValue: { response in - if let libraries = response.items { - self.libraries = libraries - - for library in libraries { - self.getRandomLibraryItem(for: library) - } - } + self.libraries = response.items ?? [] }) .store(in: &cancellables) } - - // MARK: Library random item - - func getRandomLibraryItem(for library: BaseItemDto) { - guard library.itemType == .collectionFolder else { return } - - ItemsAPI.getItems(userId: SessionManager.main.currentLogin.user.id, - limit: 1, - parentId: library.id) - .sink { completion in - self.handleAPIRequestError(completion: completion) - } receiveValue: { result in - if let item = result.items?.first { - self.libraryRandomItems[library] = item - } else { - self.libraryRandomItems[library] = library - } - } - .store(in: &cancellables) - } } diff --git a/Shared/ViewModels/LibraryViewModel.swift b/Shared/ViewModels/LibraryViewModel.swift index 3f150172..12581b39 100644 --- a/Shared/ViewModels/LibraryViewModel.swift +++ b/Shared/ViewModels/LibraryViewModel.swift @@ -111,7 +111,8 @@ final class LibraryViewModel: ViewModel { .chapters, ], includeItemTypes: filters.filters - .contains(.isFavorite) ? ["Movie", "Series", "Season", "Episode"] : ["Movie", "Series"], + .contains(.isFavorite) ? ["Movie", "Series", "Season", "Episode", "BoxSet"] : + ["Movie", "Series", "BoxSet"], filters: filters.filters, sortBy: sortBy, tags: filters.tags,