diff --git a/src/components/homesections/homesections.js b/src/components/homesections/homesections.js index 94f0e2d3aa..b46bb1f762 100644 --- a/src/components/homesections/homesections.js +++ b/src/components/homesections/homesections.js @@ -607,7 +607,7 @@ import ServerConnections from '../ServerConnections'; oldestDateForNextUp.setDate(oldestDateForNextUp.getDate() - userSettings.maxDaysForNextUp()); return apiClient.getNextUpEpisodes({ Limit: enableScrollX() ? 24 : 15, - Fields: 'PrimaryImageAspectRatio,DateCreated,BasicSyncInfo,Path', + Fields: 'PrimaryImageAspectRatio,DateCreated,BasicSyncInfo,Path,MediaSourceCount', UserId: apiClient.getCurrentUserId(), ImageTypeLimit: 1, EnableImageTypes: 'Primary,Backdrop,Banner,Thumb', diff --git a/src/components/listview/listview.js b/src/components/listview/listview.js index 3bc9582796..037d75de90 100644 --- a/src/components/listview/listview.js +++ b/src/components/listview/listview.js @@ -282,6 +282,11 @@ import ServerConnections from '../ServerConnections'; html += '
' + cardBuilder.getDefaultText(item, options); } + const mediaSourceCount = item.MediaSourceCount || 1; + if (mediaSourceCount > 1 && options.disableIndicators !== true) { + html += '
' + mediaSourceCount + '
'; + } + let indicatorsHtml = ''; indicatorsHtml += indicators.getPlayedIndicatorHtml(item); diff --git a/src/controllers/itemDetails/index.js b/src/controllers/itemDetails/index.js index 0cbc638417..6308ab1d9c 100644 --- a/src/controllers/itemDetails/index.js +++ b/src/controllers/itemDetails/index.js @@ -868,7 +868,8 @@ function renderNextUp(page, item, user) { ServerConnections.getApiClient(item.ServerId).getNextUpEpisodes({ SeriesId: item.Id, - UserId: user.Id + UserId: user.Id, + Fields: 'MediaSourceCount' }).then(function (result) { if (result.Items.length) { section.classList.remove('hide'); diff --git a/src/controllers/list.js b/src/controllers/list.js index 2ec22ff6c4..c271cfa7a3 100644 --- a/src/controllers/list.js +++ b/src/controllers/list.js @@ -254,7 +254,7 @@ import { appRouter } from '../components/appRouter'; if (params.type === 'nextup') { return apiClient.getNextUpEpisodes(modifyQueryWithFilters(instance, { Limit: limit, - Fields: 'PrimaryImageAspectRatio,DateCreated,BasicSyncInfo', + Fields: 'PrimaryImageAspectRatio,DateCreated,BasicSyncInfo,MediaSourceCount', UserId: apiClient.getCurrentUserId(), ImageTypeLimit: 1, EnableImageTypes: 'Primary,Backdrop,Thumb', @@ -323,7 +323,7 @@ import { appRouter } from '../components/appRouter'; return apiClient.getItems(apiClient.getCurrentUserId(), modifyQueryWithFilters(instance, { StartIndex: startIndex, Limit: limit, - Fields: 'PrimaryImageAspectRatio,SortName,Path,SongCount,ChildCount', + Fields: 'PrimaryImageAspectRatio,SortName,Path,SongCount,ChildCount,MediaSourceCount', ImageTypeLimit: 1, ParentId: item.Id, SortBy: sortBy diff --git a/src/controllers/shows/tvrecommended.js b/src/controllers/shows/tvrecommended.js index 1f523df7b6..949c631cac 100644 --- a/src/controllers/shows/tvrecommended.js +++ b/src/controllers/shows/tvrecommended.js @@ -178,7 +178,7 @@ import autoFocuser from '../../components/autoFocuser'; const query = { userId: userId, Limit: 24, - Fields: 'PrimaryImageAspectRatio,DateCreated,BasicSyncInfo', + Fields: 'PrimaryImageAspectRatio,DateCreated,BasicSyncInfo,MediaSourceCount', ParentId: parentId, ImageTypeLimit: 1, EnableImageTypes: 'Primary,Backdrop,Thumb',