EmbyCrackedClient/web/devices/cameraupload.js

1 line
2.2 KiB
JavaScript
Raw Normal View History

2025-06-25 11:46:04 +08:00
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"./../modules/emby-elements/emby-checkbox/emby-checkbox.js";import"./../modules/emby-elements/emby-premierecontainer/emby-premierecontainer.js";import formHelper from"./../modules/common/responsehelper.js";import loading from"./../modules/loading/loading.js";import globalize from"./../modules/common/globalize.js";function load(page,config){page.querySelector(".txtUploadPath").value=config.CameraUploadPath||"",page.querySelector(".chkSubfolder").checked=config.EnableCameraUploadSubfolders}function loadData(page,apiClient){return loading.show(),apiClient.getNamedConfiguration("devices").then(function(config){load(page,config),loading.hide()})}function save(page,instance){let apiClient=instance.getApiClient();apiClient.getNamedConfiguration("devices").then(function(config){config.CameraUploadPath=page.querySelector(".txtUploadPath").value,config.EnableCameraUploadSubfolders=page.querySelector(".chkSubfolder").checked,apiClient.updateNamedConfiguration("devices",config).then(formHelper.handleConfigurationSavedResponse)})}function onSubmit(e){return save(e.target.closest(".page"),this),e.stopPropagation(),e.preventDefault(),!1}function View(view,params){BaseSettingsView.apply(this,arguments),view.querySelector(".btnSelectUploadPath").addEventListener("click",function(){Emby.importModule("./modules/directorybrowser/directorybrowser.js").then(function(directoryBrowser){let picker=new directoryBrowser;picker.show({callback:function(path){path&&(view.querySelector(".txtUploadPath").value=path),picker.close()},validateWriteable:!0,header:globalize.translate("HeaderSelectUploadPath")})})}),view.querySelector(".devicesUploadForm").addEventListener("submit",onSubmit.bind(this)),view.querySelector(".premiereInfo").innerHTML=globalize.translate("FeatureRequiresEmbyPremiere",'<a href="https://emby.media/premiere" data-preset="premiereinfo" is="emby-linkbutton" type="button" class="button-link">',"</a>")}Object.assign(View.prototype,BaseSettingsView.prototype),View.prototype.loadSettingsInternal=function(){return loadData(this.view,this.getApiClient())};export default View;