diff --git a/dashboard-ui/metadata.html b/dashboard-ui/metadata.html index 513a15f546..5cdf7b33b3 100644 --- a/dashboard-ui/metadata.html +++ b/dashboard-ui/metadata.html @@ -11,9 +11,9 @@
${TabBasics} - ${TabCustomizations} + ${TabAdvanced} ${TabSubtitles} - ${TabAdvanced} + ${TabOther}
diff --git a/dashboard-ui/metadataadvanced.html b/dashboard-ui/metadataadvanced.html index a53d8c182b..62040edacc 100644 --- a/dashboard-ui/metadataadvanced.html +++ b/dashboard-ui/metadataadvanced.html @@ -11,9 +11,9 @@
diff --git a/dashboard-ui/metadataimages.html b/dashboard-ui/metadataimages.html index 7106570c16..6429054f7b 100644 --- a/dashboard-ui/metadataimages.html +++ b/dashboard-ui/metadataimages.html @@ -11,9 +11,9 @@
diff --git a/dashboard-ui/metadatasubtitles.html b/dashboard-ui/metadatasubtitles.html index bf6171d143..6a89c62c5a 100644 --- a/dashboard-ui/metadatasubtitles.html +++ b/dashboard-ui/metadatasubtitles.html @@ -11,9 +11,9 @@
diff --git a/dashboard-ui/scripts/indexpage.js b/dashboard-ui/scripts/indexpage.js index b8496b79f9..3256952732 100644 --- a/dashboard-ui/scripts/indexpage.js +++ b/dashboard-ui/scripts/indexpage.js @@ -166,7 +166,7 @@ SortBy: "DateCreated", SortOrder: "Descending", - Limit: screenWidth >= 2400 ? 21 : (screenWidth >= 1920 ? 15 : (screenWidth >= 1440 ? 12 : (screenWidth >= 800 ? 12 : 8))), + Limit: screenWidth >= 2400 ? 30 : (screenWidth >= 1920 ? 20 : (screenWidth >= 1440 ? 12 : (screenWidth >= 800 ? 12 : 8))), Recursive: true, Fields: "PrimaryImageAspectRatio", Filters: "IsUnplayed,IsNotFolder", diff --git a/dashboard-ui/scripts/librarymenu.js b/dashboard-ui/scripts/librarymenu.js index 5c940d3ef4..082c27cdd7 100644 --- a/dashboard-ui/scripts/librarymenu.js +++ b/dashboard-ui/scripts/librarymenu.js @@ -1,19 +1,5 @@ (function (window, document, $) { - var itemCountsPromise; - var liveTvInfoPromise; - var itemsPromise; - - function ensurePromises() { - itemsPromise = itemsPromise || ApiClient.getItems(Dashboard.getCurrentUserId(), { - - SortBy: "SortName" - - }); - itemCountsPromise = itemCountsPromise || ApiClient.getItemCounts(Dashboard.getCurrentUserId()); - liveTvInfoPromise = liveTvInfoPromise || ApiClient.getLiveTvInfo(); - } - function renderHeader(page, user) { var html = '
'; @@ -22,8 +8,6 @@ html += 'MEDIABROWSER'; - //html += 'Remote Control'; - html += '
'; html += ''; @@ -69,65 +53,96 @@ return LibraryBrowser.getHref(item); } - function getViewsHtml(user, counts, items, liveTvInfo) { + function getViewsHtml() { var html = ''; - html += items.map(function (i) { + html += '
'; + html += '
'; - var viewMenuCssClass = (i.CollectionType || 'general') + 'ViewMenu'; + html += ''; - return '' + i.Name + ''; + html += ''; - }).join(''); + html += ''; - var showChannels = counts.ChannelCount; - var showLiveTv = liveTvInfo.EnabledUsers.indexOf(user.Id) != -1; - - if (showChannels || showLiveTv) { - html += '
'; - } - - if (showChannels) { - html += 'Channels'; - } - - if (showLiveTv) { - html += 'Live TV'; - } - - if (user.Configuration.IsAdministrator) { - html += '
'; - html += 'Dashboard'; - html += 'Metadata Manager'; - html += 'Reports'; - } + html += '
'; + html += '
'; + html += 'Dashboard'; + html += 'Metadata Manager'; + html += 'Reports'; + html += '
'; return html; } function showLibraryMenu() { - ensurePromises(); + var userId = Dashboard.getCurrentUserId(); - var userPromise = Dashboard.getCurrentUser(); + ApiClient.getItems(userId, { - $.when(itemCountsPromise, itemsPromise, liveTvInfoPromise, userPromise).done(function (response1, response2, response3, response4) { + SortBy: "SortName" - var counts = response1[0]; - var items = response2[0].Items; - var liveTvInfo = response3[0]; - var user = response4[0]; + }).done(function (result) { - var page = $.mobile.activePage; + var items = result.Items; - var panel = getLibraryMenu(page, user, counts, items, liveTvInfo); + var html = items.map(function (i) { - $(panel).panel('toggle'); + var viewMenuCssClass = (i.CollectionType || 'general') + 'ViewMenu'; + + return '' + i.Name + ''; + + }).join(''); + + $('.libraryMenuOptions').html(html); + }); + + var page = $.mobile.activePage; + + var panel = getLibraryMenu(); + + updateLibraryNavLinks(page); + + $(panel).panel('toggle'); + + ApiClient.getLiveTvInfo().done(function (liveTvInfo) { + + var showLiveTv = liveTvInfo.EnabledUsers.indexOf(userId) != -1; + + if (showLiveTv) { + $('.liveTvMenuOption').show(); + $('.secondaryDivider').show(); + } + }); + + $.getJSON(ApiClient.getUrl("Channels", { + userId: userId, + + // We just want the total record count + limit: 0 + + })).done(function (response) { + + if (response.TotalRecordCount) { + $('.channelsMenuOption').show(); + $('.secondaryDivider').show(); + } + + }); + + Dashboard.getCurrentUser().done(function (user) { + + if (user.Configuration.IsAdministrator) { + $('.adminMenuOptions').show(); + } else { + $('.adminMenuOptions').hide(); + } }); } - function getLibraryMenu(page, user, counts, items, liveTvInfo) { + function getLibraryMenu(user, channelCount, items, liveTvInfo) { var panel = $('#libraryPanel'); @@ -140,7 +155,7 @@ html += '

MEDIABROWSER

'; html += '
'; - html += getViewsHtml(user, counts, items, liveTvInfo); + html += getViewsHtml(user, channelCount, items, liveTvInfo); html += '
'; html += '
'; @@ -150,8 +165,6 @@ panel = $('#libraryPanel').panel({}).trigger('create'); } - updateLibraryNavLinks(page); - return panel; } @@ -259,7 +272,7 @@ renderHeader(page, user); updateCastIcon(); - + updateLibraryNavLinks(page); }); }