First version of alternate style login page.
Ylian Saint-Hilaire committed
Sep 1, 2020 at 11:51 UTC
4f036292748263661f40184706363fbf4c82df02
17 files changed
+400
-118
meshcentral-config-schema.json
+1
@@ -141,6 +141,7 @@
141
"items": {
142
"type": "object",
143
"properties": {
144
+ "siteStyle": { "type": "integer", "default": 1, "description": "Valid numbers are 1 and 2, changes the style of the login page and some secondary pages." }
145
"title": { "type": "string" },
146
"title2": { "type": "string" },
147
"titlePicture": { "type": "string" },
public/images/login/2fa-mail-48.png
Binary files a/public/images/login/2fa-mail-48.png and b/public/images/login/2fa-mail-48.png differ
public/images/login/file48.png
Binary files /dev/null and b/public/images/login/file48.png differ
public/scripts/amt-wsman-0.2.0-min.js
+1
-1
@@ -1 +1 @@
1
-var WsmanStackCreateService=function(e,s,r,a,o,t){var p={};function l(e){if(!e)return"";var s=" ";for(var r in e)e.hasOwnProperty(r)&&0===r.indexOf("@")&&(s+=r.substring(1)+'="'+e[r]+'" ');return s}function w(e){if(!e)return"";if("string"==typeof e)return e;if(e.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+e.InstanceID+"</w:Selector></w:SelectorSet>";var s="<w:SelectorSet>";for(var r in e)if(e.hasOwnProperty(r)){if(s+='<w:Selector Name="'+r+'">',e[r].ReferenceParameters){s+="<a:EndpointReference>",s+="<a:Address>"+e[r].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+e[r].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var a=e[r].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(a))for(var o=0;o<a.length;o++)s+="<w:Selector"+l(a[o])+">"+a[o].Value+"</w:Selector>";else s+="<w:Selector"+l(a)+">"+a.Value+"</w:Selector>";s+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else s+=e[r];s+="</w:Selector>"}return s+="</w:SelectorSet>"}return p.NextMessageId=1,p.Address="/wsman",p.comm=CreateWsmanComm(e,s,r,a,o,t),p.PerformAjax=function(e,o,s,r,a){null==a&&(a=""),p.comm.PerformAjax('<?xml version=\"1.0\" encoding=\"utf-8\"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+a+"><Header><a:Action>"+e,function(e,s,r){if(200==s){var a=p.ParseWsman(e);a&&null!=a?o(p,a.Header.ResourceURI,a,200,r):o(p,null,{Header:{HttpError:s}},601,r)}else o(p,null,{Header:{HttpError:s}},s,r)},s,r)},p.CancelAllQueries=function(e){p.comm.CancelAllQueries(e)},p.GetNameFromUrl=function(e){var s=e.lastIndexOf("/");return-1==s?e:e.substring(s+1)},p.ExecSubscribe=function(e,s,r,a,o,t,n,l,c,d){var m="",i="";null!=c&&null!=d&&(m="<t:IssuedTokens><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>"+c+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+d+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",i='<Auth Profile="http://schemas.xmlsoap.org/ws/2004/08/eventing/DeliveryModes/secprofile/http/digest"/>'),l=null!=l&&null!=l?"<a:ReferenceParameters>"+l+"</a:ReferenceParameters>":"";var u="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+w(n)+m+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.dmtf.org/wbem/wsman/1/wsman/'+s+'"><e:NotifyTo><a:Address>'+r+"</a:Address></e:NotifyTo>"+i+"</e:Delivery><e:Expires>PT0.000000S</e:Expires></e:Subscribe>";p.PerformAjax(u+"</Body></Envelope>",a,o,t,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:m="http://x.com"')},p.ExecUnSubscribe=function(e,s,r,a,o){var t="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+w(o)+"</Header><Body><e:Unsubscribe/>";p.PerformAjax(t+"</Body></Envelope>",s,r,a,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')},p.ExecPut=function(e,s,r,a,o,t){var n="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+w(t)+"</Header><Body>"+function(e,s){if(!e||null==s)return"";var r=p.GetNameFromUrl(e),a="<r:"+r+' xmlns:r="'+e+'">';for(var o in s)if(s.hasOwnProperty(o)&&0!==o.indexOf("__")&&0!==o.indexOf("@")&&void 0!==s[o]&&null!==s[o]&&"function"!=typeof s[o])if("object"==typeof s[o]&&s[o].ReferenceParameters){a+="<r:"+o+"><a:Address>"+s[o].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+s[o].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var t=s[o].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(t))for(var n=0;n<t.length;n++)a+="<w:Selector"+l(t[n])+">"+t[n].Value+"</w:Selector>";else a+="<w:Selector"+l(t)+">"+t.Value+"</w:Selector>";a+="</w:SelectorSet></a:ReferenceParameters></r:"+o+">"}else if(Array.isArray(s[o]))for(n=0;n<s[o].length;n++)a+="<r:"+o+">"+s[o][n].toString()+"</r:"+o+">";else a+="<r:"+o+">"+s[o].toString()+"</r:"+o+">";return a+="</r:"+r+">"}(e,s);p.PerformAjax(n+"</Body></Envelope>",r,a,o)},p.ExecCreate=function(e,s,r,a,o,t){var n=p.GetNameFromUrl(e),l="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+w(t)+"</Header><Body><g:"+n+' xmlns:g="'+e+'">';for(var c in s)l+="<g:"+c+">"+s[c]+"</g:"+c+">";p.PerformAjax(l+"</g:"+n+"></Body></Envelope>",r,a,o)},p.ExecCreateXml=function(e,s,r,a,o){var t=p.GetNameFromUrl(e);p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout></Header><Body><r:"+t+' xmlns:r="'+e+'">'+s+"</r:"+t+"></Body></Envelope>",r,a,o)},p.ExecDelete=function(e,s,r,a,o){var t="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+w(s)+"</Header><Body /></Envelope>";p.PerformAjax(t,r,a,o)},p.ExecGet=function(e,s,r,a){p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",s,r,a)},p.ExecMethod=function(e,s,r,a,o,t,n){var l="";for(var c in r)if(null!=r[c])if(Array.isArray(r[c]))for(var d in r[c])l+="<r:"+c+">"+r[c][d]+"</r:"+c+">";else l+="<r:"+c+">"+r[c]+"</r:"+c+">";p.ExecMethodXml(e,s,l,a,o,t,n)},p.ExecMethodXml=function(e,s,r,a,o,t,n){p.PerformAjax(e+"/"+s+"</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+w(n)+"</Header><Body><r:"+s+'_INPUT xmlns:r="'+e+'">'+r+"</r:"+s+"_INPUT></Body></Envelope>",a,o,t)},p.ExecEnum=function(e,s,r,a){p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',s,r,a)},p.ExecPull=function(e,s,r,a,o){p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+s+"</EnumerationContext><MaxElements>999</MaxElements><MaxCharacters>99999</MaxCharacters></Pull></Body></Envelope>",r,a,o)},p.ParseWsman=function(s){try{s.childNodes||(s=function(e){{if(window.DOMParser)return(new DOMParser).parseFromString(e,"text/xml");var s=new ActiveXObject("Microsoft.XMLDOM");return s.async=!1,s.loadXML(e),s}}(s));var e,r={Header:{}},a=s.getElementsByTagName("Header")[0];if(!(a=a||s.getElementsByTagName("a:Header")[0]))return null;for(var o=0;o<a.childNodes.length;o++){var t=a.childNodes[o];r.Header[t.localName]=t.textContent}var n=s.getElementsByTagName("Body")[0];return(n=n||s.getElementsByTagName("a:Body")[0])?(0<n.childNodes.length&&((e=n.childNodes[0].localName).indexOf("_OUTPUT")==e.length-7&&(e=e.substring(0,e.length-7)),r.Header.Method=e,r.Body=function e(s){var r,a={};for(var o=0;o<s.childNodes.length;o++){var t=s.childNodes[o];"true"==(r=0==t.childElementCount?t.textContent:e(t))&&(r=!0),"false"==r&&(r=!1);var n=r;if(0<t.attributes.length){n={Value:r};for(var l=0;l<t.attributes.length;l++)n["@"+t.attributes[l].name]=t.attributes[l].value}a[t.localName]instanceof Array?a[t.localName].push(n):null==a[t.localName]?a[t.localName]=n:a[t.localName]=[a[t.localName],n]}return a}(n.childNodes[0])),r):null}catch(e){return console.log("Unable to parse XML: "+s),null}},p}
\ No newline at end of file
1
+var WsmanStackCreateService=function(e,s,r,a,o,t){var p={};function l(e){if(!e)return"";var s=" ";for(var r in e)e.hasOwnProperty(r)&&0===r.indexOf("@")&&(s+=r.substring(1)+'="'+e[r]+'" ');return s}function w(e){if(!e)return"";if("string"==typeof e)return e;if(e.InstanceID)return'<w:SelectorSet><w:Selector Name="InstanceID">'+e.InstanceID+"</w:Selector></w:SelectorSet>";var s="<w:SelectorSet>";for(var r in e)if(e.hasOwnProperty(r)){if(s+='<w:Selector Name="'+r+'">',e[r].ReferenceParameters){s+="<a:EndpointReference>",s+="<a:Address>"+e[r].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+e[r].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var a=e[r].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(a))for(var o=0;o<a.length;o++)s+="<w:Selector"+l(a[o])+">"+a[o].Value+"</w:Selector>";else s+="<w:Selector"+l(a)+">"+a.Value+"</w:Selector>";s+="</w:SelectorSet></a:ReferenceParameters></a:EndpointReference>"}else s+=e[r];s+="</w:Selector>"}return s+="</w:SelectorSet>"}return p.NextMessageId=1,p.Address="/wsman",p.comm=CreateWsmanComm(e,s,r,a,o,t),p.PerformAjax=function(e,o,s,r,a){null==a&&(a=""),p.comm.PerformAjax('<?xml version=\"1.0\" encoding=\"utf-8\"?><Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns="http://www.w3.org/2003/05/soap-envelope" '+a+"><Header><a:Action>"+e,function(e,s,r){if(200==s){var a=p.ParseWsman(e);a&&null!=a?o(p,a.Header.ResourceURI,a,200,r):o(p,null,{Header:{HttpError:s}},601,r)}else o(p,null,{Header:{HttpError:s}},s,r)},s,r)},p.CancelAllQueries=function(e){p.comm.CancelAllQueries(e)},p.GetNameFromUrl=function(e){var s=e.lastIndexOf("/");return-1==s?e:e.substring(s+1)},p.ExecSubscribe=function(e,s,r,a,o,t,n,l,d,c){var m="",i="";null!=d&&null!=c&&(m="<t:IssuedTokens><t:RequestSecurityTokenResponse><t:TokenType>http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#UsernameToken</t:TokenType><t:RequestedSecurityToken><se:UsernameToken><se:Username>"+d+'</se:Username><se:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd#PasswordText">'+c+"</se:Password></se:UsernameToken></t:RequestedSecurityToken></t:RequestSecurityTokenResponse></t:IssuedTokens>",i='<Auth Profile="http://schemas.xmlsoap.org/ws/2004/08/eventing/DeliveryModes/secprofile/http/digest"/>'),l=null!=l&&null!=l?"<a:ReferenceParameters>"+l+"</a:ReferenceParameters>":"";var u="http://schemas.xmlsoap.org/ws/2004/08/eventing/Subscribe</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+w(n)+m+'</Header><Body><e:Subscribe><e:Delivery Mode="http://schemas.dmtf.org/wbem/wsman/1/wsman/'+s+'"><e:NotifyTo><a:Address>'+r+"</a:Address></e:NotifyTo>"+i+"</e:Delivery><e:Expires>PT0.000000S</e:Expires></e:Subscribe>";p.PerformAjax(u+"</Body></Envelope>",a,o,t,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:t="http://schemas.xmlsoap.org/ws/2005/02/trust" xmlns:se="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:m="http://x.com"')},p.ExecUnSubscribe=function(e,s,r,a,o){var t="http://schemas.xmlsoap.org/ws/2004/08/eventing/Unsubscribe</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo>"+w(o)+"</Header><Body><e:Unsubscribe/>";p.PerformAjax(t+"</Body></Envelope>",s,r,a,'xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing"')},p.ExecPut=function(e,s,r,a,o,t){var n="http://schemas.xmlsoap.org/ws/2004/09/transfer/Put</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout>"+w(t)+"</Header><Body>"+function(e,s){if(!e||null==s)return"";var r=p.GetNameFromUrl(e),a="<r:"+r+' xmlns:r="'+e+'">';for(var o in s)if(s.hasOwnProperty(o)&&0!==o.indexOf("__")&&0!==o.indexOf("@")&&void 0!==s[o]&&null!==s[o]&&"function"!=typeof s[o])if("object"==typeof s[o]&&s[o].ReferenceParameters){a+="<r:"+o+"><a:Address>"+s[o].Address+"</a:Address><a:ReferenceParameters><w:ResourceURI>"+s[o].ReferenceParameters.ResourceURI+"</w:ResourceURI><w:SelectorSet>";var t=s[o].ReferenceParameters.SelectorSet.Selector;if(Array.isArray(t))for(var n=0;n<t.length;n++)a+="<w:Selector"+l(t[n])+">"+t[n].Value+"</w:Selector>";else a+="<w:Selector"+l(t)+">"+t.Value+"</w:Selector>";a+="</w:SelectorSet></a:ReferenceParameters></r:"+o+">"}else if(Array.isArray(s[o]))for(n=0;n<s[o].length;n++)a+="<r:"+o+">"+s[o][n].toString()+"</r:"+o+">";else a+="<r:"+o+">"+s[o].toString()+"</r:"+o+">";return a+="</r:"+r+">"}(e,s);p.PerformAjax(n+"</Body></Envelope>",r,a,o)},p.ExecCreate=function(e,s,r,a,o,t){var n=p.GetNameFromUrl(e),l="http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+w(t)+"</Header><Body><g:"+n+' xmlns:g="'+e+'">';for(var d in s)l+="<g:"+d+">"+s[d]+"</g:"+d+">";p.PerformAjax(l+"</g:"+n+"></Body></Envelope>",r,a,o)},p.ExecCreateXml=function(e,s,r,a,o){var t=p.GetNameFromUrl(e);p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Create</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60.000S</w:OperationTimeout></Header><Body><r:"+t+' xmlns:r="'+e+'">'+s+"</r:"+t+"></Body></Envelope>",r,a,o)},p.ExecDelete=function(e,s,r,a,o){var t="http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+w(s)+"</Header><Body /></Envelope>";p.PerformAjax(t,r,a,o)},p.ExecGet=function(e,s,r,a){p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body /></Envelope>",s,r,a)},p.ExecMethod=function(e,s,r,a,o,t,n){var l="";for(var d in r)if(null!=r[d])if(Array.isArray(r[d]))for(var c in r[d])l+="<r:"+d+">"+r[d][c]+"</r:"+d+">";else l+="<r:"+d+">"+r[d]+"</r:"+d+">";p.ExecMethodXml(e,s,l,a,o,t,n)},p.ExecMethodXml=function(e,s,r,a,o,t,n){p.PerformAjax(e+"/"+s+"</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++"</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout>"+w(n)+"</Header><Body><r:"+s+'_INPUT xmlns:r="'+e+'">'+r+"</r:"+s+"_INPUT></Body></Envelope>",a,o,t)},p.ExecEnum=function(e,s,r,a){p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Enumerate</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Enumerate xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration" /></Body></Envelope>',s,r,a)},p.ExecPull=function(e,s,r,a,o){p.PerformAjax("http://schemas.xmlsoap.org/ws/2004/09/enumeration/Pull</a:Action><a:To>"+p.Address+"</a:To><w:ResourceURI>"+e+"</w:ResourceURI><a:MessageID>"+p.NextMessageId+++'</a:MessageID><a:ReplyTo><a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address></a:ReplyTo><w:OperationTimeout>PT60S</w:OperationTimeout></Header><Body><Pull xmlns="http://schemas.xmlsoap.org/ws/2004/09/enumeration"><EnumerationContext>'+s+"</EnumerationContext><MaxElements>999</MaxElements><MaxCharacters>99999</MaxCharacters></Pull></Body></Envelope>",r,a,o)},p.ParseWsman=function(s){try{s.childNodes||(s=function(e){{if(window.DOMParser)return(new DOMParser).parseFromString(e,"text/xml");var s=new ActiveXObject("Microsoft.XMLDOM");return s.async=!1,s.loadXML(e),s}}(s));var e,r={Header:{}},a=s.getElementsByTagName("Header")[0];if(!(a=a||s.getElementsByTagName("a:Header")[0]))return null;for(var o=0;o<a.childNodes.length;o++){var t=a.childNodes[o];r.Header[t.localName]=t.textContent}var n=s.getElementsByTagName("Body")[0];return(n=n||s.getElementsByTagName("a:Body")[0])?(0<n.childNodes.length&&((e=n.childNodes[0].localName).indexOf("_OUTPUT")==e.length-7&&(e=e.substring(0,e.length-7)),r.Header.Method=e,r.Body=function e(s){var r,a={};for(var o=0;o<s.childNodes.length;o++){var t=s.childNodes[o];"true"==(r=0==t.childElementCount?t.textContent:e(t))&&(r=!0),"false"==r&&(r=!1);var n=r;if(0<t.attributes.length){n={Value:r};for(var l=0;l<t.attributes.length;l++)n["@"+t.attributes[l].name]=t.attributes[l].value}a[t.localName]instanceof Array?a[t.localName].push(n):null==a[t.localName]?a[t.localName]=n:a[t.localName]=[a[t.localName],n]}return a}(n.childNodes[0])),r):null}catch(e){return console.log("Unable to parse XML: "+s),null}},p}
\ No newline at end of file
sample-config-advanced.json
+1
@@ -114,6 +114,7 @@
114
},
115
"_domains": {
116
"": {
117
+ "_siteStyle": 2,
118
"title": "MyServer",
119
"title2": "Servername",
120
"_titlePicture": "title-sample.png",
translate/translate.js
+2
@@ -23,9 +23,11 @@ var meshCentralSourceFiles = [
23
"../views/default.handlebars",
24
"../views/default-mobile.handlebars",
25
"../views/download.handlebars",
26
+ "../views/download2.handlebars",
27
"../views/error404.handlebars",
28
"../views/error404-mobile.handlebars",
29
"../views/login.handlebars",
30
+ "../views/login2.handlebars",
31
"../views/login-mobile.handlebars",
32
"../views/terms.handlebars",
33
"../views/terms-mobile.handlebars",
translate/translate.json
+199
-73
@@ -727,6 +727,8 @@
727
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->resetAccountDiv",
728
"login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->newAccountDiv",
729
"login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv",
730
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->newAccountDiv",
731
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv",
732
"terms-mobile.handlebars->container->page_content->column_l->75->1",
733
"terms.handlebars->container->column_l->75->1"
734
]
@@ -830,7 +832,9 @@
832
"xloc": [
833
"default-mobile.handlebars->9->118",
834
"default-mobile.handlebars->9->453",
833
- "default.handlebars->27->1531"
835
+ "default.handlebars->27->1531",
836
+ "download.handlebars->3->1",
837
+ "download2.handlebars->5->1"
838
]
839
},
840
{
@@ -2319,7 +2323,8 @@
2323
"zh-cht": "拒絕訪問。",
2324
"xloc": [
2325
"login-mobile.handlebars->5->16",
2322
- "login.handlebars->5->16"
2326
+ "login.handlebars->5->16",
2327
+ "login2.handlebars->7->16"
2328
]
2329
},
2330
{
@@ -2380,7 +2385,8 @@
2385
"zh-cht": "賬戶創建",
2386
"xloc": [
2387
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->5->1",
2383
- "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->5->1"
2388
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->5->1",
2389
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->5->1"
2390
]
2391
},
2392
{
@@ -2401,7 +2407,8 @@
2407
"zh-cht": "賬戶重置",
2408
"xloc": [
2409
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resetpanel->1->5->1",
2404
- "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->5->1"
2410
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->5->1",
2411
+ "login2.handlebars->centralTable->1->0->logincell->resetpanel->1->5->1"
2412
]
2413
},
2414
{
@@ -2506,7 +2513,8 @@
2513
"zh-cht": "達到帳戶限制。",
2514
"xloc": [
2515
"login-mobile.handlebars->5->6",
2509
- "login.handlebars->5->6"
2516
+ "login.handlebars->5->6",
2517
+ "login2.handlebars->7->6"
2518
]
2519
},
2520
{
@@ -2527,7 +2535,8 @@
2535
"zh-cht": "帳戶被鎖定。",
2536
"xloc": [
2537
"login-mobile.handlebars->5->15",
2530
- "login.handlebars->5->15"
2538
+ "login.handlebars->5->15",
2539
+ "login2.handlebars->7->15"
2540
]
2541
},
2542
{
@@ -2548,7 +2557,8 @@
2557
"zh-cht": "找不到帳戶。",
2558
"xloc": [
2559
"login-mobile.handlebars->5->12",
2551
- "login.handlebars->5->12"
2560
+ "login.handlebars->5->12",
2561
+ "login2.handlebars->7->12"
2562
]
2563
},
2564
{
@@ -5263,7 +5273,13 @@
5273
"login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->10",
5274
"login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->10",
5275
"login.handlebars->container->column_l->centralTable->1->0->logincell->resettokenpanel->1->8",
5266
- "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->10"
5276
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->10",
5277
+ "login2.handlebars->centralTable->1->0->logincell->checkemailpanel->1->8",
5278
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->12",
5279
+ "login2.handlebars->centralTable->1->0->logincell->resetpanel->1->10",
5280
+ "login2.handlebars->centralTable->1->0->logincell->resetpasswordpanel->1->10",
5281
+ "login2.handlebars->centralTable->1->0->logincell->resettokenpanel->1->8",
5282
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->1->10"
5283
]
5284
},
5285
{
@@ -5948,6 +5964,7 @@
5964
"desktop.handlebars->p11->dialog->idx_dlgButtonBar",
5965
"login-mobile.handlebars->dialog->idx_dlgButtonBar",
5966
"login.handlebars->dialog->idx_dlgButtonBar",
5967
+ "login2.handlebars->dialog->idx_dlgButtonBar",
5968
"player.handlebars->p11->dialog->idx_dlgButtonBar",
5969
"xterm.handlebars->p11->dialog->idx_dlgButtonBar"
5970
]
@@ -6066,7 +6083,8 @@
6083
"zh-cht": "更改電子郵件地址",
6084
"xloc": [
6085
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->checkemailpanel->1->checkCheckOperations->1->2->1->1",
6069
- "login.handlebars->container->column_l->centralTable->1->0->logincell->checkemailpanel->1->checkCheckOperations->1->2->1->1"
6086
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->checkemailpanel->1->checkCheckOperations->1->2->1->1",
6087
+ "login2.handlebars->centralTable->1->0->logincell->checkemailpanel->1->checkCheckOperations->1->2->1->1"
6088
]
6089
},
6090
{
@@ -8532,7 +8550,8 @@
8550
"xloc": [
8551
"default.handlebars->27->1658",
8552
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->12->1->1",
8535
- "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->12->1->1"
8553
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->12->1->1",
8554
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1->12->1->1"
8555
]
8556
},
8557
{
@@ -8665,7 +8684,8 @@
8684
"zh-cht": "創建一個",
8685
"xloc": [
8686
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->newAccountDiv->1",
8668
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->newAccountDiv->1"
8687
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->newAccountDiv->1",
8688
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->newAccountDiv->1"
8689
]
8690
},
8691
{
@@ -8728,7 +8748,8 @@
8748
"zh-cht": "創建令牌:",
8749
"xloc": [
8750
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->newAccountPass->1",
8731
- "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->newAccountPass->nuToken"
8751
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->newAccountPass->nuToken",
8752
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1->newAccountPass->nuToken"
8753
]
8754
},
8755
{
@@ -10857,7 +10878,8 @@
10878
"zh-cht": "還沒有帳號?",
10879
"xloc": [
10880
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->newAccountDiv",
10860
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->newAccountDiv"
10881
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->newAccountDiv",
10882
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->newAccountDiv"
10883
]
10884
},
10885
{
@@ -12101,7 +12123,11 @@
12123
"login-mobile.handlebars->5->42",
12124
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->3",
12125
"login.handlebars->5->43",
12104
- "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3"
12126
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3",
12127
+ "login2.handlebars->7->43",
12128
+ "login2.handlebars->centralTable->1->0->logincell->resetpanel->1->7->1->0->1",
12129
+ "login2.handlebars->centralTable->1->0->logincell->resetpanel->1->7->1->0->1",
12130
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->1->7->1->2farow->1->3"
12131
]
12132
},
12133
{
@@ -12160,7 +12186,8 @@
12186
"zh-cht": "郵件確認",
12187
"xloc": [
12188
"login-mobile.handlebars->5->43",
12163
- "login.handlebars->5->44"
12189
+ "login.handlebars->5->44",
12190
+ "login2.handlebars->7->44"
12191
]
12192
},
12193
{
@@ -12315,7 +12342,8 @@
12342
"zh-cht": "郵件已發送。",
12343
"xloc": [
12344
"login-mobile.handlebars->5->2",
12318
- "login.handlebars->5->2"
12345
+ "login.handlebars->5->2",
12346
+ "login2.handlebars->7->2"
12347
]
12348
},
12349
{
@@ -12332,7 +12360,8 @@
12360
"zh-cht": "需要通過電子郵件驗證,請檢查您的郵箱,然後單擊確認鏈接。",
12361
"xloc": [
12362
"login-mobile.handlebars->5->3",
12335
- "login.handlebars->5->3"
12363
+ "login.handlebars->5->3",
12364
+ "login2.handlebars->7->3"
12365
]
12366
},
12367
{
@@ -12385,7 +12414,9 @@
12414
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resetpanel->1->7->1->0->1",
12415
"login.handlebars->5->21",
12416
"login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->2->nuEmail",
12388
- "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->7->1->0->1"
12417
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->7->1->0->1",
12418
+ "login2.handlebars->7->21",
12419
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1->2->nuEmail"
12420
]
12421
},
12422
{
@@ -12874,7 +12905,8 @@
12905
"zh-cht": "輸入帳戶創建令牌",
12906
"xloc": [
12907
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1",
12877
- "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1"
12908
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1",
12909
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1"
12910
]
12911
},
12912
{
@@ -13094,7 +13126,8 @@
13126
"zh-cht": "使用此電子郵件地址的現有帳戶。",
13127
"xloc": [
13128
"login-mobile.handlebars->5->7",
13097
- "login.handlebars->5->7"
13129
+ "login.handlebars->5->7",
13130
+ "login2.handlebars->7->7"
13131
]
13132
},
13133
{
@@ -13374,6 +13407,12 @@
13407
"default.handlebars->27->1081"
13408
]
13409
},
13410
+ {
13411
+ "en": "File",
13412
+ "xloc": [
13413
+ "download2.handlebars->centralTable->1->0->1->filetable->1->0->1->fileimagelink"
13414
+ ]
13415
+ },
13416
{
13417
"cs": "Editor souborů",
13418
"de": "Datei-Editor",
@@ -13740,7 +13779,8 @@
13779
"zh-cht": "忘記密碼?",
13780
"xloc": [
13781
"login-mobile.handlebars->5->22",
13743
- "login.handlebars->5->22"
13782
+ "login.handlebars->5->22",
13783
+ "login2.handlebars->7->22"
13784
]
13785
},
13786
{
@@ -13780,7 +13820,8 @@
13820
"zh-chs": "忘記用戶名/密碼了嗎?",
13821
"zh-cht": "忘記用戶名/密碼了嗎?",
13822
"xloc": [
13783
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv->resetAccountSpan"
13823
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv->resetAccountSpan",
13824
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv->resetAccountSpan"
13825
]
13826
},
13827
{
@@ -14621,7 +14662,9 @@
14662
"login-mobile.handlebars->5->29",
14663
"login-mobile.handlebars->5->33",
14664
"login.handlebars->5->29",
14624
- "login.handlebars->5->33"
14665
+ "login.handlebars->5->33",
14666
+ "login2.handlebars->7->29",
14667
+ "login2.handlebars->7->33"
14668
]
14669
},
14670
{
@@ -15394,7 +15437,8 @@
15437
"zh-cht": "IP位址已封鎖,請稍後再試。",
15438
"xloc": [
15439
"login-mobile.handlebars->5->19",
15397
- "login.handlebars->5->19"
15440
+ "login.handlebars->5->19",
15441
+ "login2.handlebars->7->19"
15442
]
15443
},
15444
{
@@ -15660,7 +15704,8 @@
15704
"zh-cht": "如果有效,請重置已發送的郵件。",
15705
"xloc": [
15706
"login-mobile.handlebars->5->1",
15663
- "login.handlebars->5->1"
15707
+ "login.handlebars->5->1",
15708
+ "login2.handlebars->7->1"
15709
]
15710
},
15711
{
@@ -17013,7 +17058,8 @@
17058
"zh-cht": "無效的帳戶創建令牌。",
17059
"xloc": [
17060
"login-mobile.handlebars->5->8",
17016
- "login.handlebars->5->8"
17061
+ "login.handlebars->5->8",
17062
+ "login2.handlebars->7->8"
17063
]
17064
},
17065
{
@@ -17034,7 +17080,15 @@
17080
"zh-cht": "不合規電郵。",
17081
"xloc": [
17082
"login-mobile.handlebars->5->11",
17037
- "login.handlebars->5->11"
17083
+ "login.handlebars->5->11",
17084
+ "login2.handlebars->7->11"
17085
+ ]
17086
+ },
17087
+ {
17088
+ "en": "Invalid file link",
17089
+ "xloc": [
17090
+ "download.handlebars->3->3",
17091
+ "download2.handlebars->5->3"
17092
]
17093
},
17094
{
@@ -17075,7 +17129,8 @@
17129
"zh-cht": "令牌無效,請重試。",
17130
"xloc": [
17131
"login-mobile.handlebars->5->13",
17078
- "login.handlebars->5->13"
17132
+ "login.handlebars->5->13",
17133
+ "login2.handlebars->7->13"
17134
]
17135
},
17136
{
@@ -19130,7 +19185,9 @@
19185
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->5->1",
19186
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->7->1->4->3",
19187
"login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->5->1",
19133
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->7->1->4->3"
19188
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->7->1->4->3",
19189
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->5->1->6->1",
19190
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->1->7->1->2->1->1"
19191
]
19192
},
19193
{
@@ -19144,7 +19201,8 @@
19201
"zh-cht": "使用現有帳戶登錄",
19202
"xloc": [
19203
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->3",
19147
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->3"
19204
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->3",
19205
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->3"
19206
]
19207
},
19208
{
@@ -19186,7 +19244,8 @@
19244
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resettokenpanel->1->5->1->2->1->1",
19245
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->1",
19246
"login.handlebars->container->column_l->centralTable->1->0->logincell->resettokenpanel->1->5->1->2->1->1",
19189
- "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->1"
19247
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->1",
19248
+ "login2.handlebars->centralTable->1->0->logincell->resettokenpanel->1->5->1->2->1->1"
19249
]
19250
},
19251
{
@@ -19243,7 +19302,8 @@
19302
"zh-cht": "登錄失敗,請檢查用戶名和密碼。",
19303
"xloc": [
19304
"login-mobile.handlebars->5->17",
19246
- "login.handlebars->5->17"
19305
+ "login.handlebars->5->17",
19306
+ "login2.handlebars->7->17"
19307
]
19308
},
19309
{
@@ -19265,7 +19325,8 @@
19325
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resettokenpanel->1->5->1->0->1",
19326
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->0->1",
19327
"login.handlebars->container->column_l->centralTable->1->0->logincell->resettokenpanel->1->5->1->0->1",
19268
- "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->0->1"
19328
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->0->1",
19329
+ "login2.handlebars->centralTable->1->0->logincell->resettokenpanel->1->5->1->0->1"
19330
]
19331
},
19332
{
@@ -20204,7 +20265,8 @@
20265
"zh-cht": "最大長度為{0}",
20266
"xloc": [
20267
"login-mobile.handlebars->5->37",
20207
- "login.handlebars->5->37"
20268
+ "login.handlebars->5->37",
20269
+ "login2.handlebars->7->37"
20270
]
20271
},
20272
{
@@ -20976,7 +21038,8 @@
21038
"zh-cht": "最小長度為{0}",
21039
"xloc": [
21040
"login-mobile.handlebars->5->36",
20979
- "login.handlebars->5->36"
21041
+ "login.handlebars->5->36",
21042
+ "login2.handlebars->7->36"
21043
]
21044
},
21045
{
@@ -23215,6 +23278,7 @@
23278
"desktop.handlebars->p11->dialog->idx_dlgButtonBar",
23279
"login-mobile.handlebars->dialog->idx_dlgButtonBar",
23280
"login.handlebars->dialog->idx_dlgButtonBar",
23281
+ "login2.handlebars->dialog->idx_dlgButtonBar",
23282
"player.handlebars->p11->dialog->idx_dlgButtonBar",
23283
"xterm.handlebars->p11->dialog->idx_dlgButtonBar"
23284
]
@@ -23913,6 +23977,8 @@
23977
"default.handlebars->27->289",
23978
"default.handlebars->27->320",
23979
"default.handlebars->27->741",
23980
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->5->1->2->1",
23981
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->5->1->2->1",
23982
"mstsc.handlebars->main->1->3->1->6->1->0",
23983
"mstsc.handlebars->main->1->3->1->6->3"
23984
]
@@ -23935,7 +24001,9 @@
24001
"zh-cht": "密碼提示",
24002
"xloc": [
24003
"login-mobile.handlebars->5->27",
23938
- "login.handlebars->5->27"
24004
+ "login.handlebars->5->27",
24005
+ "login2.handlebars->7->27",
24006
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->5->1->4->1"
24007
]
24008
},
24009
{
@@ -23957,7 +24025,9 @@
24025
"xloc": [
24026
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resetpasswordpanel->1->7->1->resetpasswordpanelHint->rnuHint",
24027
"login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->createPanelHint->nuHint",
23960
- "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->resetpasswordpanelHint->rnuHint"
24028
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->resetpasswordpanelHint->rnuHint",
24029
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1->createPanelHint->nuHint",
24030
+ "login2.handlebars->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->resetpasswordpanelHint->rnuHint"
24031
]
24032
},
24033
{
@@ -23981,7 +24051,10 @@
24051
"login-mobile.handlebars->5->35",
24052
"login.handlebars->5->31",
24053
"login.handlebars->5->35",
23984
- "login.handlebars->5->42"
24054
+ "login.handlebars->5->42",
24055
+ "login2.handlebars->7->31",
24056
+ "login2.handlebars->7->35",
24057
+ "login2.handlebars->7->42"
24058
]
24059
},
24060
{
@@ -24002,7 +24075,8 @@
24075
"zh-cht": "要求更改密碼。",
24076
"xloc": [
24077
"login-mobile.handlebars->5->18",
24005
- "login.handlebars->5->18"
24078
+ "login.handlebars->5->18",
24079
+ "login2.handlebars->7->18"
24080
]
24081
},
24082
{
@@ -24100,7 +24174,8 @@
24174
"zh-cht": "密碼被拒絕,請使用其他密碼。",
24175
"xloc": [
24176
"login-mobile.handlebars->5->10",
24103
- "login.handlebars->5->10"
24177
+ "login.handlebars->5->10",
24178
+ "login2.handlebars->7->10"
24179
]
24180
},
24181
{
@@ -24155,7 +24230,11 @@
24230
"login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->6->nuPass2",
24231
"login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->7->1->2->1",
24232
"login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->0->rnuPass1",
24158
- "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->2->rnuPass2"
24233
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->2->rnuPass2",
24234
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1->4->nuPass1",
24235
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1->6->nuPass2",
24236
+ "login2.handlebars->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->0->rnuPass1",
24237
+ "login2.handlebars->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->2->rnuPass2"
24238
]
24239
},
24240
{
@@ -25898,7 +25977,8 @@
25977
"zh-cht": "記住此設備{0}天。",
25978
"xloc": [
25979
"login-mobile.handlebars->5->20",
25901
- "login.handlebars->5->20"
25980
+ "login.handlebars->5->20",
25981
+ "login2.handlebars->7->20"
25982
]
25983
},
25984
{
@@ -26729,7 +26809,8 @@
26809
"zh-cht": "重發確認郵件",
26810
"xloc": [
26811
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->checkemailpanel->1->checkCheckOperations->1->2->1->1",
26732
- "login.handlebars->container->column_l->centralTable->1->0->logincell->checkemailpanel->1->checkCheckOperations->1->2->1->1"
26812
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->checkemailpanel->1->checkCheckOperations->1->2->1->1",
26813
+ "login2.handlebars->centralTable->1->0->logincell->checkemailpanel->1->checkCheckOperations->1->2->1->1"
26814
]
26815
},
26816
{
@@ -26772,7 +26853,8 @@
26853
"zh-cht": "重設帳戶",
26854
"xloc": [
26855
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resetpanel->1->7->1->2->1->1",
26775
- "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->7->1->2->1->1"
26856
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->7->1->2->1->1",
26857
+ "login2.handlebars->centralTable->1->0->logincell->resetpanel->1->7->1->2->1"
26858
]
26859
},
26860
{
@@ -26793,7 +26875,8 @@
26875
"zh-cht": "重設密碼",
26876
"xloc": [
26877
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resetpasswordpanel->1->7->1->6->1->1",
26796
- "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->6->1->1"
26878
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->6->1->1",
26879
+ "login2.handlebars->centralTable->1->0->logincell->resetpasswordpanel->1->7->1->6->1->1"
26880
]
26881
},
26882
{
@@ -26814,7 +26897,8 @@
26897
"zh-cht": "重設帳戶",
26898
"xloc": [
26899
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->resetAccountDiv->3",
26817
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv->3"
26900
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv->3",
26901
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->resetAccountDiv->3"
26902
]
26903
},
26904
{
@@ -27280,7 +27364,8 @@
27364
"default.handlebars->27->1798",
27365
"default.handlebars->27->1803",
27366
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->3",
27283
- "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3"
27367
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3",
27368
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->1->7->1->2farow->1->3"
27369
]
27370
},
27371
{
@@ -27312,7 +27397,8 @@
27397
"zh-cht": "短信已發送。",
27398
"xloc": [
27399
"login-mobile.handlebars->5->4",
27315
- "login.handlebars->5->4"
27400
+ "login.handlebars->5->4",
27401
+ "login2.handlebars->7->4"
27402
]
27403
},
27404
{
@@ -27754,7 +27840,9 @@
27840
"login-mobile.handlebars->5->23",
27841
"login-mobile.handlebars->5->25",
27842
"login.handlebars->5->23",
27757
- "login.handlebars->5->25"
27843
+ "login.handlebars->5->25",
27844
+ "login2.handlebars->7->23",
27845
+ "login2.handlebars->7->25"
27846
]
27847
},
27848
{
@@ -28310,7 +28398,8 @@
28398
"zh-cht": "將令牌發送到註冊的電子郵件地址?",
28399
"xloc": [
28400
"login-mobile.handlebars->5->24",
28313
- "login.handlebars->5->24"
28401
+ "login.handlebars->5->24",
28402
+ "login2.handlebars->7->24"
28403
]
28404
},
28405
{
@@ -28326,7 +28415,8 @@
28415
"zh-cht": "將令牌發送到註冊電話號碼?",
28416
"xloc": [
28417
"login-mobile.handlebars->5->26",
28329
- "login.handlebars->5->26"
28418
+ "login.handlebars->5->26",
28419
+ "login2.handlebars->7->26"
28420
]
28421
},
28422
{
@@ -29203,7 +29293,8 @@
29293
"zh-cht": "顯示提示",
29294
"xloc": [
29295
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->7->1->4->1->showPassHintLink->0",
29206
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->7->1->4->1->showPassHintLink->0"
29296
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->7->1->4->1->showPassHintLink->0",
29297
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->5->1->4->1->showPassHintLink->0"
29298
]
29299
},
29300
{
@@ -29408,7 +29499,8 @@
29499
"zh-cht": "使用Azure登錄",
29500
"xloc": [
29501
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-azure",
29411
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-azure"
29502
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-azure",
29503
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-azure"
29504
]
29505
},
29506
{
@@ -29422,7 +29514,8 @@
29514
"zh-cht": "使用GitHub登錄",
29515
"xloc": [
29516
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-github",
29425
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-github"
29517
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-github",
29518
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-github"
29519
]
29520
},
29521
{
@@ -29436,7 +29529,8 @@
29529
"zh-cht": "使用Google登錄",
29530
"xloc": [
29531
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-google",
29439
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-google"
29532
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-google",
29533
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-google"
29534
]
29535
},
29536
{
@@ -29450,7 +29544,8 @@
29544
"zh-cht": "使用英特爾登錄",
29545
"xloc": [
29546
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-intel",
29453
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-intel"
29547
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-intel",
29548
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-intel"
29549
]
29550
},
29551
{
@@ -29464,7 +29559,8 @@
29559
"zh-cht": "使用JumpCloud登錄",
29560
"xloc": [
29561
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-jumpcloud",
29467
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-jumpcloud"
29562
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-jumpcloud",
29563
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-jumpcloud"
29564
]
29565
},
29566
{
@@ -29478,7 +29574,8 @@
29574
"zh-cht": "使用Reddit登錄",
29575
"xloc": [
29576
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-reddit",
29481
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-reddit"
29577
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-reddit",
29578
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-reddit"
29579
]
29580
},
29581
{
@@ -29492,7 +29589,8 @@
29589
"zh-cht": "使用Twitter登錄",
29590
"xloc": [
29591
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-twitter",
29495
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-twitter"
29592
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-twitter",
29593
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-twitter"
29594
]
29595
},
29596
{
@@ -29587,7 +29685,8 @@
29685
"zh-cht": "單一登入",
29686
"xloc": [
29687
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->authStrategies->auth-saml",
29590
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-saml"
29688
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-saml",
29689
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->authStrategies->auth-saml"
29690
]
29691
},
29692
{
@@ -30790,7 +30889,9 @@
30889
"login-mobile.handlebars->5->28",
30890
"login-mobile.handlebars->5->32",
30891
"login.handlebars->5->28",
30793
- "login.handlebars->5->32"
30892
+ "login.handlebars->5->32",
30893
+ "login2.handlebars->7->28",
30894
+ "login2.handlebars->7->32"
30895
]
30896
},
30897
{
@@ -31380,8 +31481,10 @@
31481
"xloc": [
31482
"default.handlebars->container->footer->3->termsLinkFooter",
31483
"download.handlebars->container->page_content->footer->1->1->0->3->1",
31484
+ "download2.handlebars->centralTable->1->2->1->1->flink->1",
31485
"login-mobile.handlebars->container->footer->1->1->0->3->1",
31486
"login.handlebars->container->footer->3->termsLinkFooter",
31487
+ "login2.handlebars->centralTable->1->2->1->1->flink->1",
31488
"message.handlebars->container->page_content->footer->1->1->0->3->1"
31489
]
31490
},
@@ -32368,6 +32471,13 @@
32471
"default.handlebars->container->column_l->p12->termTable->1->1->6->1->1->terminalSettingsButtons"
32472
]
32473
},
32474
+ {
32475
+ "en": "Token",
32476
+ "xloc": [
32477
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->1->7->1->0->1",
32478
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->1->7->1->0->1"
32479
+ ]
32480
+ },
32481
{
32482
"cs": "Nástroje",
32483
"de": "Werkzeuge",
@@ -32844,7 +32954,8 @@
32954
"zh-cht": "無法創建帳戶。",
32955
"xloc": [
32956
"login-mobile.handlebars->5->5",
32847
- "login.handlebars->5->5"
32957
+ "login.handlebars->5->5",
32958
+ "login2.handlebars->7->5"
32959
]
32960
},
32961
{
@@ -32903,7 +33014,8 @@
33014
"zh-cht": "無法發送電子郵件。",
33015
"xloc": [
33016
"login-mobile.handlebars->5->14",
32906
- "login.handlebars->5->14"
33017
+ "login.handlebars->5->14",
33018
+ "login2.handlebars->7->14"
33019
]
33020
},
33021
{
@@ -33515,7 +33627,8 @@
33627
"zh-cht": "使用安全密鑰",
33628
"xloc": [
33629
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->3",
33518
- "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3"
33630
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3",
33631
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->1->7->1->2farow->1->3"
33632
]
33633
},
33634
{
@@ -34075,6 +34188,8 @@
34188
"default.handlebars->27->287",
34189
"default.handlebars->27->319",
34190
"default.handlebars->27->740",
34191
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->5->1->0->1",
34192
+ "login2.handlebars->centralTable->1->0->logincell->loginpanel->1->5->1->0->1",
34193
"mstsc.handlebars->main->1->3->1->4->1->0",
34194
"mstsc.handlebars->main->1->3->1->4->3",
34195
"player.handlebars->3->4"
@@ -34098,7 +34213,8 @@
34213
"zh-cht": "此用戶名已存在。",
34214
"xloc": [
34215
"login-mobile.handlebars->5->9",
34101
- "login.handlebars->5->9"
34216
+ "login.handlebars->5->9",
34217
+ "login2.handlebars->7->9"
34218
]
34219
},
34220
{
@@ -34122,7 +34238,8 @@
34238
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->nuUserRow->1",
34239
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->loginpanel->1->7->1->0->loginusername",
34240
"login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->nuUserRow->nuUser",
34125
- "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->7->1->0->loginusername"
34241
+ "login.handlebars->container->column_l->centralTable->1->0->logincell->loginpanel->1->7->1->0->loginusername",
34242
+ "login2.handlebars->centralTable->1->0->logincell->createpanel->1->9->1->nuUserRow->nuUser"
34243
]
34244
},
34245
{
@@ -34770,7 +34887,9 @@
34887
"login-mobile.handlebars->5->30",
34888
"login-mobile.handlebars->5->34",
34889
"login.handlebars->5->30",
34773
- "login.handlebars->5->34"
34890
+ "login.handlebars->5->34",
34891
+ "login2.handlebars->7->30",
34892
+ "login2.handlebars->7->34"
34893
]
34894
},
34895
{
@@ -35605,7 +35724,8 @@
35724
"default-mobile.handlebars->dialog->1->id_dialogclose->0",
35725
"default.handlebars->container->column_l->p1->xdevicesmap->xmapSearchResultsDlg->xmapSearchResultsBck->xmapSearchClose->0",
35726
"login-mobile.handlebars->dialog->1->id_dialogclose->0",
35608
- "login.handlebars->dialog->dialogHeader->id_dialogclose->0"
35727
+ "login.handlebars->dialog->dialogHeader->id_dialogclose->0",
35728
+ "login2.handlebars->dialog->dialogHeader->id_dialogclose->0"
35729
]
35730
},
35731
{
@@ -37471,7 +37591,9 @@
37591
"xloc": [
37592
"default-mobile.handlebars->9->119",
37593
"default.handlebars->27->1532",
37474
- "default.handlebars->27->1891"
37594
+ "default.handlebars->27->1891",
37595
+ "download.handlebars->3->2",
37596
+ "download2.handlebars->5->2"
37597
]
37598
},
37599
{
@@ -37623,7 +37745,8 @@
37745
"zh-cht": "{0}小寫",
37746
"xloc": [
37747
"login-mobile.handlebars->5->39",
37626
- "login.handlebars->5->39"
37748
+ "login.handlebars->5->39",
37749
+ "login2.handlebars->7->39"
37750
]
37751
},
37752
{
@@ -37723,7 +37846,8 @@
37846
"zh-cht": "{0}非字母數字",
37847
"xloc": [
37848
"login-mobile.handlebars->5->41",
37726
- "login.handlebars->5->41"
37849
+ "login.handlebars->5->41",
37850
+ "login2.handlebars->7->41"
37851
]
37852
},
37853
{
@@ -37744,7 +37868,8 @@
37868
"zh-cht": "{0}數字",
37869
"xloc": [
37870
"login-mobile.handlebars->5->40",
37747
- "login.handlebars->5->40"
37871
+ "login.handlebars->5->40",
37872
+ "login2.handlebars->7->40"
37873
]
37874
},
37875
{
@@ -37909,7 +38034,8 @@
38034
"zh-cht": "{0}大寫",
38035
"xloc": [
38036
"login-mobile.handlebars->5->38",
37912
- "login.handlebars->5->38"
38037
+ "login.handlebars->5->38",
38038
+ "login2.handlebars->7->38"
38039
]
38040
},
38041
{
views/agentinvite.handlebars
+3
-3
@@ -48,12 +48,12 @@
48
<div id="container">
49
<!-- Begin Masthead -->
50
<div id="masthead" class=noselect style="background:url(logo.png) 0px 0px;background-color:#036;background-repeat:no-repeat;height:66px;width:100%;overflow:hidden;">
51
- <div style="float:left">{{{titlehtml}}}</div>
51
+ <div style="float:left;text-shadow: 1px 1px 2px #000">{{{titlehtml}}}</div>
52
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:14px; padding-top:7px">
53
- <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;">{{{title1}}}</font></strong>
53
+ <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title1}}}</font></strong>
54
</div>
55
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:5px; padding-top:14px">
56
- <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;">{{{title2}}}</font></strong>
56
+ <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title2}}}</font></strong>
57
</div>
58
<p id="logoutControl" style="color:white;font-size:11px;margin: 10px 10px 0;">{{{logoutControl}}}</p>
59
</div>
views/download.handlebars
+28
-4
@@ -14,18 +14,18 @@
14
<div id=container style=max-height:100vh>
15
<div id=mastheadx></div>
16
<div id=masthead style="background:url(logo.png) 0px 0px;background-color:#036;background-repeat:no-repeat;height:66px;width:100%;overflow:hidden">
17
- <div style="float:left">{{{titlehtml}}}</div>
17
+ <div style="float:left;text-shadow: 1px 1px 2px #000">{{{titlehtml}}}</div>
18
<div style=float:left;height:66px;color:#c8c8c8;padding-left:14px;padding-top:7px>
19
- <strong><font style="font-size:46px;font-family:Arial,Helvetica,sans-serif">{{{title1}}}</font></strong>
19
+ <strong><font style="font-size:46px;font-family:Arial,Helvetica,sans-serif;text-shadow: 1px 1px 2px #000">{{{title1}}}</font></strong>
20
</div>
21
<div style=float:left;height:66px;color:#c8c8c8;padding-left:5px;padding-top:14px>
22
- <strong><font style="font-size:14px;font-family:Arial,Helvetica,sans-serif">{{{title2}}}</font></strong>
22
+ <strong><font style="font-size:14px;font-family:Arial,Helvetica,sans-serif;text-shadow: 1px 1px 2px #000">{{{title2}}}</font></strong>
23
</div>
24
</div>
25
<div id=page_content style=max-height:calc(100vh-138px)>
26
<div id=column_l>
27
<h1>Download</h1>
28
- <p style=margin-left:20px>{{{message}}}</p>
28
+ <p id="message" style=margin-left:20px></p>
29
<br />
30
</div>
31
<div id=footer>
@@ -41,5 +41,29 @@
41
</div>
42
</div>
43
</div>
44
+ <script>
45
+ var messageid = parseInt('{{{messageid}}}');
46
+ var fileurl = '{{{fileurl}}}';
47
+ var filename = '{{{filename}}}';
48
+ var filesize = parseInt('{{{filesize}}}');
49
+
50
+ // Quick UI functions, a bit of a replacement for jQuery
51
+ function Q(x) { return document.getElementById(x); } // "Q"
52
+ function QS(x) { try { return Q(x).style; } catch (x) { } } // "Q" style
53
+ function QE(x, y) { try { Q(x).disabled = !y; } catch (x) { } } // "Q" enable
54
+ function QV(x, y) { try { QS(x).display = (y ? '' : 'none'); } catch (x) { } } // "Q" visible
55
+ function QA(x, y) { Q(x).innerHTML += y; } // "Q" append
56
+ function QH(x, y) { Q(x).innerHTML = y; } // "Q" html
57
+ function QC(x) { try { return Q(x).classList; } catch (x) { } } // "Q" class
58
+ function format(format) { var args = Array.prototype.slice.call(arguments, 1); return format.replace(/{(\d+)}/g, function (match, number) { return typeof args[number] != 'undefined' ? args[number] : match; }); };
59
+ function EscapeHtml(x) { if (typeof x == 'string') return x.replace(/&/g, '&').replace(/>/g, '>').replace(/</g, '<').replace(/"/g, '"').replace(/'/g, '''); if (typeof x == 'boolean') return x; if (typeof x == 'number') return x; }
60
+
61
+ if (messageid == 1) {
62
+ var lenstr = (filesize == 1)?format("1 byte"):format("{0} bytes", filesize);
63
+ QH('message', '<a href="' + fileurl + '">' + EscapeHtml(filename) + '</a>, ' + lenstr);
64
+ } else if (messageid == 2) {
65
+ QH('message', "Invalid file link");
66
+ }
67
+ </script>
68
</body>
69
</html>
\ No newline at end of file
views/download2.handlebars
new
+88
@@ -0,0 +1,88 @@
1
+<!DOCTYPE html>
2
+<html lang="en" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
3
+<head>
4
+ <meta http-equiv=X-UA-Compatible content="IE=edge" />
5
+ <meta content="text/html;charset=utf-8" http-equiv=Content-Type />
6
+ <meta name=viewport content="user-scalable=1.0,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0" />
7
+ <meta name=apple-mobile-web-app-capable content=yes />
8
+ <meta name=format-detection content="telephone=no" />
9
+ <link type=text/css href="/styles/style.css" media="screen" rel="stylesheet" title="CSS" />
10
+ <link rel="apple-touch-icon" href="/favicon-303x303.png" />
11
+ <title>{{{title1}}} - Download</title>
12
+ <style>
13
+ body {
14
+ background-color: cadetblue;
15
+ background: linear-gradient(to bottom right, #369, #036);
16
+ height:100%;
17
+ overflow:hidden;
18
+ }
19
+
20
+ a:link { color: #c8c8c8; }
21
+ a:visited { color: #c8c8c8; }
22
+ a:hover { color: #c8c8c8; }
23
+ a:active { color: #c8c8c8; }
24
+ </style>
25
+</head>
26
+<body>
27
+ <img style="position:absolute;left:0;bottom:0;z-index:-1;height:60%;opacity:0.1" src="../../images/login/back.png" />
28
+ <table id="centralTable" class="container" style="height:100%;z-index:1">
29
+ <tr>
30
+ <td style="width:100%;text-align:center">
31
+ <div id="message" style="display:none;color:#c8c8c8;font-size:20px"></div>
32
+ <table id="filetable" style="margin: 0 auto;color:#c8c8c8">
33
+ <tr>
34
+ <td>
35
+ <a id=fileimagelink>
36
+ <img id=fileimage src="../../images/login/file48.png" title="File" loading="lazy" width="48" height="48" style="margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF;margin-right:8px" />
37
+ </a>
38
+ </td>
39
+ <td style="text-align:left">
40
+ <div id="flink" style="font-size:22px">
41
+ <a id="filelink"></a>
42
+ </div>
43
+ <div id="filesize" style="font-size:16px"></div>
44
+ </td>
45
+ </tr>
46
+ </table>
47
+ </td>
48
+ </tr>
49
+ <tr style="height:20px">
50
+ <td>
51
+ <div>
52
+ <div id="flink" style="margin-left:4px">{{{footer}}}</div>
53
+ <div id="flink" style="float:right;margin-right:4px">{{{rootCertLink}}} <a href=../../terms>Terms & Privacy</a></div>
54
+ </div>
55
+ </td>
56
+ </tr>
57
+ </table>
58
+ <script>
59
+ var messageid = parseInt('{{{messageid}}}');
60
+ var fileurl = '{{{fileurl}}}';
61
+ var filename = '{{{filename}}}';
62
+ var filesize = parseInt('{{{filesize}}}');
63
+
64
+ // Quick UI functions, a bit of a replacement for jQuery
65
+ function Q(x) { return document.getElementById(x); } // "Q"
66
+ function QS(x) { try { return Q(x).style; } catch (x) { } } // "Q" style
67
+ function QE(x, y) { try { Q(x).disabled = !y; } catch (x) { } } // "Q" enable
68
+ function QV(x, y) { try { QS(x).display = (y ? '' : 'none'); } catch (x) { } } // "Q" visible
69
+ function QA(x, y) { Q(x).innerHTML += y; } // "Q" append
70
+ function QH(x, y) { Q(x).innerHTML = y; } // "Q" html
71
+ function QC(x) { try { return Q(x).classList; } catch (x) { } } // "Q" class
72
+ function format(format) { var args = Array.prototype.slice.call(arguments, 1); return format.replace(/{(\d+)}/g, function (match, number) { return typeof args[number] != 'undefined' ? args[number] : match; }); };
73
+ function EscapeHtml(x) { if (typeof x == 'string') return x.replace(/&/g, '&').replace(/>/g, '>').replace(/</g, '<').replace(/"/g, '"').replace(/'/g, '''); if (typeof x == 'boolean') return x; if (typeof x == 'number') return x; }
74
+
75
+ QV('filetable', messageid == 1);
76
+ QV('message', messageid == 2);
77
+
78
+ if (messageid == 1) {
79
+ QH('filelink', EscapeHtml(filename));
80
+ Q('filelink').href = fileurl;
81
+ Q('fileimagelink').href = fileurl;
82
+ if (filesize == 1) { QH('filesize', format("1 byte")); } else { QH('filesize', format("{0} bytes", filesize)); }
83
+ } else if (messageid == 2) {
84
+ QH('message', "Invalid file link");
85
+ }
86
+ </script>
87
+</body>
88
+</html>
\ No newline at end of file
views/error404.handlebars
+3
-3
@@ -14,12 +14,12 @@
14
<div id="container">
15
<!-- Begin Masthead -->
16
<div id="masthead" class=noselect style="background:url(logo.png) 0px 0px;background-color:#036;background-repeat:no-repeat;height:66px;width:100%;overflow:hidden;">
17
- <div style="float:left">{{{titlehtml}}}</div>
17
+ <div style="float:left;text-shadow: 1px 1px 2px #000">{{{titlehtml}}}</div>
18
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:16px; padding-top:7px">
19
- <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;">{{{title1}}}</font></strong>
19
+ <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title1}}}</font></strong>
20
</div>
21
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:5px; padding-top:14px">
22
- <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;">{{{title2}}}</font></strong>
22
+ <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title2}}}</font></strong>
23
</div>
24
</div>
25
<div id="page_leftbar">
views/error4042.handlebars
new
+46
@@ -0,0 +1,46 @@
1
+<!DOCTYPE html>
2
+<html lang="en" dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
3
+<head>
4
+ <meta http-equiv=X-UA-Compatible content="IE=edge" />
5
+ <meta content="text/html;charset=utf-8" http-equiv=Content-Type />
6
+ <meta name=viewport content="user-scalable=1.0,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0" />
7
+ <meta name=apple-mobile-web-app-capable content=yes />
8
+ <meta name=format-detection content="telephone=no" />
9
+ <link type=text/css href="/styles/style.css" media="screen" rel="stylesheet" title="CSS" />
10
+ <link rel="apple-touch-icon" href="/favicon-303x303.png" />
11
+ <title>{{{title1}}} - Download</title>
12
+ <style>
13
+ body {
14
+ background-color: cadetblue;
15
+ background: linear-gradient(to bottom right, #369, #036);
16
+ height: 100%;
17
+ overflow: hidden;
18
+ }
19
+
20
+ a:link { color: #c8c8c8; }
21
+ a:visited { color: #c8c8c8; }
22
+ a:hover { color: #c8c8c8; }
23
+ a:active { color: #c8c8c8; }
24
+ </style>
25
+</head>
26
+<body>
27
+ <img style="position:absolute;left:0;bottom:0;z-index:-1;height:60%;opacity:0.1" src="../../images/login/back.png" />
28
+ <table id="centralTable" class="container" style="height:100%;z-index:1">
29
+ <tr>
30
+ <td style="width:100%;text-align:center">
31
+ <div style="text-align:center;padding-top:30px;font-size:160px;font-family:Arial;color:#bbb"><b>404</b></div>
32
+ <div style="text-align:center;font-size:20px;font-family:Arial;color:#999">This page does not exist</div>
33
+ <div style="text-align:center;padding-top:20px;font-size:20px;font-family:Arial;color:#999"><a href="/"><b>Go to main site</b></a></div>
34
+ </td>
35
+ </tr>
36
+ <tr style="height:20px">
37
+ <td>
38
+ <div>
39
+ <div id="flink" style="margin-left:4px">{{{footer}}}</div>
40
+ <div id="flink" style="float:right;margin-right:4px">{{{rootCertLink}}} <a href=../../terms>Terms & Privacy</a></div>
41
+ </div>
42
+ </td>
43
+ </tr>
44
+ </table>
45
+</body>
46
+</html>
\ No newline at end of file
views/invite.handlebars
+3
-3
@@ -48,12 +48,12 @@
48
<div id="container">
49
<!-- Begin Masthead -->
50
<div id="masthead" class=noselect style="background:url(logo.png) 0px 0px;background-color:#036;background-repeat:no-repeat;height:66px;width:100%;overflow:hidden;">
51
- <div style="float:left">{{{titlehtml}}}</div>
51
+ <div style="float:left;text-shadow: 1px 1px 2px #000">{{{titlehtml}}}</div>
52
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:14px; padding-top:7px">
53
- <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;">{{{title1}}}</font></strong>
53
+ <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title1}}}</font></strong>
54
</div>
55
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:5px; padding-top:14px">
56
- <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;">{{{title2}}}</font></strong>
56
+ <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title2}}}</font></strong>
57
</div>
58
<p id="logoutControl" style="color:white;font-size:11px;margin: 10px 10px 0;">{{{logoutControl}}}</p>
59
</div>
views/login2.handlebars
+10
-21
@@ -18,21 +18,10 @@
18
background: linear-gradient(to bottom right, #369, #036);
19
}
20
21
- #flink a:link {
22
- color: #c8c8c8;
23
- }
24
-
25
- #flink a:visited {
26
- color: #c8c8c8;
27
- }
28
-
29
- #flink a:hover {
30
- color: #c8c8c8;
31
- }
32
-
33
- #flink a:active {
34
- color: #c8c8c8;
35
- }
21
+ #flink a:link { color: #c8c8c8; }
22
+ #flink a:visited { color: #c8c8c8; }
23
+ #flink a:hover { color: #c8c8c8; }
24
+ #flink a:active { color: #c8c8c8; }
25
</style>
26
</head>
27
<body id="body" onload="if (typeof(startup) !== 'undefined') startup();" class="arg_hide login">
@@ -140,15 +129,15 @@
129
<div>
130
<b>Account Reset</b>
131
</div>
143
- <table>
132
+ <table style="width:100%;margin-top:4px;margin-bottom:4px">
133
<tr>
145
- <td align=right width=100>Email:</td>
146
- <td><input id=remail type=text inputmode="email" name=email maxlength=256 onchange=validateReset() onkeyup=validateReset(event) /></td>
134
+ <td>
135
+ <input id=remail title="Email" style="width:250px;border:0;border-radius:8px;padding:8px;background-color:#FFF8CC" autocomplete="username" placeholder="Email" type=text maxlength=256 name=email onchange=validateReset() onkeyup=validateReset(event) />
136
+ </td>
137
</tr>
138
<tr>
149
- <td colspan=2>
150
- <div style=float:right><input id=eresetButton type=submit value="Reset Account" disabled="disabled" /></div>
151
- <div id=passWarning style="padding-top:6px"></div>
139
+ <td>
140
+ <input id=eresetButton style="width:250px;border:0;border-radius:4px;padding:6px" type=submit value="Reset Account" disabled="disabled" />
141
</td>
142
</tr>
143
</table>
views/message.handlebars
+3
-3
@@ -15,12 +15,12 @@
15
<div id=container style=max-height:100vh>
16
<div id=mastheadx></div>
17
<div id=masthead style="background:url(logo.png) 0px 0px;background-color:#036;background-repeat:no-repeat;height:66px;width:100%;overflow:hidden">
18
- <div style="float:left">{{{titlehtml}}}</div>
18
+ <div style="float:left;text-shadow: 1px 1px 2px #000">{{{titlehtml}}}</div>
19
<div style=float:left;height:66px;color:#c8c8c8;padding-left:14px;padding-top:7px>
20
- <strong><font style="font-size:46px;font-family:Arial,Helvetica,sans-serif">{{{title1}}}</font></strong>
20
+ <strong><font style="font-size:46px;font-family:Arial,Helvetica,sans-serif;text-shadow: 1px 1px 2px #000">{{{title1}}}</font></strong>
21
</div>
22
<div style=float:left;height:66px;color:#c8c8c8;padding-left:5px;padding-top:14px>
23
- <strong><font style="font-size:14px;font-family:Arial,Helvetica,sans-serif">{{{title2}}}</font></strong>
23
+ <strong><font style="font-size:14px;font-family:Arial,Helvetica,sans-serif;text-shadow: 1px 1px 2px #000">{{{title2}}}</font></strong>
24
</div>
25
</div>
26
<div id=page_content style=max-height:calc(100vh-138px)>
views/terms.handlebars
+3
-3
@@ -15,12 +15,12 @@
15
<div id="container">
16
<!-- Begin Masthead -->
17
<div id="masthead" class=noselect style="background:url(logo.png) 0px 0px;background-color:#036;background-repeat:no-repeat;height:66px;width:100%;overflow:hidden;">
18
- <div style="float:left">{{{titlehtml}}}</div>
18
+ <div style="float:left;text-shadow: 1px 1px 2px #000">{{{titlehtml}}}</div>
19
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:14px; padding-top:7px">
20
- <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;">{{{title1}}}</font></strong>
20
+ <strong><font style="font-size:46px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title1}}}</font></strong>
21
</div>
22
<div style="float:left; height: 66px; color:#c8c8c8; padding-left:5px; padding-top:14px">
23
- <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;">{{{title2}}}</font></strong>
23
+ <strong><font style="font-size:14px; font-family: Arial, Helvetica, sans-serif;text-shadow: 1px 1px 2px #000">{{{title2}}}</font></strong>
24
</div>
25
<p id="logoutControl" style="color:white;font-size:11px;margin: 10px 10px 0;"></p>
26
</div>
webserver.js
+9
-4
@@ -2459,7 +2459,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
2459
if (domain.customui != null) { customui = encodeURIComponent(JSON.stringify(domain.customui)); }
2460
2461
// Render the login page
2462
- render(req, res, getRenderPage('login', req, domain), getRenderArgs({ loginmode: loginmode, rootCertLink: getRootCertLink(), newAccount: newAccountsAllowed, newAccountPass: (((domain.newaccountspass == null) || (domain.newaccountspass == '')) ? 0 : 1), serverDnsName: obj.getWebServerName(domain), serverPublicPort: httpsPort, emailcheck: emailcheck, features: features, sessiontime: args.sessiontime, passRequirements: passRequirements, customui: customui, footer: (domain.footer == null) ? '' : domain.footer, hkey: encodeURIComponent(hardwareKeyChallenge).replace(/'/g, '%27'), messageid: msgid, passhint: passhint, welcometext: domain.welcometext ? encodeURIComponent(domain.welcometext).split('\'').join('\\\'') : null, hwstate: hwstate, otpemail: otpemail, otpsms: otpsms, twoFactorCookieDays: twoFactorCookieDays, authStrategies: authStrategies.join(',') }, req, domain));
2462
+ render(req, res, getRenderPage((domain.sitestyle == 2)?'login2':'login', req, domain), getRenderArgs({ loginmode: loginmode, rootCertLink: getRootCertLink(), newAccount: newAccountsAllowed, newAccountPass: (((domain.newaccountspass == null) || (domain.newaccountspass == '')) ? 0 : 1), serverDnsName: obj.getWebServerName(domain), serverPublicPort: httpsPort, emailcheck: emailcheck, features: features, sessiontime: args.sessiontime, passRequirements: passRequirements, customui: customui, footer: (domain.footer == null) ? '' : domain.footer, hkey: encodeURIComponent(hardwareKeyChallenge).replace(/'/g, '%27'), messageid: msgid, passhint: passhint, welcometext: domain.welcometext ? encodeURIComponent(domain.welcometext).split('\'').join('\\\'') : null, hwstate: hwstate, otpemail: otpemail, otpsms: otpsms, twoFactorCookieDays: twoFactorCookieDays, authStrategies: authStrategies.join(',') }, req, domain));
2463
}
2464
2465
// Handle a post request on the root
@@ -2780,10 +2780,12 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
2780
}
2781
try { res.sendFile(obj.path.resolve(__dirname, path)); } catch (e) { res.sendStatus(404); }
2782
} else {
2783
- render(req, res, getRenderPage('download', req, domain), getRenderArgs({ rootCertLink: getRootCertLink(), message: "<a href='" + req.path + "?download=1'>" + filename + "</a>, " + stat.size + " byte" + ((stat.size < 2) ? '' : 's') + "." }, req, domain));
2783
+ render(req, res, getRenderPage((domain.sitestyle == 2) ? 'download2' : 'download', req, domain), getRenderArgs({ rootCertLink: getRootCertLink(), messageid: 1, fileurl: req.path + '?download=1', filename: filename, filesize: stat.size }, req, domain));
2784
+ //render(req, res, getRenderPage((domain.sitestyle == 2) ? 'download2' : 'download', req, domain), getRenderArgs({ rootCertLink: getRootCertLink(), message: "<a href='" + req.path + "?download=1'>" + filename + "</a>, " + stat.size + " byte" + ((stat.size < 2) ? '' : 's') + "." }, req, domain));
2785
}
2786
} else {
2786
- render(req, res, getRenderPage('download', req, domain), getRenderArgs({ rootCertLink: getRootCertLink(), message: "Invalid file link, please check the URL again." }, req, domain));
2787
+ render(req, res, getRenderPage((domain.sitestyle == 2) ? 'download2' : 'download', req, domain), getRenderArgs({ rootCertLink: getRootCertLink(), messageid: 2 }, req, domain));
2788
+ //render(req, res, getRenderPage((domain.sitestyle == 2) ? 'download2' : 'download', req, domain), getRenderArgs({ rootCertLink: getRootCertLink(), message: "Invalid file link, please check the URL again." }, req, domain));
2789
}
2790
}
2791
@@ -5116,6 +5118,9 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
5118
});
5119
});
5120
5121
+ // Allows agents to transfer files
5122
+ obj.agentapp.ws(url + 'devicefile.ashx', function (ws, req) { obj.meshDeviceFileHandler.CreateMeshDeviceFile(obj, ws, null, req, domain); });
5123
+
5124
// Setup agent to/from server file transfer handler
5125
obj.agentapp.ws(url + 'agenttransfer.ashx', handleAgentFileTransfer); // Setup agent to/from server file transfer handler
5126
}
@@ -5143,7 +5148,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
5148
var domain = getDomain(req);
5149
if ((domain == null) || (domain.auth == 'sspi')) { res.sendStatus(404); return; }
5150
if ((domain.loginkey != null) && (domain.loginkey.indexOf(req.query.key) == -1)) { res.sendStatus(404); return; } // Check 3FA URL key
5146
- res.status(404).render(getRenderPage('error404', req, domain), getRenderArgs({}, req, domain));
5151
+ res.status(404).render(getRenderPage((domain.sitestyle == 2) ? 'error4042' : 'error404', req, domain), getRenderArgs({}, req, domain));
5152
});
5153
}
5154