diff --git a/src/controllers/movies/movies.html b/src/controllers/movies/movies.html index 428b83de45..7a08694b2a 100644 --- a/src/controllers/movies/movies.html +++ b/src/controllers/movies/movies.html @@ -3,6 +3,7 @@
+ diff --git a/src/controllers/movies/movies.js b/src/controllers/movies/movies.js index e8137fd764..40d81607bc 100644 --- a/src/controllers/movies/movies.js +++ b/src/controllers/movies/movies.js @@ -6,6 +6,7 @@ import { AlphaPicker } from '../../components/alphaPicker/alphaPicker'; import listView from '../../components/listview/listview'; import cardBuilder from '../../components/cardbuilder/cardBuilder'; import globalize from '../../scripts/globalize'; +import { playbackManager } from '../../components/playback/playbackmanager'; import '../../elements/emby-itemscontainer/emby-itemscontainer'; /* eslint-disable indent */ @@ -29,6 +30,15 @@ import '../../elements/emby-itemscontainer/emby-itemscontainer'; return ApiClient.getItems(ApiClient.getCurrentUserId(), query); } + function shuffle() { + ApiClient.getItem( + ApiClient.getCurrentUserId(), + params.topParentId + ).then((item) => { + playbackManager.shuffle(item); + }); + } + const afterRefresh = (result) => { function onNextPageClick() { if (isLoading) { @@ -77,6 +87,8 @@ import '../../elements/emby-itemscontainer/emby-itemscontainer'; elem.addEventListener('click', onPreviousPageClick); } + tabContent.querySelector('.btnShuffle').classList.toggle('hide', result.TotalRecordCount < 1); + isLoading = false; loading.hide(); @@ -243,6 +255,8 @@ import '../../elements/emby-itemscontainer/emby-itemscontainer'; onViewStyleChange(); itemsContainer.refreshItems(); }); + + tabContent.querySelector('.btnShuffle').addEventListener('click', shuffle); }; let itemsContainer = tabContent.querySelector('.itemsContainer');