1 line
No EOL
2 KiB
JavaScript
1 line
No EOL
2 KiB
JavaScript
import BaseView from"./../modules/viewmanager/baseview.js";import loading from"./../modules/loading/loading.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-scroller/emby-scroller.js";import connectionManager from"./../modules/emby-apiclient/connectionmanager.js";import appRouter from"./../modules/approuter.js";function trimEnd(string,charToRemove){for(;string.charAt(string.length-1)===charToRemove;)string=string.substring(0,string.length-1);return string}function onPortChange(e){var value=(this.value||"").trim();"443"!==value&&"8920"!==value||((value=this.closest("form").querySelector(".txtServerHost")).value=value.value.replace(new RegExp("http:","gi"),"https:"))}function addPortToUrl(address,port){if(port){address=trimEnd(address,"/");try{var url=new URL(address);if(url.port)return address;url.port=port;var urlString=url.toString();if("string"==typeof urlString&&urlString&&!urlString.toLowerCase().includes("object url"))return trimEnd(urlString,"/")}catch(err){console.log("error parsing url: "+err)}address+=":"+port}return address}function View(view,params){BaseView.apply(this,arguments),view.querySelector("form").addEventListener("submit",function(e){e.preventDefault();e=addPortToUrl(this.querySelector(".txtServerHost").value,this.querySelector(".txtServerPort").value);return loading.show(),connectionManager.connectToAddress(e,{}).then(function(result){loading.hide(),appRouter.handleConnectionResult(result)}),!1}),view.querySelector(".txtServerPort").addEventListener("change",onPortChange),view.querySelector(".buttonCancel").addEventListener("click",function(e){appRouter.back()})}require(["material-icons"]),Object.assign(View.prototype,BaseView.prototype),View.prototype.onResume=function(options){BaseView.prototype.onResume.apply(this,arguments);var view=this.view;view.querySelector(".txtServerHost").value="",view.querySelector(".txtServerPort").value="8096"};export default View; |