diff --git a/dashboard-ui/scripts/autoorganizelog.js b/dashboard-ui/scripts/autoorganizelog.js
index 8ee8773095..2a02171776 100644
--- a/dashboard-ui/scripts/autoorganizelog.js
+++ b/dashboard-ui/scripts/autoorganizelog.js
@@ -293,6 +293,22 @@
}
}
+ function getTabs() {
+ return [
+ {
+ href: 'autoorganizelog.html',
+ name: Globalize.translate('TabActivityLog')
+ },
+ {
+ href: 'autoorganizetv.html',
+ name: Globalize.translate('TabTV')
+ },
+ {
+ href: 'autoorganizesmart.html',
+ name: Globalize.translate('TabSmartMatches')
+ }];
+ }
+
$(document).on('pageinit', "#libraryFileOrganizerLogPage", function () {
var page = this;
@@ -307,6 +323,8 @@
}).on('pageshow', "#libraryFileOrganizerLogPage", function () {
+ LibraryMenu.setTabs('autoorganize', 0, getTabs);
+
var page = this;
reloadItems(page);
diff --git a/dashboard-ui/scripts/autoorganizesmart.js b/dashboard-ui/scripts/autoorganizesmart.js
index d2f68c0c1a..543c596643 100644
--- a/dashboard-ui/scripts/autoorganizesmart.js
+++ b/dashboard-ui/scripts/autoorganizesmart.js
@@ -105,6 +105,22 @@
});
}
+ function getTabs() {
+ return [
+ {
+ href: 'autoorganizelog.html',
+ name: Globalize.translate('TabActivityLog')
+ },
+ {
+ href: 'autoorganizetv.html',
+ name: Globalize.translate('TabTV')
+ },
+ {
+ href: 'autoorganizesmart.html',
+ name: Globalize.translate('TabSmartMatches')
+ }];
+ }
+
$(document).on('pageinit', "#libraryFileOrganizerSmartMatchPage", function () {
var page = this;
@@ -134,6 +150,8 @@
var page = this;
+ LibraryMenu.setTabs('autoorganize', 2, getTabs);
+
Dashboard.showLoadingMsg();
reloadList(page);
diff --git a/dashboard-ui/scripts/autoorganizetv.js b/dashboard-ui/scripts/autoorganizetv.js
index 1510130b74..cf781c4c4e 100644
--- a/dashboard-ui/scripts/autoorganizetv.js
+++ b/dashboard-ui/scripts/autoorganizetv.js
@@ -109,6 +109,22 @@
return false;
}
+ function getTabs() {
+ return [
+ {
+ href: 'autoorganizelog.html',
+ name: Globalize.translate('TabActivityLog')
+ },
+ {
+ href: 'autoorganizetv.html',
+ name: Globalize.translate('TabTV')
+ },
+ {
+ href: 'autoorganizesmart.html',
+ name: Globalize.translate('TabSmartMatches')
+ }];
+ }
+
$(document).on('pageinit', "#libraryFileOrganizerPage", function () {
var page = this;
@@ -160,6 +176,8 @@
var page = this;
+ LibraryMenu.setTabs('autoorganize', 1, getTabs);
+
ApiClient.getNamedConfiguration('autoorganize').then(function (config) {
loadPage(page, config);
});
diff --git a/dashboard-ui/scripts/cinemamodeconfiguration.js b/dashboard-ui/scripts/cinemamodeconfiguration.js
index d393dc9f6c..db2451b457 100644
--- a/dashboard-ui/scripts/cinemamodeconfiguration.js
+++ b/dashboard-ui/scripts/cinemamodeconfiguration.js
@@ -53,6 +53,26 @@
return false;
}
+ function getTabs() {
+ return [
+ {
+ href: 'cinemamodeconfiguration.html',
+ name: Globalize.translate('TabCinemaMode')
+ },
+ {
+ href: 'playbackconfiguration.html',
+ name: Globalize.translate('TabResumeSettings')
+ },
+ {
+ href: 'streamingsettings.html',
+ name: Globalize.translate('TabStreaming')
+ },
+ {
+ href: 'encodingsettings.html',
+ name: Globalize.translate('TabTranscoding')
+ }];
+ }
+
$(document).on('pageinit', "#cinemaModeConfigurationPage", function () {
var page = this;
@@ -111,6 +131,8 @@
}).on('pageshow', "#cinemaModeConfigurationPage", function () {
+ LibraryMenu.setTabs('playback', 0, getTabs);
+
Dashboard.showLoadingMsg();
var page = this;
diff --git a/dashboard-ui/scripts/encodingsettings.js b/dashboard-ui/scripts/encodingsettings.js
index 258224397b..b62c0eea2c 100644
--- a/dashboard-ui/scripts/encodingsettings.js
+++ b/dashboard-ui/scripts/encodingsettings.js
@@ -50,6 +50,26 @@
return false;
}
+ function getTabs() {
+ return [
+ {
+ href: 'cinemamodeconfiguration.html',
+ name: Globalize.translate('TabCinemaMode')
+ },
+ {
+ href: 'playbackconfiguration.html',
+ name: Globalize.translate('TabResumeSettings')
+ },
+ {
+ href: 'streamingsettings.html',
+ name: Globalize.translate('TabStreaming')
+ },
+ {
+ href: 'encodingsettings.html',
+ name: Globalize.translate('TabTranscoding')
+ }];
+ }
+
$(document).on('pageinit', "#encodingSettingsPage", function () {
var page = this;
@@ -84,6 +104,7 @@
Dashboard.showLoadingMsg();
+ LibraryMenu.setTabs('playback',3, getTabs);
var page = this;
ApiClient.getNamedConfiguration("encoding").then(function (config) {
diff --git a/dashboard-ui/scripts/librarymenu.js b/dashboard-ui/scripts/librarymenu.js
index a3092af251..413dc51fa4 100644
--- a/dashboard-ui/scripts/librarymenu.js
+++ b/dashboard-ui/scripts/librarymenu.js
@@ -6,6 +6,7 @@
var html = '';
+ html += '
';
var backIcon = browserInfo.safari ? 'chevron-left' : 'arrow-back';
html += '';
@@ -43,6 +44,10 @@
html += '';
}
+ html += '
';
+ html += '
';
+
+ html += '';
var viewMenuBar = document.createElement('div');
@@ -432,20 +437,12 @@
if (selected) {
link.classList.add('selectedSidebarLink');
- var collapsible = parentWithTag(link, 'EMBY-COLLAPSIBLE');
- if (collapsible) {
- collapsible.expanded = true;
- }
-
var title = '';
- title += collapsible.title || '';
- title += '
–';
-
var secondaryTitle = (link.innerText || link.textContent).trim();
title += secondaryTitle;
- var documentTitle = collapsible.title || secondaryTitle;
+ var documentTitle = secondaryTitle;
Dashboard.setPageTitle(title, documentTitle);
@@ -456,30 +453,28 @@
}
function createDashboardMenu() {
- require(['emby-collapsible'], function () {
- var html = '';
+ var html = '';
- //html += '';
+ //html += '';
- html += '
'
- html += '
';
- html += ''
+ html += '
'
+ html += '
';
+ html += '';
- html += Dashboard.getToolsMenuHtml();
+ html += Dashboard.getToolsMenuHtml();
- html = html.split('href=').join('onclick="return LibraryMenu.onLinkClicked(event, this);" href=');
+ html = html.split('href=').join('onclick="return LibraryMenu.onLinkClicked(event, this);" href=');
- mainDrawerPanel.querySelector('.mainDrawer').innerHTML = html;
+ mainDrawerPanel.querySelector('.mainDrawer').innerHTML = html;
- updateDashboardMenuSelectedItem();
- });
+ updateDashboardMenuSelectedItem();
}
function onSidebarLinkClick() {
@@ -723,6 +718,47 @@
return false;
},
+ setTabs: function (type, selectedIndex, builder) {
+
+ var viewMenuBarTabs;
+
+ if (!type) {
+ if (LibraryMenu.tabType) {
+
+ mainDrawerPanel.classList.remove('withTallToolbar');
+ viewMenuBarTabs = document.querySelector('.viewMenuBarTabs');
+ viewMenuBarTabs.innerHTML = '';
+ viewMenuBarTabs.classList.add('hide');
+ LibraryMenu.tabType = null;
+ }
+ return;
+ }
+
+ viewMenuBarTabs = document.querySelector('.viewMenuBarTabs');
+
+ if (!LibraryMenu.tabType) {
+ viewMenuBarTabs.classList.remove('hide');
+ }
+
+ if (LibraryMenu.tabType != type) {
+
+ require(['paper-tabs'], function () {
+
+ viewMenuBarTabs.innerHTML = '
' + builder().map(function (t) {
+
+ return '' + t.name + '
';
+
+ }).join('') + '';
+ mainDrawerPanel.classList.add('withTallToolbar');
+ LibraryMenu.tabType = type;
+ });
+ return;
+ }
+
+ viewMenuBarTabs.querySelector('paper-tabs').selected = selectedIndex;
+ LibraryMenu.tabType = type;
+ },
+
setTitle: function (title) {
var html = title;
@@ -885,7 +921,7 @@
}
}
- function buildViewMenuBar(page) {
+ function updateViewMenuBar(page) {
var viewMenuBar = document.querySelector('.viewMenuBar');
@@ -895,6 +931,12 @@
viewMenuBar.classList.remove('hide');
}
+ if (page.classList.contains('type-interior')) {
+ viewMenuBar.classList.add('headroomDisabled');
+ } else {
+ viewMenuBar.classList.remove('headroomDisabled');
+ }
+
if (requiresUserRefresh) {
ConnectionManager.user(window.ApiClient).then(updateUserInHeader);
}
@@ -915,6 +957,15 @@
}
});
+ pageClassOn('pagebeforeshow', 'page', function (e) {
+
+ var page = this;
+
+ if (!page.classList.contains('withTabs')) {
+ LibraryMenu.setTabs(null);
+ }
+ });
+
pageClassOn('pageshow', 'page', function (e) {
var page = this;
@@ -935,7 +986,7 @@
setDrawerClass(page);
- buildViewMenuBar(page);
+ updateViewMenuBar(page);
updateTabLinks(page);
if (!e.detail.isRestored) {
@@ -1023,7 +1074,6 @@
});
// initialise
headroom.init();
- elem.classList.add('headroomEnabled');
});
}
diff --git a/dashboard-ui/scripts/notificationsettings.js b/dashboard-ui/scripts/notificationsettings.js
index 35f1a2b2f9..386e7aa7b0 100644
--- a/dashboard-ui/scripts/notificationsettings.js
+++ b/dashboard-ui/scripts/notificationsettings.js
@@ -62,13 +62,27 @@
});
}
- $(document).on('pageshow', "#notificationSettingsPage", function () {
+ function getTabs() {
+ return [
+ {
+ href: 'notificationsettings.html',
+ name: Globalize.translate('TabNotifications')
+ },
+ {
+ href: 'appservices.html?context=notifications',
+ name: Globalize.translate('TabServices')
+ }];
+ }
- var page = this;
+ return function (view, params) {
- require(['paper-fab', 'paper-item-body', 'paper-icon-item'], function () {
- reload(page);
+ view.addEventListener('viewshow', function () {
+
+ LibraryMenu.setTabs('notifications', 0, getTabs);
+
+ require(['paper-fab', 'paper-item-body', 'paper-icon-item'], function () {
+ reload(view);
+ });
});
- });
-
+ };
});
\ No newline at end of file
diff --git a/dashboard-ui/scripts/playbackconfiguration.js b/dashboard-ui/scripts/playbackconfiguration.js
index f0f2555d26..f613f7daae 100644
--- a/dashboard-ui/scripts/playbackconfiguration.js
+++ b/dashboard-ui/scripts/playbackconfiguration.js
@@ -27,12 +27,33 @@
return false;
}
+ function getTabs() {
+ return [
+ {
+ href: 'cinemamodeconfiguration.html',
+ name: Globalize.translate('TabCinemaMode')
+ },
+ {
+ href: 'playbackconfiguration.html',
+ name: Globalize.translate('TabResumeSettings')
+ },
+ {
+ href: 'streamingsettings.html',
+ name: Globalize.translate('TabStreaming')
+ },
+ {
+ href: 'encodingsettings.html',
+ name: Globalize.translate('TabTranscoding')
+ }];
+ }
+
$(document).on('pageinit', "#playbackConfigurationPage", function () {
$('.playbackConfigurationForm').off('submit', onSubmit).on('submit', onSubmit);
}).on('pageshow', "#playbackConfigurationPage", function () {
+ LibraryMenu.setTabs('playback', 1, getTabs);
Dashboard.showLoadingMsg();
var page = this;
diff --git a/dashboard-ui/scripts/site.js b/dashboard-ui/scripts/site.js
index 5d6a84a12e..4c16896cf6 100644
--- a/dashboard-ui/scripts/site.js
+++ b/dashboard-ui/scripts/site.js
@@ -684,6 +684,10 @@ var Dashboard = {
item = items[i];
+ if (item.divider) {
+ menuHtml += "";
+ }
+
if (item.items) {
var style = item.color ? ' iconstyle="color:' + item.color + '"' : '';
@@ -714,254 +718,131 @@ var Dashboard = {
getToolsMenuLinks: function () {
return [{
- name: Globalize.translate('TabServer'),
- icon: 'dashboard',
- color: '#38c',
- expanded: true,
- items: [
- {
- name: Globalize.translate('TabDashboard'),
- href: "dashboard.html",
- pageIds: ['dashboardPage'],
- icon: 'dashboard'
- }, {
- name: Globalize.translate('TabSettings'),
- href: "dashboardgeneral.html",
- pageIds: ['dashboardGeneralPage'],
- icon: 'settings'
- }, {
- name: Globalize.translate('TabDevices'),
- href: "devices.html",
- pageIds: ['devicesPage'],
- icon: 'tablet'
- }, {
- name: Globalize.translate('TabUsers'),
- href: "userprofiles.html",
- pageIds: ['userProfilesPage'],
- icon: 'people'
- }
- ]
+ name: Globalize.translate('TabServer')
}, {
- name: Globalize.translate('TabLibrary'),
+ name: Globalize.translate('TabDashboard'),
+ href: "dashboard.html",
+ pageIds: ['dashboardPage'],
+ icon: 'dashboard'
+ }, {
+ name: Globalize.translate('TabSettings'),
+ href: "dashboardgeneral.html",
+ pageIds: ['dashboardGeneralPage'],
+ icon: 'settings'
+ }, {
+ name: Globalize.translate('TabDevices'),
+ href: "devices.html",
+ pageIds: ['devicesPage'],
+ icon: 'tablet'
+ }, {
+ name: Globalize.translate('TabUsers'),
+ href: "userprofiles.html",
+ pageIds: ['userProfilesPage'],
+ icon: 'people'
+ }, {
+ divider: true,
+ name: Globalize.translate('TabLibrary')
+ }, {
+ name: Globalize.translate('TabFolders'),
+ href: "library.html",
+ pageIds: ['mediaLibraryPage'],
icon: 'folder',
- color: '#ECA403',
- expanded: true,
- items: [
- {
- name: Globalize.translate('TabFolders'),
- href: "library.html",
- pageIds: ['mediaLibraryPage'],
- icon: 'folder'
- },
- {
- name: Globalize.translate('TabMetadata'),
- href: "metadata.html",
- pageIds: ['metadataConfigurationPage'],
- icon: 'insert-drive-file'
- },
- {
- name: Globalize.translate('TabServices'),
- href: "metadataimages.html",
- pageIds: ['metadataImagesConfigurationPage'],
- icon: 'insert-drive-file'
- },
- {
- name: Globalize.translate('TabNfoSettings'),
- href: "metadatanfo.html",
- pageIds: ['metadataNfoPage'],
- icon: 'insert-drive-file'
- },
- {
- name: Globalize.translate('TabPathSubstitution'),
- href: "librarypathmapping.html",
- pageIds: ['libraryPathMappingPage'],
- icon: 'mode-edit'
- },
- {
- name: Globalize.translate('TabSubtitles'),
- href: "metadatasubtitles.html",
- pageIds: ['metadataSubtitlesPage'],
- icon: 'closed-caption'
- },
- {
- name: Globalize.translate('TabAdvanced'),
- href: "librarysettings.html",
- pageIds: ['librarySettingsPage'],
- icon: 'settings'
- }
- ]
+ color: '#E5342E'
}, {
- name: Globalize.translate('DLNA'),
- icon: 'live-tv',
- color: '#E5342E',
- items: [
- {
- name: Globalize.translate('TabSettings'),
- href: "dlnasettings.html",
- pageIds: ['dlnaSettingsPage'],
- icon: 'settings'
- },
- {
- name: Globalize.translate('TabProfiles'),
- href: "dlnaprofiles.html",
- pageIds: ['dlnaProfilesPage', 'dlnaProfilePage'],
- icon: 'live-tv'
- }
- ]
+ name: Globalize.translate('TabMetadata'),
+ href: "metadata.html",
+ pageIds: ['metadataConfigurationPage'],
+ icon: 'insert-drive-file',
+ color: '#293AAE'
}, {
- name: Globalize.translate('TabLiveTV'),
- icon: 'dvr',
- color: '#293AAE',
- items: [
- {
- name: Globalize.translate('TabSettings'),
- href: "livetvstatus.html",
- pageIds: ['liveTvStatusPage'],
- icon: 'settings'
- },
- {
- name: Globalize.translate('TabAdvanced'),
- href: "livetvsettings.html",
- pageIds: ['liveTvSettingsPage'],
- icon: 'settings'
- },
- {
- name: Globalize.translate('TabServices'),
- href: "appservices.html?context=livetv",
- //selected: (isServicesPage && context == 'livetv'),
- icon: 'add-shopping-cart'
- }
- ]
+ name: Globalize.translate('TabServices'),
+ href: "metadataimages.html",
+ pageIds: ['metadataImagesConfigurationPage'],
+ icon: 'insert-drive-file'
}, {
- name: Globalize.translate('TabNotifications'),
- icon: 'notifications',
- color: 'brown',
- href: "notificationsettings.html"
+ name: Globalize.translate('TabNfoSettings'),
+ href: "metadatanfo.html",
+ pageIds: ['metadataNfoPage'],
+ icon: 'insert-drive-file'
+ }, {
+ name: Globalize.translate('TabPathSubstitution'),
+ href: "librarypathmapping.html",
+ pageIds: ['libraryPathMappingPage'],
+ icon: 'mode-edit'
+ }, {
+ name: Globalize.translate('TabSubtitles'),
+ href: "metadatasubtitles.html",
+ pageIds: ['metadataSubtitlesPage'],
+ icon: 'closed-caption'
+ }, {
+ name: Globalize.translate('TabAdvanced'),
+ href: "librarysettings.html",
+ pageIds: ['librarySettingsPage'],
+ icon: 'settings'
}, {
name: Globalize.translate('TabPlayback'),
icon: 'play-circle-filled',
color: '#E5342E',
- items: [
- {
- name: Globalize.translate('TabCinemaMode'),
- href: "cinemamodeconfiguration.html",
- pageIds: ['cinemaModeConfigurationPage'],
- icon: 'local-movies'
- },
- {
- name: Globalize.translate('TabResumeSettings'),
- href: "playbackconfiguration.html",
- pageIds: ['playbackConfigurationPage'],
- icon: 'play-circle-filled'
- },
- {
- name: Globalize.translate('TabStreaming'),
- href: "streamingsettings.html",
- pageIds: ['streamingSettingsPage'],
- icon: 'wifi'
- },
- {
- name: Globalize.translate('TabTranscoding'),
- href: "encodingsettings.html",
- pageIds: ['encodingSettingsPage'],
- icon: 'play-circle-filled'
- }
- ]
+ href: "cinemamodeconfiguration.html",
+ pageIds: ['cinemaModeConfigurationPage', 'playbackConfigurationPage', 'streamingSettingsPage', 'encodingSettingsPage']
+ }, {
+ name: Globalize.translate('TabSync'),
+ icon: 'sync',
+ href: "syncactivity.html",
+ pageIds: ['syncActivityPage', 'syncJobPage', 'devicesUploadPage', 'syncSettingsPage']
+ }, {
+ divider: true,
+ name: Globalize.translate('TabExtras')
+ }, {
+ name: Globalize.translate('TabAutoOrganize'),
+ color: '#01C0DD',
+ href: "autoorganizelog.html",
+ pageIds: ['libraryFileOrganizerPage', 'libraryFileOrganizerSmartMatchPage', 'libraryFileOrganizerLogPage'],
+ icon: 'folder'
+ }, {
+ name: Globalize.translate('DLNA'),
+ href: "dlnasettings.html",
+ pageIds: ['dlnaSettingsPage', 'dlnaProfilesPage', 'dlnaProfilePage'],
+ icon: 'settings'
+ }, {
+ name: Globalize.translate('TabLiveTV'),
+ href: "livetvstatus.html",
+ pageIds: ['liveTvStatusPage', 'liveTvSettingsPage'],
+ icon: 'dvr'
+ }, {
+ name: Globalize.translate('TabNotifications'),
+ icon: 'notifications',
+ color: 'brown',
+ href: "notificationsettings.html",
+ pageIds: ['notificationSettingsPage', 'notificationSettingPage']
}, {
name: Globalize.translate('TabPlugins'),
icon: 'add-shopping-cart',
color: '#9D22B1',
- items: [
- {
- name: Globalize.translate('TabMyPlugins'),
- href: "plugins.html",
- pageIds: ['pluginsPage'],
- icon: 'file-download'
- }, {
- name: Globalize.translate('TabCatalog'),
- href: "plugincatalog.html",
- pageIds: ['pluginCatalogPage'],
- icon: 'add-shopping-cart'
- }
- ]
+ href: "plugins.html",
+ pageIds: ['pluginsPage', 'pluginCatalogPage']
}, {
- name: Globalize.translate('TabSync'),
- icon: 'sync',
- items: [
- {
- name: Globalize.translate('TabSyncJobs'),
- href: "syncactivity.html",
- pageIds: ['syncActivityPage', 'syncJobPage'],
- icon: 'menu'
- }, {
- name: Globalize.translate('TabCameraUpload'),
- href: "devicesupload.html",
- pageIds: ['devicesUploadPage'],
- icon: 'photo'
- }, {
- name: Globalize.translate('TabServices'),
- href: "appservices.html?context=sync",
- //selected: (isServicesPage && context == 'sync'),
- icon: 'add-shopping-cart'
- }, {
- name: Globalize.translate('TabSettings'),
- href: "syncsettings.html",
- pageIds: ['syncSettingsPage'],
- icon: 'settings'
- }
- ]
+ divider: true,
+ name: Globalize.translate('TabExpert')
}, {
name: Globalize.translate('TabAdvanced'),
icon: 'settings',
+ href: "dashboardhosting.html",
color: '#F16834',
- items: [
- {
- name: Globalize.translate('TabAutoOrganize'),
- href: "autoorganizelog.html",
- pageIds: ['libraryFileOrganizerPage', 'libraryFileOrganizerSmartMatchPage', 'libraryFileOrganizerLogPage'],
- icon: 'folder'
- },
- {
- name: Globalize.translate('TabHosting'),
- href: "dashboardhosting.html",
- pageIds: ['dashboardHostingPage'],
- icon: 'wifi'
- }, {
- name: Globalize.translate('TabScheduledTasks'),
- href: "scheduledtasks.html",
- pageIds: ['scheduledTasksPage', 'scheduledTaskPage'],
- icon: 'schedule'
- },
- {
- name: Globalize.translate('TabSecurity'),
- href: "serversecurity.html",
- pageIds: ['serverSecurityPage'],
- icon: 'lock'
- }
- ]
+ pageIds: ['dashboardHostingPage', 'serverSecurityPage']
+ }, {
+ name: Globalize.translate('TabScheduledTasks'),
+ color: '#38c',
+ href: "scheduledtasks.html",
+ pageIds: ['scheduledTasksPage', 'scheduledTaskPage'],
+ icon: 'schedule'
}, {
name: Globalize.translate('TabHelp'),
- icon: 'info',
- items: [
- {
- name: Globalize.translate('TabAbout'),
- href: "about.html",
- pageIds: ['aboutPage'],
- icon: 'info'
- },
- {
- name: Globalize.translate('TabLogs'),
- href: "log.html",
- pageIds: ['logPage'],
- icon: 'menu'
- },
- {
- name: Globalize.translate('TabEmbyPremiere'),
- href: "supporterkey.html",
- pageIds: ['supporterKeyPage'],
- icon: 'add-circle'
- }
- ]
+ href: "about.html",
+ icon: 'help',
+ color: '#679C34',
+ divider: true,
+ pageIds: ['supporterKeyPage', 'logPage', 'aboutPage']
}];
},
@@ -2767,6 +2648,7 @@ var AppInfo = {};
defineRoute({
path: '/notificationsettings.html',
+ controller: 'scripts/notificationsettings',
dependencies: [],
autoFocus: false,
roles: 'admin'
diff --git a/dashboard-ui/scripts/streamingsettings.js b/dashboard-ui/scripts/streamingsettings.js
index 8c8f2cd164..8ed0f0e9e8 100644
--- a/dashboard-ui/scripts/streamingsettings.js
+++ b/dashboard-ui/scripts/streamingsettings.js
@@ -37,6 +37,26 @@
return false;
}
+ function getTabs() {
+ return [
+ {
+ href: 'cinemamodeconfiguration.html',
+ name: Globalize.translate('TabCinemaMode')
+ },
+ {
+ href: 'playbackconfiguration.html',
+ name: Globalize.translate('TabResumeSettings')
+ },
+ {
+ href: 'streamingsettings.html',
+ name: Globalize.translate('TabStreaming')
+ },
+ {
+ href: 'encodingsettings.html',
+ name: Globalize.translate('TabTranscoding')
+ }];
+ }
+
$(document).on('pageinit', "#streamingSettingsPage", function () {
var page = this;
@@ -70,6 +90,7 @@
Dashboard.showLoadingMsg();
+ LibraryMenu.setTabs('playback', 2, getTabs);
var page = this;
ApiClient.getServerConfiguration().then(function (config) {
diff --git a/dashboard-ui/streamingsettings.html b/dashboard-ui/streamingsettings.html
index 86812c083d..42c6164454 100644
--- a/dashboard-ui/streamingsettings.html
+++ b/dashboard-ui/streamingsettings.html
@@ -1,4 +1,4 @@
-