diff --git a/dashboard-ui/scripts/moviecollections.js b/dashboard-ui/scripts/moviecollections.js index d4382baaa..564bcdaaf 100644 --- a/dashboard-ui/scripts/moviecollections.js +++ b/dashboard-ui/scripts/moviecollections.js @@ -18,7 +18,7 @@ SortOrder: "Ascending", IncludeItemTypes: "BoxSet", Recursive: true, - Fields: "PrimaryImageAspectRatio,MediaSourceCount,SortName,SyncInfo", + Fields: "PrimaryImageAspectRatio,SortName,SyncInfo", ImageTypeLimit: 1, EnableImageTypes: "Primary,Backdrop,Banner,Thumb", StartIndex: 0, diff --git a/dashboard-ui/scripts/movietrailers.js b/dashboard-ui/scripts/movietrailers.js index 72e999e49..2e88ce1a3 100644 --- a/dashboard-ui/scripts/movietrailers.js +++ b/dashboard-ui/scripts/movietrailers.js @@ -18,7 +18,7 @@ SortOrder: "Ascending", IncludeItemTypes: "Trailer", Recursive: true, - Fields: "PrimaryImageAspectRatio,MediaSourceCount,SortName,SyncInfo", + Fields: "PrimaryImageAspectRatio,SortName,SyncInfo", ImageTypeLimit: 1, EnableImageTypes: "Primary,Backdrop,Banner,Thumb", StartIndex: 0, diff --git a/dashboard-ui/scripts/musicalbumartists.js b/dashboard-ui/scripts/musicalbumartists.js deleted file mode 100644 index ac61cd0cb..000000000 --- a/dashboard-ui/scripts/musicalbumartists.js +++ /dev/null @@ -1,182 +0,0 @@ -define(['jQuery', 'alphaPicker'], function ($, alphaPicker) { - - return function (view, params, tabContent) { - - var self = this; - - var data = {}; - function getPageData(context) { - var key = getSavedQueryKey(context); - var pageData = data[key]; - - if (!pageData) { - pageData = data[key] = { - query: { - SortBy: "SortName", - SortOrder: "Ascending", - Recursive: true, - Fields: "PrimaryImageAspectRatio,SortName,DateCreated,SyncInfo,ItemCounts", - StartIndex: 0, - ImageTypeLimit: 1, - EnableImageTypes: "Primary,Backdrop,Banner,Thumb", - Limit: LibraryBrowser.getDefaultPageSize() - }, - view: LibraryBrowser.getSavedView(key) || LibraryBrowser.getDefaultItemsView('Poster', 'Poster') - }; - - pageData.query.ParentId = LibraryMenu.getTopParentId(); - LibraryBrowser.loadSavedQueryValues(key, pageData.query); - } - return pageData; - } - - function getQuery(context) { - - return getPageData(context).query; - } - - function getSavedQueryKey(context) { - - if (!context.savedQueryKey) { - context.savedQueryKey = LibraryBrowser.getSavedQueryKey('albumartists'); - } - return context.savedQueryKey; - } - - function reloadItems(page) { - - Dashboard.showLoadingMsg(); - - var query = getQuery(page); - - ApiClient.getAlbumArtists(Dashboard.getCurrentUserId(), query).then(function (result) { - - // Scroll back up so they can see the results from the beginning - window.scrollTo(0, 0); - - var view = getPageData(page).view; - - var html = ''; - var pagingHtml = LibraryBrowser.getQueryPagingHtml({ - startIndex: query.StartIndex, - limit: query.Limit, - totalRecordCount: result.TotalRecordCount, - showLimit: false, - updatePageSizeSetting: false, - addLayoutButton: true, - currentLayout: view, - filterButton: true - }); - - page.querySelector('.listTopPaging').innerHTML = pagingHtml; - - updateFilterControls(page); - - if (view == "List") { - - html = LibraryBrowser.getListViewHtml({ - items: result.Items, - context: 'music', - sortBy: query.SortBy - }); - } - else if (view == "Poster") { - html = LibraryBrowser.getPosterViewHtml({ - items: result.Items, - shape: "square", - context: 'music', - showTitle: true, - coverImage: true, - lazy: true, - centerText: true, - overlayPlayButton: true - }); - } - else if (view == "PosterCard") { - - html = LibraryBrowser.getPosterViewHtml({ - items: result.Items, - shape: "square", - context: 'music', - showTitle: true, - coverImage: true, - lazy: true, - cardLayout: true, - showSongCount: true - }); - } - - var elem = page.querySelector('#items'); - elem.innerHTML = html + pagingHtml; - ImageLoader.lazyChildren(elem); - - $('.btnNextPage', page).on('click', function () { - query.StartIndex += query.Limit; - reloadItems(page); - }); - - $('.btnPreviousPage', page).on('click', function () { - query.StartIndex -= query.Limit; - reloadItems(page); - }); - - $('.btnChangeLayout', page).on('layoutchange', function (e, layout) { - getPageData(page).view = layout; - LibraryBrowser.saveViewSetting(getSavedQueryKey(page), layout); - reloadItems(page); - }); - - $('.btnFilter', page).on('click', function () { - showFilterMenu(page); - }); - - LibraryBrowser.saveQueryValues(getSavedQueryKey(page), query); - Dashboard.hideLoadingMsg(); - }); - } - - function showFilterMenu(page) { - - require(['components/filterdialog/filterdialog'], function (filterDialogFactory) { - - var filterDialog = new filterDialogFactory({ - query: getQuery(page), - mode: 'albumartists' - }); - - Events.on(filterDialog, 'filterchange', function () { - reloadItems(page); - }); - - filterDialog.show(); - }); - } - - function updateFilterControls(tabContent) { - - var query = getQuery(tabContent); - - self.alphaPicker.value(query.NameStartsWithOrGreater); - } - - var alphaPickerElement = tabContent.querySelector('.alphaPicker'); - alphaPickerElement.addEventListener('alphavaluechanged', function (e) { - var newValue = e.detail.value; - var query = getQuery(tabContent); - query.NameStartsWithOrGreater = newValue; - query.StartIndex = 0; - reloadItems(tabContent); - }); - - self.alphaPicker = new alphaPicker({ - element: alphaPickerElement, - valueChangeEvent: 'click' - }); - - self.renderTab = function () { - - reloadItems(tabContent); - }; - }; - -}); \ No newline at end of file diff --git a/dashboard-ui/scripts/musicalbums.js b/dashboard-ui/scripts/musicalbums.js index f2cc4fa8d..5f27d51b7 100644 --- a/dashboard-ui/scripts/musicalbums.js +++ b/dashboard-ui/scripts/musicalbums.js @@ -18,7 +18,7 @@ SortOrder: "Ascending", IncludeItemTypes: "MusicAlbum", Recursive: true, - Fields: "PrimaryImageAspectRatio,MediaSourceCount,SortName,SyncInfo", + Fields: "PrimaryImageAspectRatio,SortName,SyncInfo", ImageTypeLimit: 1, EnableImageTypes: "Primary,Backdrop,Banner,Thumb", StartIndex: 0, diff --git a/dashboard-ui/scripts/musicartists.js b/dashboard-ui/scripts/musicartists.js index ed2d8dafd..2912deff6 100644 --- a/dashboard-ui/scripts/musicartists.js +++ b/dashboard-ui/scripts/musicartists.js @@ -38,7 +38,7 @@ function getSavedQueryKey(context) { if (!context.savedQueryKey) { - context.savedQueryKey = LibraryBrowser.getSavedQueryKey('artists'); + context.savedQueryKey = LibraryBrowser.getSavedQueryKey(self.mode); } return context.savedQueryKey; } @@ -49,7 +49,11 @@ var query = getQuery(page); - ApiClient.getArtists(Dashboard.getCurrentUserId(), query).then(function (result) { + var promise = self.mode == 'albumartists' ? + ApiClient.getAlbumArtists(Dashboard.getCurrentUserId(), query) : + ApiClient.getArtists(Dashboard.getCurrentUserId(), query); + + promise.then(function (result) { // Scroll back up so they can see the results from the beginning window.scrollTo(0, 0); @@ -141,7 +145,7 @@ var filterDialog = new filterDialogFactory({ query: getQuery(page), - mode: 'artists' + mode: self.mode }); Events.on(filterDialog, 'filterchange', function () { diff --git a/dashboard-ui/scripts/musicrecommended.js b/dashboard-ui/scripts/musicrecommended.js index 33a8f6a75..0f9391400 100644 --- a/dashboard-ui/scripts/musicrecommended.js +++ b/dashboard-ui/scripts/musicrecommended.js @@ -283,7 +283,7 @@ depends.push('scripts/musicalbums'); break; case 2: - depends.push('scripts/musicalbumartists'); + depends.push('scripts/musicartists'); break; case 3: depends.push('scripts/musicartists'); @@ -311,6 +311,13 @@ var controller = tabControllers[index]; if (!controller) { controller = index ? new controllerFactory(view, params, tabContent) : self; + + if (index == 2) { + controller.mode = 'albumartists'; + } else if (index == 3) { + controller.mode = 'artists'; + } + tabControllers[index] = controller; if (controller.initTab) {