1 line
1.5 KiB
JavaScript
1 line
1.5 KiB
JavaScript
|
|
import BaseSettingsView from"./../modules/viewmanager/basesettingsview.js";import"./../modules/emby-elements/emby-input/emby-input.js";import"./../modules/emby-elements/emby-button/emby-button.js";import formHelper from"./../modules/common/responsehelper.js";import loading from"./../modules/loading/loading.js";function load(page,device,deviceOptions){page.querySelector(".txtCustomName").value=deviceOptions.CustomName||"",page.querySelector(".reportedName").textContent=device.Name||""}function loadData(page,params,apiClient){loading.show();var params=params.id,promise1=apiClient.getJSON(apiClient.getUrl("Devices/Info",{Id:params})),apiClient=apiClient.getJSON(apiClient.getUrl("Devices/Options",{Id:params}));return Promise.all([promise1,apiClient]).then(function(responses){load(page,responses[0],responses[1]),loading.hide()})}function save(page,instance){var id=instance.params.id,instance=instance.getApiClient();instance.ajax({url:instance.getUrl("Devices/Options",{Id:id}),type:"POST",data:JSON.stringify({CustomName:page.querySelector(".txtCustomName").value}),contentType:"application/json"}).then(formHelper.handleConfigurationSavedResponse)}function onSubmit(e){return save(e.target.closest(".page"),this),e.preventDefault(),!1}function View(view,params){BaseSettingsView.apply(this,arguments),view.querySelector("form").addEventListener("submit",onSubmit.bind(this))}Object.assign(View.prototype,BaseSettingsView.prototype),View.prototype.loadSettingsInternal=function(){return loadData(this.view,this.params,this.getApiClient())};export default View;
|