1 line
3.9 KiB
JavaScript
1 line
3.9 KiB
JavaScript
|
|
import BaseView from"./../modules/viewmanager/basesettingsview.js";import globalize from"./../modules/common/globalize.js";import"./../modules/emby-elements/emby-scroller/emby-scroller.js";import"./../modules/emby-elements/emby-select/emby-select.js";import"./../modules/emby-elements/emby-button/emby-button.js";import"./../modules/emby-elements/emby-button/paper-icon-button-light.js";import"./../modules/emby-elements/emby-input/emby-input.js";import"./../modules/emby-elements/emby-checkbox/emby-checkbox.js";import"./../modules/emby-elements/emby-premierecontainer/emby-premierecontainer.js";import events from"./../modules/emby-apiclient/events.js";import connectionManager from"./../modules/emby-apiclient/connectionmanager.js";import{cameraUpload}from"./../modules/common/servicelocator.js";import textEncoding from"./../modules/common/textencoding.js";function populateFolders(page,folders){page.querySelector(".uploadFolderList").innerHTML=folders.map(function(s){return'<label><input type="checkbox" is="emby-checkbox" class="chkUploadFolder" data-id="'+s.Id+'"/><span>'+textEncoding.htmlEncode(s.Name)+"</span></label>"}).join("")}function setUploadFoldersVisibility(page){page.querySelector(".chkUploadServer:checked")?page.querySelector(".fldUploadFolders").classList.remove("hide"):page.querySelector(".fldUploadFolders").classList.add("hide")}function loadForm(page){return page.querySelector(".uploadServerList").innerHTML=connectionManager.getSavedServers().map(function(s){return'<label><input type="checkbox" is="emby-checkbox" class="chkUploadServer" data-id="'+s.Id+'"/><span>'+textEncoding.htmlEncode(s.Name)+"</span></label>"}).join(""),cameraUpload.getAvailableFolders().then(function(allFolders){populateFolders(page,allFolders)})}function onUploadProgress(e,progressInfo){var numItems=progressInfo.numItems||0,numItemsComplete=progressInfo.numItemsComplete||0,progressInfo=progressInfo.totalPercentComplete||0;this.itemProgressBarForeground.style.width=progressInfo+"%",this.progressDescription.innerHTML=globalize.translate("UploadingNumItems",numItemsComplete+1,numItems),numItems&&progressInfo<100?this.progressContainer.classList.remove("hide"):this.progressContainer.classList.add("hide")}function View(view,params){BaseView.apply(this,arguments),this.progressContainer=view.querySelector(".progressContainer"),this.itemProgressBarForeground=view.querySelector(".itemProgressBarForeground"),this.progressDescription=view.querySelector(".progressDescription"),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>"),view.querySelector(".uploadServerList").addEventListener("change",function(e){return setUploadFoldersVisibility(view),e.preventDefault(),!1}),view.querySelector("form").addEventListener("submit",function(e){return e.preventDefault(),!1}),this.boundOnUploadProgress=onUploadProgress.bind(this)}Object.assign(View.prototype,BaseView.prototype),View.prototype.onResume=function(options){BaseView.prototype.onResume.apply(this,arguments),events.on(cameraUpload,"progress",this.boundOnUploadProgress),cameraUpload.setProgressUpdatesEnabled(!0),cameraUpload.start()},View.prototype.loadSettingsInternal=function(){let instance=this;return loadForm(this.view).then(function(){instance.loadAutoSettings()})},View.prototype.onPause=function(){BaseView.prototype.onPause.apply(this,arguments),this.boundOnUploadProgress&&events.off(cameraUpload,"progress",this.boundOnUploadProgress),cameraUpload.setProgressUpdatesEnabled(!1),cameraUpload.start()},View.prototype.destroy=function(){BaseView.prototype.destroy.apply(this,arguments),this.boundOnUploadProgress&&(events.off(cameraUpload,"progress",this.boundOnUploadProgress),this.boundOnUploadProgress=null),this.progressContainer=null,this.itemProgressBarForeground=null,this.progressDescription=null};export default View;
|