Version 1.0.51

Ylian Saint-Hilaire committed Jul 11, 2022 at 15:27 UTC ab804807dab147c5250411f476ad2f6165b15ccc
3 files changed +134 -86
package.json
+1 -1
@@ -1,6 +1,6 @@
1 {
2 "name": "meshcentral",
3 - "version": "1.0.50",
3 + "version": "1.0.51",
4 "keywords": [
5 "Remote Device Management",
6 "Remote Device Monitoring",
translate/translate.json
+117 -82
@@ -5223,7 +5223,7 @@
5223 "zh-chs": "访问被拒绝。",
5224 "zh-cht": "訪問被拒絕。",
5225 "xloc": [
5226 - "login2.handlebars->7->31"
5226 + "login2.handlebars->7->32"
5227 ]
5228 },
5229 {
@@ -12280,6 +12280,14 @@
12280 "default.handlebars->container->column_l->p11->7->p11capslock"
12281 ]
12282 },
12283 + {
12284 + "en": "CAPTCHA image",
12285 + "xloc": [
12286 + "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1",
12287 + "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1",
12288 + "login2.handlebars->centralTable->1->0->logincell->createpanel->createpanelform->9->1"
12289 + ]
12290 + },
12291 {
12292 "cs": "CCM",
12293 "da": "CCM",
@@ -16744,7 +16752,7 @@
16752 "default-mobile.handlebars->11->471",
16753 "default.handlebars->45->1339",
16754 "default.handlebars->45->1356",
16747 - "login2.handlebars->7->32"
16755 + "login2.handlebars->7->33"
16756 ]
16757 },
16758 {
@@ -17613,9 +17621,9 @@
17621 "zh-cht": "創建帳號",
17622 "xloc": [
17623 "default.handlebars->45->2485",
17616 - "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->12->1->1",
17617 - "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->12->1->1",
17618 - "login2.handlebars->centralTable->1->0->logincell->createpanel->createpanelform->9->1->12->1->1"
17624 + "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->16->1->1",
17625 + "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->16->1->1",
17626 + "login2.handlebars->centralTable->1->0->logincell->createpanel->createpanelform->9->1->16->1->1"
17627 ]
17628 },
17629 {
@@ -24692,13 +24700,13 @@
24700 "default.handlebars->45->2665",
24701 "default.handlebars->45->2697",
24702 "default.handlebars->45->494",
24695 - "login-mobile.handlebars->5->42",
24703 + "login-mobile.handlebars->5->45",
24704 "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->3",
24697 - "login.handlebars->5->44",
24705 + "login.handlebars->5->46",
24706 "login.handlebars->container->column_l->centralTable->1->0->logincell->resettokenpanel->1->5->1->2->1->3",
24707 "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3",
24700 - "login2.handlebars->7->26",
24701 - "login2.handlebars->7->53",
24708 + "login2.handlebars->7->27",
24709 + "login2.handlebars->7->54",
24710 "login2.handlebars->centralTable->1->0->logincell->resetpanel->resetpanelform->7->1->0->1",
24711 "login2.handlebars->centralTable->1->0->logincell->resetpanel->resetpanelform->7->1->0->1",
24712 "login2.handlebars->centralTable->1->0->logincell->resettokenpanel->resettokenpanelform->5->1->2farow2->1->3",
@@ -24779,9 +24787,9 @@
24787 "zh-chs": "电邮确认",
24788 "zh-cht": "電郵確認",
24789 "xloc": [
24782 - "login-mobile.handlebars->5->43",
24783 - "login.handlebars->5->45",
24784 - "login2.handlebars->7->54"
24790 + "login-mobile.handlebars->5->46",
24791 + "login.handlebars->5->47",
24792 + "login2.handlebars->7->55"
24793 ]
24794 },
24795 {
@@ -25256,10 +25264,10 @@
25264 "zh-chs": "电邮:",
25265 "zh-cht": "電郵:",
25266 "xloc": [
25259 - "login-mobile.handlebars->5->21",
25267 + "login-mobile.handlebars->5->24",
25268 "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->2->1",
25269 "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->resetpanel->1->7->1->0->1",
25262 - "login.handlebars->5->22",
25270 + "login.handlebars->5->24",
25271 "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->2->nuEmail",
25272 "login.handlebars->container->column_l->centralTable->1->0->logincell->resetpanel->1->7->1->0->1",
25273 "login2.handlebars->centralTable->1->0->logincell->createpanel->createpanelform->9->1->2->nuEmail"
@@ -27312,7 +27320,7 @@
27320 "zh-chs": "发送请求失败。",
27321 "zh-cht": "發送請求失敗。",
27322 "xloc": [
27315 - "login2.handlebars->7->29"
27323 + "login2.handlebars->7->30"
27324 ]
27325 },
27326 {
@@ -28579,9 +28587,9 @@
28587 "zh-chs": "忘记了密码?",
28588 "zh-cht": "忘記了密碼?",
28589 "xloc": [
28582 - "login-mobile.handlebars->5->22",
28583 - "login.handlebars->5->23",
28584 - "login2.handlebars->7->27"
28590 + "login-mobile.handlebars->5->25",
28591 + "login.handlebars->5->25",
28592 + "login2.handlebars->7->28"
28593 ]
28594 },
28595 {
@@ -29900,12 +29908,12 @@
29908 "zh-chs": "好的密码",
29909 "zh-cht": "好的密碼",
29910 "xloc": [
29903 - "login-mobile.handlebars->5->29",
29904 - "login-mobile.handlebars->5->33",
29905 - "login.handlebars->5->30",
29906 - "login.handlebars->5->34",
29907 - "login2.handlebars->7->39",
29908 - "login2.handlebars->7->43"
29911 + "login-mobile.handlebars->5->32",
29912 + "login-mobile.handlebars->5->36",
29913 + "login.handlebars->5->32",
29914 + "login.handlebars->5->36",
29915 + "login2.handlebars->7->40",
29916 + "login2.handlebars->7->44"
29917 ]
29918 },
29919 {
@@ -35232,6 +35240,14 @@
35240 "default.handlebars->45->310"
35241 ]
35242 },
35243 + {
35244 + "en": "Invalid security check.",
35245 + "xloc": [
35246 + "login-mobile.handlebars->5->22",
35247 + "login.handlebars->5->22",
35248 + "login2.handlebars->7->24"
35249 + ]
35250 + },
35251 {
35252 "cs": "Neplatná oprávnění webu",
35253 "da": "Ugyldige webstedstilladelser",
@@ -41128,9 +41144,9 @@
41144 "zh-chs": "最大长度为{0}",
41145 "zh-cht": "最大長度為{0}",
41146 "xloc": [
41131 - "login-mobile.handlebars->5->37",
41132 - "login.handlebars->5->38",
41133 - "login2.handlebars->7->47"
41147 + "login-mobile.handlebars->5->40",
41148 + "login.handlebars->5->40",
41149 + "login2.handlebars->7->48"
41150 ]
41151 },
41152 {
@@ -42543,9 +42559,9 @@
42559 "zh-chs": "最小长度为{0}",
42560 "zh-cht": "最小長度為{0}",
42561 "xloc": [
42546 - "login-mobile.handlebars->5->36",
42547 - "login.handlebars->5->37",
42548 - "login2.handlebars->7->46"
42562 + "login-mobile.handlebars->5->39",
42563 + "login.handlebars->5->39",
42564 + "login2.handlebars->7->47"
42565 ]
42566 },
42567 {
@@ -48437,9 +48453,9 @@
48453 "zh-chs": "密码提示",
48454 "zh-cht": "密碼提示",
48455 "xloc": [
48440 - "login-mobile.handlebars->5->27",
48441 - "login.handlebars->5->28",
48442 - "login2.handlebars->7->37",
48456 + "login-mobile.handlebars->5->30",
48457 + "login.handlebars->5->30",
48458 + "login2.handlebars->7->38",
48459 "login2.handlebars->centralTable->1->0->logincell->loginpanel->loginpanelform->loginuserpassdiv->1->1->4->1"
48460 ]
48461 },
@@ -48494,14 +48510,14 @@
48510 "zh-chs": "密码政策",
48511 "zh-cht": "密碼政策",
48512 "xloc": [
48497 - "login-mobile.handlebars->5->31",
48498 - "login-mobile.handlebars->5->35",
48499 - "login.handlebars->5->32",
48500 - "login.handlebars->5->36",
48501 - "login.handlebars->5->43",
48502 - "login2.handlebars->7->41",
48503 - "login2.handlebars->7->45",
48504 - "login2.handlebars->7->52"
48513 + "login-mobile.handlebars->5->34",
48514 + "login-mobile.handlebars->5->38",
48515 + "login.handlebars->5->34",
48516 + "login.handlebars->5->38",
48517 + "login.handlebars->5->45",
48518 + "login2.handlebars->7->42",
48519 + "login2.handlebars->7->46",
48520 + "login2.handlebars->7->53"
48521 ]
48522 },
48523 {
@@ -52794,10 +52810,10 @@
52810 "zh-chs": "记住此设备{0}天。",
52811 "zh-cht": "記住此裝置{0}天。",
52812 "xloc": [
52797 - "login-mobile.handlebars->5->20",
52798 - "login.handlebars->5->21",
52799 - "login2.handlebars->7->24",
52800 - "login2.handlebars->7->25"
52813 + "login-mobile.handlebars->5->23",
52814 + "login.handlebars->5->23",
52815 + "login2.handlebars->7->25",
52816 + "login2.handlebars->7->26"
52817 ]
52818 },
52819 {
@@ -55117,7 +55133,7 @@
55133 "zh-chs": "请求已接受。",
55134 "zh-cht": "請求已接受。",
55135 "xloc": [
55120 - "login2.handlebars->7->30"
55136 + "login2.handlebars->7->31"
55137 ]
55138 },
55139 {
@@ -55186,7 +55202,7 @@
55202 "zh-chs": "请求已发送,{0}。",
55203 "zh-cht": "請求已發送,{0}。",
55204 "xloc": [
55189 - "login2.handlebars->7->28"
55205 + "login2.handlebars->7->29"
55206 ]
55207 },
55208 {
@@ -57801,12 +57817,12 @@
57817 "zh-chs": "安全登录",
57818 "zh-cht": "安全登入",
57819 "xloc": [
57804 - "login-mobile.handlebars->5->23",
57805 - "login-mobile.handlebars->5->25",
57806 - "login.handlebars->5->24",
57820 + "login-mobile.handlebars->5->26",
57821 + "login-mobile.handlebars->5->28",
57822 "login.handlebars->5->26",
57808 - "login2.handlebars->7->33",
57809 - "login2.handlebars->7->35"
57823 + "login.handlebars->5->28",
57824 + "login2.handlebars->7->34",
57825 + "login2.handlebars->7->36"
57826 ]
57827 },
57828 {
@@ -57867,6 +57883,14 @@
57883 "default.handlebars->container->column_l->p21->p21main->1->1->meshSecurityChartDiv->1"
57884 ]
57885 },
57886 + {
57887 + "en": "Security Check:",
57888 + "xloc": [
57889 + "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->newAccountCaptcha->nuCaptcha",
57890 + "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->newAccountCaptcha->nuCaptcha",
57891 + "login2.handlebars->centralTable->1->0->logincell->createpanel->createpanelform->9->1->newAccountCaptcha->nuCaptcha"
57892 + ]
57893 + },
57894 {
57895 "cs": "Klíč zabezpečení",
57896 "da": "Sikkerhedsnøgle",
@@ -57918,6 +57942,14 @@
57942 "default.handlebars->45->2873"
57943 ]
57944 },
57945 + {
57946 + "en": "Security check",
57947 + "xloc": [
57948 + "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1",
57949 + "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1",
57950 + "login2.handlebars->centralTable->1->0->logincell->createpanel->createpanelform->9->1"
57951 + ]
57952 + },
57953 {
57954 "cs": "Hledám",
57955 "da": "Søger",
@@ -58692,7 +58724,7 @@
58724 "zh-chs": "将令牌发送到注册的电子邮件地址?",
58725 "zh-cht": "將令牌發送到註冊的電子郵件地址?",
58726 "xloc": [
58695 - "login-mobile.handlebars->5->24"
58727 + "login-mobile.handlebars->5->27"
58728 ]
58729 },
58730 {
@@ -58717,7 +58749,7 @@
58749 "zh-chs": "将令牌发送到注册电话号码?",
58750 "zh-cht": "將令牌發送到註冊電話號碼?",
58751 "xloc": [
58720 - "login-mobile.handlebars->5->26"
58752 + "login-mobile.handlebars->5->29"
58753 ]
58754 },
58755 {
@@ -58742,8 +58774,8 @@
58774 "zh-chs": "将保安编码发送到注册的电邮地址?",
58775 "zh-cht": "將保安編碼發送到註冊的電郵地址?",
58776 "xloc": [
58745 - "login.handlebars->5->25",
58746 - "login2.handlebars->7->34"
58777 + "login.handlebars->5->27",
58778 + "login2.handlebars->7->35"
58779 ]
58780 },
58781 {
@@ -58768,8 +58800,8 @@
58800 "zh-chs": "将保安编码发送到注册电话号码?",
58801 "zh-cht": "將保安編碼發送到註冊電話號碼?",
58802 "xloc": [
58771 - "login.handlebars->5->27",
58772 - "login2.handlebars->7->36"
58803 + "login.handlebars->5->29",
58804 + "login2.handlebars->7->37"
58805 ]
58806 },
58807 {
@@ -59630,6 +59662,7 @@
59662 "zh-chs": "服务器正在维护中。",
59663 "zh-cht": "服務器正在維護中。",
59664 "xloc": [
59665 + "login-mobile.handlebars->5->20",
59666 "login.handlebars->5->20",
59667 "login2.handlebars->7->22"
59668 ]
@@ -63860,12 +63893,12 @@
63893 "zh-chs": "强密码",
63894 "zh-cht": "強密碼",
63895 "xloc": [
63863 - "login-mobile.handlebars->5->28",
63864 - "login-mobile.handlebars->5->32",
63865 - "login.handlebars->5->29",
63866 - "login.handlebars->5->33",
63867 - "login2.handlebars->7->38",
63868 - "login2.handlebars->7->42"
63896 + "login-mobile.handlebars->5->31",
63897 + "login-mobile.handlebars->5->35",
63898 + "login.handlebars->5->31",
63899 + "login.handlebars->5->35",
63900 + "login2.handlebars->7->39",
63901 + "login2.handlebars->7->43"
63902 ]
63903 },
63904 {
@@ -68421,6 +68454,8 @@
68454 "zh-chs": "无法发送设备通知。",
68455 "zh-cht": "無法發送設備通知。",
68456 "xloc": [
68457 + "login-mobile.handlebars->5->21",
68458 + "login.handlebars->5->21",
68459 "login2.handlebars->7->23"
68460 ]
68461 },
@@ -72345,12 +72380,12 @@
72380 "zh-chs": "密码强度低",
72381 "zh-cht": "密碼強度低",
72382 "xloc": [
72348 - "login-mobile.handlebars->5->30",
72349 - "login-mobile.handlebars->5->34",
72350 - "login.handlebars->5->31",
72351 - "login.handlebars->5->35",
72352 - "login2.handlebars->7->40",
72353 - "login2.handlebars->7->44"
72383 + "login-mobile.handlebars->5->33",
72384 + "login-mobile.handlebars->5->37",
72385 + "login.handlebars->5->33",
72386 + "login.handlebars->5->37",
72387 + "login2.handlebars->7->41",
72388 + "login2.handlebars->7->45"
72389 ]
72390 },
72391 {
@@ -77885,9 +77920,9 @@
77920 "zh-chs": "{0}小写",
77921 "zh-cht": "{0}小寫",
77922 "xloc": [
77888 - "login-mobile.handlebars->5->39",
77889 - "login.handlebars->5->40",
77890 - "login2.handlebars->7->49"
77923 + "login-mobile.handlebars->5->42",
77924 + "login.handlebars->5->42",
77925 + "login2.handlebars->7->50"
77926 ]
77927 },
77928 {
@@ -78084,9 +78119,9 @@
78119 "zh-chs": "{0}非字母数字",
78120 "zh-cht": "{0}非字母數字",
78121 "xloc": [
78087 - "login-mobile.handlebars->5->41",
78088 - "login.handlebars->5->42",
78089 - "login2.handlebars->7->51"
78122 + "login-mobile.handlebars->5->44",
78123 + "login.handlebars->5->44",
78124 + "login2.handlebars->7->52"
78125 ]
78126 },
78127 {
@@ -78111,9 +78146,9 @@
78146 "zh-chs": "{0}数字",
78147 "zh-cht": "{0}數字",
78148 "xloc": [
78114 - "login-mobile.handlebars->5->40",
78115 - "login.handlebars->5->41",
78116 - "login2.handlebars->7->50"
78149 + "login-mobile.handlebars->5->43",
78150 + "login.handlebars->5->43",
78151 + "login2.handlebars->7->51"
78152 ]
78153 },
78154 {
@@ -78614,9 +78649,9 @@
78649 "zh-chs": "{0}大写",
78650 "zh-cht": "{0}大寫",
78651 "xloc": [
78617 - "login-mobile.handlebars->5->38",
78618 - "login.handlebars->5->39",
78619 - "login2.handlebars->7->48"
78652 + "login-mobile.handlebars->5->41",
78653 + "login.handlebars->5->41",
78654 + "login2.handlebars->7->49"
78655 ]
78656 },
78657 {
views/login-mobile.handlebars
+16 -3
@@ -131,6 +131,14 @@
131 <td align=right>Creation Token:</td>
132 <td><input id=anewaccountpass type=password name=anewaccountpass autocomplete=off maxlength=256 onkeydown=haltReturn(event) onchange=validateCreate(6) onkeyup=validateCreate(6,event) /></td>
133 </tr>
134 + <tr id=newAccountCaptchaImg title="CAPTCHA image">
135 + <td></td>
136 + <td colspan=2><img src="{{{newAccountCaptchaImage}}}" loading="lazy" /></td>
137 + </tr>
138 + <tr id=newAccountCaptcha title="Security check">
139 + <td id="nuCaptcha" align=right>Security Check:</td>
140 + <td><input id=anewaccountcaptcha type=text name=anewaccountcaptcha {{{autocomplete}}}=off maxlength=256 onkeydown=haltReturn(event) onchange=validateCreate(7,event) onkeyup=validateCreate(7,event) /></td>
141 + </tr>
142 <tr>
143 <td colspan=2>
144 <div style=float:right><input id=createButton type=submit value="Create Account" disabled="disabled" /></div>
@@ -140,6 +148,7 @@
148 </table>
149 <hr /><a onclick=xgo(1) style=cursor:pointer>Back to login</a>
150 <input id=createformargs name="urlargs" type="hidden" value="" />
151 + <input id=createformcaptcha name="captchaargs" type="hidden" value="{{{newAccountCaptcha}}}" />
152 </form>
153 </div>
154 </div>
@@ -316,6 +325,7 @@
325 var newAccount = '{{{newAccount}}}';
326 var passhint = '{{{passhint}}}';
327 var newAccountPass = parseInt('{{{newAccountPass}}}');
328 + var newAccountCaptcha = '{{{newAccountCaptcha}}}';
329 var emailCheck = '{{{emailcheck}}}';
330 var features = parseInt('{{{features}}}');
331 var passRequirements = '{{{passRequirements}}}';
@@ -334,7 +344,7 @@
344 // Display the right server message
345 var messageid = parseInt('{{{messageid}}}');
346 var okmessages = ['', "If valid, reset mail sent.", "Email sent.", "Email verification required, check your mailbox and click the confirmation link.", "SMS sent."];
337 - var failmessages = ["Unable to create account.", "Account limit reached.", "Existing account with this email address.", "Invalid account creation token.", "Username already exists.", "Password rejected, use a different one.", "Invalid email.", "Account not found.", "Invalid token, try again.", "Unable to sent email.", "Account locked.", "Access denied.", "Login failed, check username and password.", "Password change requested.", "IP address blocked, try again later."];
347 + var failmessages = ["Unable to create account.", "Account limit reached.", "Existing account with this email address.", "Invalid account creation token.", "Username already exists.", "Password rejected, use a different one.", "Invalid email.", "Account not found.", "Invalid token, try again.", "Unable to sent email.", "Account locked.", "Access denied.", "Login failed, check username and password.", "Password change requested.", "IP address blocked, try again later.", "Server under maintenance.", "Unable to send device notification.", "Invalid security check."];
348 if (messageid > 0) {
349 var msg = '';
350 if ((messageid < 100) && (messageid < okmessages.length)) { msg = okmessages[messageid]; }
@@ -403,6 +413,8 @@
413 QV('newAccountDiv', (newAccount === '1') || (newAccount === 'true')); // If new accounts are not allowed, don't display the new account link.
414 if ((passRequirements.hint === true) && (passhint != null) && (passhint.length > 0)) { QV('showPassHintLink', true); }
415 QV('newAccountPass', (newAccountPass == 1));
416 + QV('newAccountCaptcha', (newAccountCaptcha != ''));
417 + QV('newAccountCaptchaImg', (newAccountCaptcha != ''));
418 QV('resetAccountDiv', (emailCheck == 'true'));
419 QV('hrAccountDiv', (emailCheck == 'true') || (newAccountPass == 1));
420
@@ -592,8 +604,9 @@
604 if (box == 2) { Q('apassword1').focus(); }
605 if (box == 3) { Q('apassword2').focus(); }
606 if (box == 4) { Q('apasswordhint').focus(); }
595 - if (box == 5) { if (newAccountPass == 1) { Q('anewaccountpass').focus(); } else { Q('createButton').click(); } }
596 - if (box == 6) { Q('createButton').click(); }
607 + if (box == 5) { if (newAccountPass == 1) { Q('anewaccountpass').focus(); } else { box = 6; } }
608 + if (box == 6) { if (newAccountCaptcha != '') { Q('anewaccountcaptcha').focus(); } else { box = 7; } }
609 + if (box == 7) { Q('createButton').click(); }
610 }
611 if (e != null) { haltEvent(e); }
612 }