dashboard-ui/dashboard/settings.js
2023-08-31 15:30:17 +02:00

1 line
5.3 KiB
JavaScript

define(["exports","./../modules/viewmanager/basesettingsview.js","./../modules/emby-elements/emby-select/emby-select.js","./../modules/emby-elements/emby-input/emby-input.js","./../modules/emby-elements/emby-button/emby-button.js","./../modules/emby-elements/emby-textarea/emby-textarea.js","./../modules/emby-elements/emby-checkbox/emby-checkbox.js","./../modules/loading/loading.js","./../modules/common/globalize.js","./../modules/common/servicelocator.js","./../modules/formhelper.js"],function(_exports,_basesettingsview,_embySelect,_embyInput,_embyButton,_embyTextarea,_embyCheckbox,_loading,_globalize,_servicelocator,_formhelper){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0;var currentBrandingOptions,currentLanguage,brandingConfigKey="branding";function onSubmit(e){_loading.default.show();var form=this;return ApiClient.getServerConfiguration().then(function(config){config.UICulture=form.querySelector(".selectLocalizationLanguage").value,config.CachePath=form.querySelector(".txtCachePath").value;var requiresReload=!1;config.UICulture!==currentLanguage&&(requiresReload=!0),config.RunAtStartup=form.querySelector(".chkRunAtStartup").checked,config.AutoRunWebApp=form.querySelector(".chkRunWebAppAtStartup").checked,config.EnableAutomaticRestart=form.querySelector(".chkEnableAutomaticRestart").checked,config.EnableAutoUpdate=form.querySelector(".chkEnableAutomaticServerUpdates").checked,ApiClient.updateServerConfiguration(config).then(function(){ApiClient.getNamedConfiguration(brandingConfigKey).then(function(brandingConfig){brandingConfig.LoginDisclaimer=form.querySelector(".txtLoginDisclaimer").value,brandingConfig.CustomCss=form.querySelector(".txtCustomCss").value,currentBrandingOptions&&brandingConfig.CustomCss!==currentBrandingOptions.CustomCss&&(requiresReload=!0),ApiClient.updateNamedConfiguration(brandingConfigKey,brandingConfig).then(function(){_formhelper.default.handleConfigurationSavedResponse(),requiresReload&&!_servicelocator.appHost.supports("multiserver")&&window.location.reload(!0)})})})}),e.preventDefault(),e.stopPropagation(),!1}function View(view,params){_basesettingsview.default.apply(this,arguments),view.querySelector(".btnSelectCachePath").addEventListener("click",function(){require(["directorybrowser"],function(directoryBrowser){var picker=new directoryBrowser;picker.show({callback:function(path){path&&(view.querySelector(".txtCachePath").value=path),picker.close()},validateWriteable:!0,header:_globalize.default.translate("HeaderSelectServerCachePath"),instruction:_globalize.default.translate("HeaderSelectServerCachePathHelp")})})}),view.querySelector(".dashboardGeneralForm").addEventListener("submit",onSubmit)}Object.assign(View.prototype,_basesettingsview.default.prototype),View.prototype.loadSettingsInternal=function(){var promise1=ApiClient.getServerConfiguration(),promise2=ApiClient.getJSON(ApiClient.getUrl("Localization/Options")),promise3=ApiClient.getSystemInfo(),view=this.view;return Promise.all([promise1,promise2,promise3]).then(function(responses){var page,config,languageOptions,selectLocalizationLanguage;return page=view,config=responses[0],languageOptions=responses[1],-1!==(responses=responses[2]).OperatingSystem.toLowerCase().indexOf("windows")?page.querySelector(".windowsStartupDescription").classList.remove("hide"):page.querySelector(".windowsStartupDescription").classList.add("hide"),responses.SupportsAutoRunAtStartup?page.querySelector(".fldRunAtStartup").classList.remove("hide"):page.querySelector(".fldRunAtStartup").classList.add("hide"),responses.CanLaunchWebBrowser?page.querySelector(".fldRunWebAppAtStartup").classList.remove("hide"):page.querySelector(".fldRunWebAppAtStartup").classList.add("hide"),page.querySelector(".txtCachePath").value=config.CachePath||"",(selectLocalizationLanguage=page.querySelector(".selectLocalizationLanguage")).innerHTML=languageOptions.map(function(l){return'<option value="'+l.Value+'">'+l.Name+"</option>"}),selectLocalizationLanguage.value=config.UICulture,currentLanguage=config.UICulture,page.querySelector(".chkRunAtStartup").checked=config.RunAtStartup,page.querySelector(".chkRunWebAppAtStartup").checked=config.AutoRunWebApp||!1,responses.CanSelfUpdate?(page.querySelector(".fldAutomaticUpdates").classList.remove("hide"),page.querySelector(".autoRestartLabel").innerHTML=_globalize.default.translate("LabelAllowServerAutoRestartServerOrPlugin")):(page.querySelector(".fldAutomaticUpdates").classList.add("hide"),page.querySelector(".autoRestartLabel").innerHTML=_globalize.default.translate("LabelAllowServerAutoRestartPlugin")),page.querySelector(".chkEnableAutomaticServerUpdates").checked=config.EnableAutoUpdate,page.querySelector(".chkEnableAutomaticRestart").checked=config.EnableAutomaticRestart,responses.CanSelfRestart?page.querySelector(".fldEnableAutomaticRestart").classList.remove("hide"):page.querySelector(".fldEnableAutomaticRestart").classList.add("hide"),responses.CanSelfRestart||responses.CanSelfUpdate?page.querySelector(".autoUpdatesContainer").classList.remove("hide"):page.querySelector(".autoUpdatesContainer").classList.add("hide"),_loading.default.hide(),ApiClient.getNamedConfiguration(brandingConfigKey).then(function(config){currentBrandingOptions=config,view.querySelector(".txtLoginDisclaimer").value=config.LoginDisclaimer||"",view.querySelector(".txtCustomCss").value=config.CustomCss||""})})},_exports.default=View});