diff --git a/dashboard-ui/mypreferenceswebclient.html b/dashboard-ui/mypreferenceswebclient.html
deleted file mode 100644
index f4222458a6..0000000000
--- a/dashboard-ui/mypreferenceswebclient.html
+++ /dev/null
@@ -1,239 +0,0 @@
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dashboard-ui/myprofile.html b/dashboard-ui/myprofile.html
index 412e4bf5a6..2a3396f5af 100644
--- a/dashboard-ui/myprofile.html
+++ b/dashboard-ui/myprofile.html
@@ -8,9 +8,9 @@
diff --git a/dashboard-ui/scripts/appsettings.js b/dashboard-ui/scripts/appsettings.js
index ce8b2b9425..e132c3d234 100644
--- a/dashboard-ui/scripts/appsettings.js
+++ b/dashboard-ui/scripts/appsettings.js
@@ -63,8 +63,15 @@
}
return appStorage.getItem('syncPath');
- }
+ },
+ displayPreferencesKey: function() {
+ if (AppInfo.isNativeApp) {
+ return 'Emby Mobile';
+ }
+
+ return 'webclient';
+ }
};
diff --git a/dashboard-ui/scripts/indexpage.js b/dashboard-ui/scripts/indexpage.js
index e1750be5f8..bde67f7f3e 100644
--- a/dashboard-ui/scripts/indexpage.js
+++ b/dashboard-ui/scripts/indexpage.js
@@ -107,7 +107,7 @@
getDisplayPreferences('home', userId).done(function (result) {
result.CustomPrefs[homePageTourKey] = homePageDismissValue;
- ApiClient.updateDisplayPreferences('home', result, userId, getDisplayPreferencesAppName());
+ ApiClient.updateDisplayPreferences('home', result, userId, AppSettings.displayPreferencesKey());
});
}
@@ -249,18 +249,9 @@
});
- function getDisplayPreferencesAppName() {
-
- if (AppInfo.isNativeApp) {
- return 'Emby Mobile';
- }
-
- return 'webclient';
- }
-
function getDisplayPreferences(key, userId) {
- return ApiClient.getDisplayPreferences(key, userId, getDisplayPreferencesAppName()).done(function (result) {
+ return ApiClient.getDisplayPreferences(key, userId, AppSettings.displayPreferencesKey()).done(function (result) {
});
}
diff --git a/dashboard-ui/scripts/mypreferencescommon.js b/dashboard-ui/scripts/mypreferencescommon.js
index 15d49f334d..e1927b96d2 100644
--- a/dashboard-ui/scripts/mypreferencescommon.js
+++ b/dashboard-ui/scripts/mypreferencescommon.js
@@ -6,6 +6,6 @@
$('.lnkDisplayPreferences', page).attr('href', 'mypreferencesdisplay.html?userId=' + userId);
$('.lnkLanguagePreferences', page).attr('href', 'mypreferenceslanguages.html?userId=' + userId);
- $('.lnkWebClientPreferences', page).attr('href', 'mypreferenceswebclient.html?userId=' + userId);
+ $('.lnkHomeScreenPreferences', page).attr('href', 'mypreferenceshome.html?userId=' + userId);
$('.lnkMyProfile', page).attr('href', 'myprofile.html?userId=' + userId);
});
\ No newline at end of file
diff --git a/dashboard-ui/scripts/mypreferencesdisplay.js b/dashboard-ui/scripts/mypreferencesdisplay.js
index 37a5a0c37c..ee02385408 100644
--- a/dashboard-ui/scripts/mypreferencesdisplay.js
+++ b/dashboard-ui/scripts/mypreferencesdisplay.js
@@ -1,163 +1,6 @@
(function ($, window, document) {
- function renderViews(page, user, result) {
-
- var folderHtml = '';
-
- folderHtml += '
';
- folderHtml += result.Items.map(function (i) {
-
- var currentHtml = '';
-
- var id = 'chkGroupFolder' + i.Id;
-
- currentHtml += '' + i.Name + ' ';
-
- var isChecked = (user.Configuration.ExcludeFoldersFromGrouping != null && user.Configuration.ExcludeFoldersFromGrouping.indexOf(i.Id) == -1) ||
- user.Configuration.GroupedFolders.indexOf(i.Id) != -1;
-
- var checkedHtml = isChecked ? ' checked="checked"' : '';
-
- currentHtml += ' ';
-
- return currentHtml;
-
- }).join('');
-
- folderHtml += '
';
-
- $('.folderGroupList', page).html(folderHtml).trigger('create');
- }
-
- function renderViewStyles(page, user, result) {
-
- var folderHtml = '';
-
- folderHtml += '
';
- folderHtml += result.map(function (i) {
-
- var currentHtml = '';
-
- var id = 'chkPlainFolder' + i.Id;
-
- currentHtml += '' + i.Name + ' ';
-
- var isChecked = user.Configuration.PlainFolderViews.indexOf(i.Id) == -1;
- var checkedHtml = isChecked ? ' checked="checked"' : '';
-
- currentHtml += ' ';
-
- return currentHtml;
-
- }).join('');
-
- folderHtml += '
';
-
- $('.viewStylesList', page).html(folderHtml).trigger('create');
-
- if (result.length) {
- $('.viewStylesSection', page).show();
- } else {
- $('.viewStylesSection', page).hide();
- }
- }
-
- function renderLatestItems(page, user, result) {
-
- var folderHtml = '';
-
- folderHtml += '
';
- folderHtml += result.Items.map(function (i) {
-
- var currentHtml = '';
-
- var id = 'chkIncludeInLatest' + i.Id;
-
- currentHtml += '' + i.Name + ' ';
-
- var isChecked = user.Configuration.LatestItemsExcludes.indexOf(i.Id) == -1;
- var checkedHtml = isChecked ? ' checked="checked"' : '';
-
- currentHtml += ' ';
-
- return currentHtml;
-
- }).join('');
-
- folderHtml += '
';
-
- $('.latestItemsList', page).html(folderHtml).trigger('create');
- }
-
- function renderChannels(page, user, result) {
-
- var folderHtml = '';
-
- folderHtml += '
';
- folderHtml += result.Items.map(function (i) {
-
- var currentHtml = '';
-
- var id = 'chkGroupChannel' + i.Id;
-
- currentHtml += '' + i.Name + ' ';
-
- var isChecked = user.Configuration.DisplayChannelsWithinViews.indexOf(i.Id) != -1;
- var checkedHtml = isChecked ? ' checked="checked"' : '';
-
- currentHtml += ' ';
-
- return currentHtml;
-
- }).join('');
-
- folderHtml += '
';
-
- $('.channelGroupList', page).html(folderHtml).trigger('create');
- }
-
- function renderViewOrder(page, user, result) {
-
- var html = '';
-
- html += '
';
-
- $('.viewOrderList', page).html(html).trigger('create');
- }
-
- function loadForm(page, user, hideMsg) {
+ function loadForm(page, user) {
$('#chkDisplayMissingEpisodes', page).checked(user.Configuration.DisplayMissingEpisodes || false).checkboxradio("refresh");
$('#chkDisplayUnairedEpisodes', page).checked(user.Configuration.DisplayUnairedEpisodes || false).checkboxradio("refresh");
@@ -165,32 +8,17 @@
$('#chkDisplayTrailersWithinMovieSuggestions', page).checked(user.Configuration.IncludeTrailersInSuggestions || false).checkboxradio("refresh");
$('#chkGroupMoviesIntoCollections', page).checked(user.Configuration.GroupMoviesIntoBoxSets || false).checkboxradio("refresh");
- $('#chkDisplayCollectionView', page).checked(user.Configuration.DisplayCollectionsView || false).checkboxradio("refresh");
- $('#chkDisplayFolderView', page).checked(user.Configuration.DisplayFoldersView || false).checkboxradio("refresh");
- $('#chkHidePlayedFromLatest', page).checked(user.Configuration.HidePlayedInLatest || false).checkboxradio("refresh");
+ $('#selectThemeSong', page).val(appStorage.getItem('enableThemeSongs-' + user.Id) || '').selectmenu("refresh");
+ $('#selectBackdrop', page).val(appStorage.getItem('enableBackdrops-' + user.Id) || '').selectmenu("refresh");
- var promise1 = ApiClient.getItems(user.Id, {
- sortBy: "SortName"
- });
- var promise2 = ApiClient.getJSON(ApiClient.getUrl("Channels", {
- UserId: user.Id
- }));
- var promise3 = ApiClient.getUserViews(user.Id);
- var promise4 = ApiClient.getJSON(ApiClient.getUrl("Users/" + user.Id + "/SpecialViewOptions"));
+ $('#selectEnableItemPreviews', page).val(AppSettings.enableItemPreviews().toString().toLowerCase()).selectmenu("refresh");
- $.when(promise1, promise2, promise3, promise4).done(function (r1, r2, r3, r4) {
+ $('#chkEnableFullScreen', page).checked(AppSettings.enableFullScreen()).checkboxradio("refresh");
- renderViews(page, user, r1[0]);
- renderLatestItems(page, user, r1[0]);
- renderChannels(page, user, r2[0]);
- renderViewOrder(page, user, r3[0]);
- renderViewStyles(page, user, r4[0]);
+ $('#txtSyncPath', page).val(AppSettings.syncPath());
- if (hideMsg !== false) {
- Dashboard.hideLoadingMsg();
- }
- });
+ Dashboard.hideLoadingMsg();
}
function saveUser(page, user) {
@@ -198,40 +26,15 @@
user.Configuration.DisplayMissingEpisodes = $('#chkDisplayMissingEpisodes', page).checked();
user.Configuration.DisplayUnairedEpisodes = $('#chkDisplayUnairedEpisodes', page).checked();
user.Configuration.GroupMoviesIntoBoxSets = $('#chkGroupMoviesIntoCollections', page).checked();
-
- user.Configuration.DisplayCollectionsView = $('#chkDisplayCollectionView', page).checked();
- user.Configuration.DisplayFoldersView = $('#chkDisplayFolderView', page).checked();
-
- user.Configuration.HidePlayedInLatest = $('#chkHidePlayedFromLatest', page).checked();
-
user.Configuration.IncludeTrailersInSuggestions = $('#chkDisplayTrailersWithinMovieSuggestions', page).checked();
- user.Configuration.LatestItemsExcludes = $(".chkIncludeInLatest:not(:checked)", page).get().map(function (i) {
+ AppSettings.enableItemPreviews($('#selectEnableItemPreviews', page).val() == 'true');
+ AppSettings.enableFullScreen($('#chkEnableFullScreen', page).checked());
- return i.getAttribute('data-folderid');
- });
+ appStorage.setItem('enableThemeSongs-' + user.Id, $('#selectThemeSong', page).val());
+ appStorage.setItem('enableBackdrops-' + user.Id, $('#selectBackdrop', page).val());
- user.Configuration.ExcludeFoldersFromGrouping = null;
-
- user.Configuration.GroupedFolders = $(".chkGroupFolder:checked", page).get().map(function (i) {
-
- return i.getAttribute('data-folderid');
- });
-
- user.Configuration.PlainFolderViews = $(".chkPlainFolder:not(:checked)", page).get().map(function (i) {
-
- return i.getAttribute('data-folderid');
- });
-
- user.Configuration.DisplayChannelsWithinViews = $(".chkGroupChannel:checked", page).get().map(function (i) {
-
- return i.getAttribute('data-channelid');
- });
-
- user.Configuration.OrderedViews = $(".viewItem", page).get().map(function (i) {
-
- return i.getAttribute('data-viewid');
- });
+ AppSettings.syncPath($('#txtSyncPath', page).val());
ApiClient.updateUserConfiguration(user.Id, user.Configuration).done(function () {
Dashboard.alert(Globalize.translate('SettingsSaved'));
@@ -262,39 +65,17 @@
var page = this;
- $('.viewOrderList', page).on('click', '.btnViewItemMove', function () {
-
- var li = $(this).parents('.viewItem');
- var ul = li.parents('ul');
-
- if ($(this).hasClass('btnViewItemDown')) {
-
- var next = li.next();
-
- li.remove().insertAfter(next);
-
- } else {
-
- var prev = li.prev();
-
- li.remove().insertBefore(prev);
- }
-
- $('.viewItem', ul).each(function () {
-
- if ($(this).prev('.viewItem').length) {
- $('.btnViewItemMove', this).addClass('btnViewItemUp').removeClass('btnViewItemDown').attr('data-icon', 'arrow-u').removeClass('ui-icon-arrow-d').addClass('ui-icon-arrow-u');
- } else {
- $('.btnViewItemMove', this).addClass('btnViewItemDown').removeClass('btnViewItemUp').attr('data-icon', 'arrow-d').removeClass('ui-icon-arrow-u').addClass('ui-icon-arrow-d');
- }
-
- });
-
- ul.listview('destroy').listview({});
- });
-
$('.displayPreferencesForm').off('submit', onSubmit).on('submit', onSubmit);
+ $('.btnSelectSyncPath', page).on('click', function () {
+
+ require(['nativedirectorychooser'], function () {
+ NativeDirectoryChooser.chooseDirectory().done(function (path) {
+ $('#txtSyncPath', page).val(path);
+ });
+ });
+ });
+
}).on('pageshowready', "#displayPreferencesPage", function () {
var page = this;
@@ -307,7 +88,26 @@
loadForm(page, user);
+ if (user.Policy.EnableUserPreferenceAccess) {
+ $('.requiresUserPreferences', page).show();
+ } else {
+ $('.requiresUserPreferences', page).hide();
+ }
});
+
+ $('.fldEnableBackdrops', page).show();
+
+ if (AppInfo.supportsFullScreen) {
+ $('.fldFullscreen', page).show();
+ } else {
+ $('.fldFullscreen', page).hide();
+ }
+
+ if (AppInfo.supportsSyncPathSetting) {
+ $('.syncSettingsSection', page).show();
+ } else {
+ $('.syncSettingsSection', page).hide();
+ }
});
})(jQuery, window, document);
\ No newline at end of file
diff --git a/dashboard-ui/scripts/mypreferenceshome.js b/dashboard-ui/scripts/mypreferenceshome.js
new file mode 100644
index 0000000000..6ed2533dd1
--- /dev/null
+++ b/dashboard-ui/scripts/mypreferenceshome.js
@@ -0,0 +1,322 @@
+(function ($, window, document) {
+
+ function renderViews(page, user, result) {
+
+ var folderHtml = '';
+
+ folderHtml += '
';
+ folderHtml += result.Items.map(function (i) {
+
+ var currentHtml = '';
+
+ var id = 'chkGroupFolder' + i.Id;
+
+ currentHtml += '' + i.Name + ' ';
+
+ var isChecked = (user.Configuration.ExcludeFoldersFromGrouping != null && user.Configuration.ExcludeFoldersFromGrouping.indexOf(i.Id) == -1) ||
+ user.Configuration.GroupedFolders.indexOf(i.Id) != -1;
+
+ var checkedHtml = isChecked ? ' checked="checked"' : '';
+
+ currentHtml += ' ';
+
+ return currentHtml;
+
+ }).join('');
+
+ folderHtml += '
';
+
+ $('.folderGroupList', page).html(folderHtml).trigger('create');
+ }
+
+ function renderViewStyles(page, user, result) {
+
+ var folderHtml = '';
+
+ folderHtml += '
';
+ folderHtml += result.map(function (i) {
+
+ var currentHtml = '';
+
+ var id = 'chkPlainFolder' + i.Id;
+
+ currentHtml += '' + i.Name + ' ';
+
+ var isChecked = user.Configuration.PlainFolderViews.indexOf(i.Id) == -1;
+ var checkedHtml = isChecked ? ' checked="checked"' : '';
+
+ currentHtml += ' ';
+
+ return currentHtml;
+
+ }).join('');
+
+ folderHtml += '
';
+
+ $('.viewStylesList', page).html(folderHtml).trigger('create');
+
+ if (result.length) {
+ $('.viewStylesSection', page).show();
+ } else {
+ $('.viewStylesSection', page).hide();
+ }
+ }
+
+ function renderLatestItems(page, user, result) {
+
+ var folderHtml = '';
+
+ folderHtml += '
';
+ folderHtml += result.Items.map(function (i) {
+
+ var currentHtml = '';
+
+ var id = 'chkIncludeInLatest' + i.Id;
+
+ currentHtml += '' + i.Name + ' ';
+
+ var isChecked = user.Configuration.LatestItemsExcludes.indexOf(i.Id) == -1;
+ var checkedHtml = isChecked ? ' checked="checked"' : '';
+
+ currentHtml += ' ';
+
+ return currentHtml;
+
+ }).join('');
+
+ folderHtml += '
';
+
+ $('.latestItemsList', page).html(folderHtml).trigger('create');
+ }
+
+ function renderChannels(page, user, result) {
+
+ var folderHtml = '';
+
+ folderHtml += '
';
+ folderHtml += result.Items.map(function (i) {
+
+ var currentHtml = '';
+
+ var id = 'chkGroupChannel' + i.Id;
+
+ currentHtml += '' + i.Name + ' ';
+
+ var isChecked = user.Configuration.DisplayChannelsWithinViews.indexOf(i.Id) != -1;
+ var checkedHtml = isChecked ? ' checked="checked"' : '';
+
+ currentHtml += ' ';
+
+ return currentHtml;
+
+ }).join('');
+
+ folderHtml += '
';
+
+ $('.channelGroupList', page).html(folderHtml).trigger('create');
+ }
+
+ function renderViewOrder(page, user, result) {
+
+ var html = '';
+
+ html += '
';
+
+ $('.viewOrderList', page).html(html).trigger('create');
+ }
+
+ function loadForm(page, user, displayPreferences) {
+
+ $('#chkDisplayCollectionView', page).checked(user.Configuration.DisplayCollectionsView || false).checkboxradio("refresh");
+ $('#chkDisplayFolderView', page).checked(user.Configuration.DisplayFoldersView || false).checkboxradio("refresh");
+
+ $('#chkHidePlayedFromLatest', page).checked(user.Configuration.HidePlayedInLatest || false).checkboxradio("refresh");
+
+ $('#selectHomeSection1', page).val(displayPreferences.CustomPrefs.home0 || '').selectmenu("refresh");
+ $('#selectHomeSection2', page).val(displayPreferences.CustomPrefs.home1 || '').selectmenu("refresh");
+ $('#selectHomeSection3', page).val(displayPreferences.CustomPrefs.home2 || '').selectmenu("refresh");
+ $('#selectHomeSection4', page).val(displayPreferences.CustomPrefs.home3 || '').selectmenu("refresh");
+
+ $('#chkEnableLibraryTileNames', page).checked(displayPreferences.CustomPrefs.enableLibraryTileNames != '0').checkboxradio("refresh");
+
+ var promise1 = ApiClient.getItems(user.Id, {
+ sortBy: "SortName"
+ });
+ var promise2 = ApiClient.getJSON(ApiClient.getUrl("Channels", {
+ UserId: user.Id
+ }));
+ var promise3 = ApiClient.getUserViews(user.Id);
+ var promise4 = ApiClient.getJSON(ApiClient.getUrl("Users/" + user.Id + "/SpecialViewOptions"));
+
+ $.when(promise1, promise2, promise3, promise4).done(function (r1, r2, r3, r4) {
+
+ renderViews(page, user, r1[0]);
+ renderLatestItems(page, user, r1[0]);
+ renderChannels(page, user, r2[0]);
+ renderViewOrder(page, user, r3[0]);
+ renderViewStyles(page, user, r4[0]);
+
+ Dashboard.hideLoadingMsg();
+ });
+ }
+
+ function saveUser(page, user, displayPreferences) {
+
+ user.Configuration.DisplayCollectionsView = $('#chkDisplayCollectionView', page).checked();
+ user.Configuration.DisplayFoldersView = $('#chkDisplayFolderView', page).checked();
+
+ user.Configuration.HidePlayedInLatest = $('#chkHidePlayedFromLatest', page).checked();
+
+ user.Configuration.LatestItemsExcludes = $(".chkIncludeInLatest:not(:checked)", page).get().map(function (i) {
+
+ return i.getAttribute('data-folderid');
+ });
+
+ user.Configuration.ExcludeFoldersFromGrouping = null;
+
+ user.Configuration.GroupedFolders = $(".chkGroupFolder:checked", page).get().map(function (i) {
+
+ return i.getAttribute('data-folderid');
+ });
+
+ user.Configuration.PlainFolderViews = $(".chkPlainFolder:not(:checked)", page).get().map(function (i) {
+
+ return i.getAttribute('data-folderid');
+ });
+
+ user.Configuration.DisplayChannelsWithinViews = $(".chkGroupChannel:checked", page).get().map(function (i) {
+
+ return i.getAttribute('data-channelid');
+ });
+
+ user.Configuration.OrderedViews = $(".viewItem", page).get().map(function (i) {
+
+ return i.getAttribute('data-viewid');
+ });
+
+ displayPreferences.CustomPrefs.home0 = $('#selectHomeSection1', page).val();
+ displayPreferences.CustomPrefs.home1 = $('#selectHomeSection2', page).val();
+ displayPreferences.CustomPrefs.home2 = $('#selectHomeSection3', page).val();
+ displayPreferences.CustomPrefs.home3 = $('#selectHomeSection4', page).val();
+ displayPreferences.CustomPrefs.enableLibraryTileNames = $('#chkEnableLibraryTileNames', page).checked() ? '1' : '0';
+
+ ApiClient.updateDisplayPreferences('home', displayPreferences, user.Id, AppSettings.displayPreferencesKey()).done(function() {
+
+ ApiClient.updateUserConfiguration(user.Id, user.Configuration).done(function () {
+ Dashboard.alert(Globalize.translate('SettingsSaved'));
+
+ loadForm(page, user, displayPreferences);
+ });
+ });
+ }
+
+ function onSubmit() {
+
+ var page = $(this).parents('.page');
+
+ Dashboard.showLoadingMsg();
+
+ var userId = getParameterByName('userId') || Dashboard.getCurrentUserId();
+
+ ApiClient.getUser(userId).done(function (user) {
+
+ ApiClient.getDisplayPreferences('home', user.Id, AppSettings.displayPreferencesKey()).done(function (displayPreferences) {
+
+ saveUser(page, user, displayPreferences);
+
+ });
+
+ });
+
+ // Disable default form submission
+ return false;
+ }
+
+ $(document).on('pageinitdepends', "#homeScreenPreferencesPage", function () {
+
+ var page = this;
+
+ $('.viewOrderList', page).on('click', '.btnViewItemMove', function () {
+
+ var li = $(this).parents('.viewItem');
+ var ul = li.parents('ul');
+
+ if ($(this).hasClass('btnViewItemDown')) {
+
+ var next = li.next();
+
+ li.remove().insertAfter(next);
+
+ } else {
+
+ var prev = li.prev();
+
+ li.remove().insertBefore(prev);
+ }
+
+ $('.viewItem', ul).each(function () {
+
+ if ($(this).prev('.viewItem').length) {
+ $('.btnViewItemMove', this).addClass('btnViewItemUp').removeClass('btnViewItemDown').attr('data-icon', 'arrow-u').removeClass('ui-icon-arrow-d').addClass('ui-icon-arrow-u');
+ } else {
+ $('.btnViewItemMove', this).addClass('btnViewItemDown').removeClass('btnViewItemUp').attr('data-icon', 'arrow-d').removeClass('ui-icon-arrow-u').addClass('ui-icon-arrow-d');
+ }
+
+ });
+
+ ul.listview('destroy').listview({});
+ });
+
+ $('.homeScreenPreferencesForm').off('submit', onSubmit).on('submit', onSubmit);
+
+ }).on('pageshowready', "#homeScreenPreferencesPage", function () {
+
+ var page = this;
+
+ Dashboard.showLoadingMsg();
+
+ var userId = getParameterByName('userId') || Dashboard.getCurrentUserId();
+
+ ApiClient.getUser(userId).done(function (user) {
+
+ ApiClient.getDisplayPreferences('home', user.Id, AppSettings.displayPreferencesKey()).done(function (result) {
+
+ loadForm(page, user, result);
+
+ });
+ });
+ });
+
+})(jQuery, window, document);
\ No newline at end of file
diff --git a/dashboard-ui/scripts/mypreferenceslanguages.js b/dashboard-ui/scripts/mypreferenceslanguages.js
index 2e0f6d7e86..6fa0492cd8 100644
--- a/dashboard-ui/scripts/mypreferenceslanguages.js
+++ b/dashboard-ui/scripts/mypreferenceslanguages.js
@@ -31,6 +31,11 @@
$('#chkPlayDefaultAudioTrack', page).checked(user.Configuration.PlayDefaultAudioTrack || false).checkboxradio("refresh");
$('#chkEnableCinemaMode', page).checked(user.Configuration.EnableCinemaMode || false).checkboxradio("refresh");
+ $('#chkEnableChromecastAc3', page).checked(AppSettings.enableChromecastAc3()).checkboxradio("refresh");
+ $('#chkExternalVideoPlayer', page).checked(AppSettings.enableExternalPlayers()).checkboxradio("refresh");
+ $('#selectMaxBitrate', page).val(AppSettings.maxStreamingBitrate()).selectmenu("refresh");
+ $('#selectMaxChromecastBitrate', page).val(AppSettings.maxChromecastBitrate()).selectmenu("refresh");
+
Dashboard.hideLoadingMsg();
}
@@ -82,6 +87,11 @@
Dashboard.showLoadingMsg();
+ AppSettings.enableExternalPlayers($('#chkExternalVideoPlayer', page).checked());
+ AppSettings.maxStreamingBitrate($('#selectMaxBitrate', page).val());
+ AppSettings.maxChromecastBitrate($('#selectMaxChromecastBitrate', page).val());
+ AppSettings.enableChromecastAc3($('#chkEnableChromecastAc3', page).checked());
+
var userId = getParameterByName('userId') || Dashboard.getCurrentUserId();
ApiClient.getUser(userId).done(function (result) {
@@ -111,6 +121,14 @@
var page = this;
+ if (AppInfo.hasKnownExternalPlayerSupport) {
+ $('.labelNativeExternalPlayers', page).show();
+ $('.labelGenericExternalPlayers', page).hide();
+ } else {
+ $('.labelGenericExternalPlayers', page).show();
+ $('.labelNativeExternalPlayers', page).hide();
+ }
+
loadPage(page);
});
diff --git a/dashboard-ui/scripts/mypreferenceswebclient.js b/dashboard-ui/scripts/mypreferenceswebclient.js
deleted file mode 100644
index 48bade203c..0000000000
--- a/dashboard-ui/scripts/mypreferenceswebclient.js
+++ /dev/null
@@ -1,136 +0,0 @@
-(function ($, window, document) {
-
- function loadForm(page, userId, displayPreferences) {
-
- $('#selectMaxBitrate', page).val(AppSettings.maxStreamingBitrate()).selectmenu("refresh");
- $('#selectMaxChromecastBitrate', page).val(AppSettings.maxChromecastBitrate()).selectmenu("refresh");
-
- $('#chkExternalVideoPlayer', page).checked(AppSettings.enableExternalPlayers()).checkboxradio("refresh");
-
- $('#selectThemeSong', page).val(appStorage.getItem('enableThemeSongs-' + userId) || '').selectmenu("refresh");
- $('#selectBackdrop', page).val(appStorage.getItem('enableBackdrops-' + userId) || '').selectmenu("refresh");
-
- $('#selectHomeSection1', page).val(displayPreferences.CustomPrefs.home0 || '').selectmenu("refresh");
- $('#selectHomeSection2', page).val(displayPreferences.CustomPrefs.home1 || '').selectmenu("refresh");
- $('#selectHomeSection3', page).val(displayPreferences.CustomPrefs.home2 || '').selectmenu("refresh");
- $('#selectHomeSection4', page).val(displayPreferences.CustomPrefs.home3 || '').selectmenu("refresh");
-
- $('#selectEnableItemPreviews', page).val(AppSettings.enableItemPreviews().toString().toLowerCase()).selectmenu("refresh");
-
- $('#chkEnableLibraryTileNames', page).checked(displayPreferences.CustomPrefs.enableLibraryTileNames != '0').checkboxradio("refresh");
- $('#chkEnableFullScreen', page).checked(AppSettings.enableFullScreen()).checkboxradio("refresh");
-
- $('#chkEnableChromecastAc3', page).checked(AppSettings.enableChromecastAc3()).checkboxradio("refresh");
-
- $('#txtSyncPath', page).val(AppSettings.syncPath());
-
- Dashboard.hideLoadingMsg();
- }
-
- function saveUser(page, userId, displayPreferences) {
-
- appStorage.setItem('enableThemeSongs-' + userId, $('#selectThemeSong', page).val());
- appStorage.setItem('enableBackdrops-' + userId, $('#selectBackdrop', page).val());
-
- displayPreferences.CustomPrefs.home0 = $('#selectHomeSection1', page).val();
- displayPreferences.CustomPrefs.home1 = $('#selectHomeSection2', page).val();
- displayPreferences.CustomPrefs.home2 = $('#selectHomeSection3', page).val();
- displayPreferences.CustomPrefs.home3 = $('#selectHomeSection4', page).val();
- displayPreferences.CustomPrefs.enableLibraryTileNames = $('#chkEnableLibraryTileNames', page).checked() ? '1' : '0';
-
- ApiClient.updateDisplayPreferences('home', displayPreferences, userId, 'webclient').done(function () {
-
- Dashboard.alert(Globalize.translate('SettingsSaved'));
- Dashboard.hideLoadingMsg();
- });
- }
-
- function onSubmit() {
-
- var page = $(this).parents('.page');
-
- Dashboard.showLoadingMsg();
-
- AppSettings.enableExternalPlayers($('#chkExternalVideoPlayer', page).checked());
-
- AppSettings.maxStreamingBitrate($('#selectMaxBitrate', page).val());
- AppSettings.maxChromecastBitrate($('#selectMaxChromecastBitrate', page).val());
-
- AppSettings.enableItemPreviews($('#selectEnableItemPreviews', page).val() == 'true');
- AppSettings.enableFullScreen($('#chkEnableFullScreen', page).checked());
-
- AppSettings.enableChromecastAc3($('#chkEnableChromecastAc3', page).checked());
-
- AppSettings.syncPath($('#txtSyncPath', page).val());
-
- var userId = getParameterByName('userId') || Dashboard.getCurrentUserId();
-
- ApiClient.getDisplayPreferences('home', userId, 'webclient').done(function (result) {
-
- saveUser(page, userId, result);
-
- });
-
- // Disable default form submission
- return false;
- }
-
- $(document).on('pageinitdepends', "#webClientPreferencesPage", function () {
-
- var page = this;
-
- $('.webClientPreferencesForm', page).off('submit', onSubmit).on('submit', onSubmit);
-
- $('.btnSelectSyncPath', page).on('click', function () {
-
- require(['nativedirectorychooser'], function () {
- NativeDirectoryChooser.chooseDirectory().done(function (path) {
- $('#txtSyncPath', page).val(path);
- });
- });
- });
-
- }).on('pageshowready', "#webClientPreferencesPage", function () {
-
- var page = this;
-
- Dashboard.showLoadingMsg();
-
- var userId = getParameterByName('userId') || Dashboard.getCurrentUserId();
-
- ApiClient.getDisplayPreferences('home', userId, 'webclient').done(function (result) {
-
- loadForm(page, userId, result);
-
- });
-
- $('.fldEnableBackdrops', page).show();
-
- if (AppInfo.isNativeApp) {
- $('.homePageConfigurationSection', page).hide();
- } else {
- $('.homePageConfigurationSection', page).show();
- }
-
- if (AppInfo.hasKnownExternalPlayerSupport) {
- $('.labelNativeExternalPlayers', page).show();
- $('.labelGenericExternalPlayers', page).hide();
- } else {
- $('.labelGenericExternalPlayers', page).show();
- $('.labelNativeExternalPlayers', page).hide();
- }
-
- if (AppInfo.supportsFullScreen) {
- $('.fldFullscreen', page).show();
- } else {
- $('.fldFullscreen', page).hide();
- }
-
- if (AppInfo.supportsSyncPathSetting) {
- $('.fldSyncPath', page).show();
- } else {
- $('.fldSyncPath', page).hide();
- }
- });
-
-})(jQuery, window, document);
\ No newline at end of file