add duo authentication support (#6609)
Signed-off-by: si458 <simonsmith5521@gmail.com>
Simon Smith committed
Dec 21, 2024 at 13:52 UTC
e2362a0547ee06eae30ff4c03c15cf70c9e2af48
11 files changed
+2161
-1893
meshcentral-config-schema.json
+20
@@ -1664,6 +1664,26 @@
1664
"default": true,
1665
"description": "Set to false to disable SMS 2FA."
1666
},
1667
+ "duo2factor": {
1668
+ "type": "object",
1669
+ "properties": {
1670
+ "integrationkey": {
1671
+ "type": "string",
1672
+ "default": "",
1673
+ "description": "Integration key from Duo"
1674
+ },
1675
+ "secretkey": {
1676
+ "type": "string",
1677
+ "default": "",
1678
+ "description": "Secret key from Duo"
1679
+ },
1680
+ "apihostname": {
1681
+ "type": "string",
1682
+ "default": "",
1683
+ "description": "API Hostname from Duo"
1684
+ }
1685
+ }
1686
+ },
1687
"push2factor": {
1688
"type": "boolean",
1689
"default": true,
meshcentral.js
+3
-2
@@ -4188,7 +4188,7 @@ function mainStart() {
4188
// Check if Windows SSPI, LDAP, Passport and YubiKey OTP will be used
4189
var sspi = false;
4190
var ldap = false;
4191
- var passport = null;
4191
+ var passport = [];
4192
var allsspi = true;
4193
var yubikey = false;
4194
var ssh = false;
@@ -4209,7 +4209,7 @@ function mainStart() {
4209
if (mstsc == false) { config.domains[i].mstsc = false; }
4210
if (config.domains[i].ssh == true) { ssh = true; }
4211
if ((typeof config.domains[i].authstrategies == 'object')) {
4212
- if (passport == null) { passport = ['passport','connect-flash']; } // Passport v0.6.0 requires a patch, see https://github.com/jaredhanson/passport/issues/904 and include connect-flash here to display errors
4212
+ if (passport.length == 0) { passport = ['passport','connect-flash']; } // Passport v0.6.0 requires a patch, see https://github.com/jaredhanson/passport/issues/904 and include connect-flash here to display errors
4213
if ((typeof config.domains[i].authstrategies.twitter == 'object') && (typeof config.domains[i].authstrategies.twitter.clientid == 'string') && (typeof config.domains[i].authstrategies.twitter.clientsecret == 'string') && (passport.indexOf('passport-twitter') == -1)) { passport.push('passport-twitter'); }
4214
if ((typeof config.domains[i].authstrategies.google == 'object') && (typeof config.domains[i].authstrategies.google.clientid == 'string') && (typeof config.domains[i].authstrategies.google.clientsecret == 'string') && (passport.indexOf('passport-google-oauth20') == -1)) { passport.push('passport-google-oauth20'); }
4215
if ((typeof config.domains[i].authstrategies.github == 'object') && (typeof config.domains[i].authstrategies.github.clientid == 'string') && (typeof config.domains[i].authstrategies.github.clientsecret == 'string') && (passport.indexOf('passport-github2') == -1)) { passport.push('passport-github2'); }
@@ -4230,6 +4230,7 @@ function mainStart() {
4230
if (config.domains[i].sessionrecording != null) { sessionRecording = true; }
4231
if ((config.domains[i].passwordrequirements != null) && (config.domains[i].passwordrequirements.bancommonpasswords == true)) { wildleek = true; }
4232
if ((config.domains[i].newaccountscaptcha != null) && (config.domains[i].newaccountscaptcha !== false)) { captcha = true; }
4233
+ if ((config.domains[i].passwordrequirements != null) && (typeof config.domains[i].passwordrequirements.duo2factor == 'object') && (passport.indexOf('@duosecurity/duo_universal') == -1)) { passport.push('@duosecurity/duo_universal'); }
4234
}
4235
4236
// Build the list of required modules
meshuser.js
+32
@@ -3628,6 +3628,36 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
3628
parent.parent.DispatchEvent(targets, obj, event);
3629
break;
3630
}
3631
+ case 'otpduo':
3632
+ {
3633
+ // Do not allow this command if 2FA's are locked
3634
+ if ((domain.passwordrequirements) && (domain.passwordrequirements.lock2factor == true)) return;
3635
+
3636
+ // Do not allow this command when logged in using a login token
3637
+ if (req.session.loginToken != null) break;
3638
+
3639
+ if ((user.siteadmin != 0xFFFFFFFF) && ((user.siteadmin & 1024) != 0)) return; // If this account is settings locked, return here.
3640
+
3641
+ // Check input
3642
+ if (typeof command.enabled != 'boolean') return;
3643
+
3644
+ // See if we really need to change the state
3645
+ if ((command.enabled === true) && (user.otpduo != null)) return;
3646
+ if ((command.enabled === false) && (user.otpduo == null)) return;
3647
+
3648
+ // Change the duo 2FA of this user
3649
+ if (command.enabled === true) { user.otpduo = {}; } else { delete user.otpduo; }
3650
+ parent.db.SetUser(user);
3651
+ ws.send(JSON.stringify({ action: 'otpduo', success: true, enabled: command.enabled })); // Report success
3652
+
3653
+ // Notify change
3654
+ var targets = ['*', 'server-users', user._id];
3655
+ if (user.groups) { for (var i in user.groups) { targets.push('server-users:' + i); } }
3656
+ var event = { etype: 'user', userid: user._id, username: user.name, account: parent.CloneSafeUser(user), action: 'accountchange', msgid: command.enabled ? 160 : 161, msg: command.enabled ? "Enabled duo two-factor authentication." : "Disabled duo two-factor authentication.", domain: domain.id };
3657
+ if (db.changeStream) { event.noact = 1; } // If DB change stream is active, don't use this event to change the user. Another event will come.
3658
+ parent.parent.DispatchEvent(targets, obj, event);
3659
+ break;
3660
+ }
3661
case 'otpauth-request':
3662
{
3663
// Do not allow this command if 2FA's are locked
@@ -8224,11 +8254,13 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
8254
var email2fa = (((typeof domain.passwordrequirements != 'object') || (domain.passwordrequirements.email2factor != false)) && (domain.mailserver != null));
8255
var sms2fa = ((parent.parent.smsserver != null) && ((typeof domain.passwordrequirements != 'object') || (domain.passwordrequirements.sms2factor != false)));
8256
var msg2fa = ((parent.parent.msgserver != null) && (parent.parent.msgserver.providers != 0) && ((typeof domain.passwordrequirements != 'object') || (domain.passwordrequirements.msg2factor != false)));
8257
+ var duo2fa = ((typeof domain.passwordrequirements != 'object') || (typeof domain.passwordrequirements.duo2factor == 'object'));
8258
var authFactorCount = 0;
8259
if (typeof user.otpsecret == 'string') { authFactorCount++; } // Authenticator time factor
8260
if (email2fa && (user.otpekey != null)) { authFactorCount++; } // EMail factor
8261
if (sms2fa && (user.phone != null)) { authFactorCount++; } // SMS factor
8262
if (msg2fa && (user.msghandle != null)) { authFactorCount++; } // Messaging factor
8263
+ if (duo2fa && (user.otpduo != null)) { authFactorCount++; } // Duo authentication factor
8264
if (user.otphkeys != null) { authFactorCount += user.otphkeys.length; } // FIDO hardware factor
8265
if ((authFactorCount > 0) && (user.otpkeys != null)) { authFactorCount++; } // Backup keys
8266
return authFactorCount;
public/images/login/2fa-duo-48.png
Binary files /dev/null and b/public/images/login/2fa-duo-48.png differ
public/images/login/2fa-duo-96.png
Binary files /dev/null and b/public/images/login/2fa-duo-96.png differ
translate/translate.json
+1925
-1879
@@ -62,8 +62,8 @@
62
"zh-cht": " + CIRA",
63
"uk": " + CIRA",
64
"xloc": [
65
- "default.handlebars->47->2204",
66
- "default.handlebars->47->2206"
65
+ "default.handlebars->47->2207",
66
+ "default.handlebars->47->2209"
67
]
68
},
69
{
@@ -356,7 +356,7 @@
356
"zh-cht": " 可以使用密碼提示,但不建議使用。",
357
"uk": " Підказку для пароля можна використати, але не рекомендується.",
358
"xloc": [
359
- "default.handlebars->47->2080"
359
+ "default.handlebars->47->2083"
360
]
361
},
362
{
@@ -385,8 +385,8 @@
385
"zh-cht": " 用戶需要先登入到該伺服器一次,然後才能將其新增到裝置群。",
386
"uk": " Користувачам потрібно підключитися хоча б раз до цього серверу, щоб мати можливість бути доданими у групи пристроїв.",
387
"xloc": [
388
- "default.handlebars->47->2328",
389
- "default.handlebars->47->2908"
388
+ "default.handlebars->47->2331",
389
+ "default.handlebars->47->2913"
390
]
391
},
392
{
@@ -1006,7 +1006,7 @@
1006
"zh-cht": "* 8個字符,1個大寫,1個小寫,1個數字,1個非字母數字。",
1007
"uk": "* 8 символів, 1 велика літера, 1 маленька літера, 1 цифра, 1 спеціальний знак.",
1008
"xloc": [
1009
- "default.handlebars->47->2288",
1009
+ "default.handlebars->47->2291",
1010
"default.handlebars->47->528"
1011
]
1012
},
@@ -1112,16 +1112,16 @@
1112
"zh-chs": ",",
1113
"zh-cht": ",",
1114
"xloc": [
1115
- "default-mobile.handlebars->11->1011",
1116
- "default-mobile.handlebars->11->804",
1117
- "default-mobile.handlebars->11->806",
1118
- "default-mobile.handlebars->11->808",
1115
+ "default-mobile.handlebars->11->1012",
1116
+ "default-mobile.handlebars->11->805",
1117
+ "default-mobile.handlebars->11->807",
1118
+ "default-mobile.handlebars->11->809",
1119
"default.handlebars->47->1007",
1120
"default.handlebars->47->1647",
1121
"default.handlebars->47->1649",
1122
"default.handlebars->47->1651",
1123
- "default.handlebars->47->2404",
1124
- "default.handlebars->47->2681"
1123
+ "default.handlebars->47->2407",
1124
+ "default.handlebars->47->2686"
1125
]
1126
},
1127
{
@@ -1293,7 +1293,7 @@
1293
"zh-cht": ",MQTT在線",
1294
"uk": ", MQTT працює",
1295
"xloc": [
1296
- "default-mobile.handlebars->11->913",
1296
+ "default-mobile.handlebars->11->914",
1297
"default.handlebars->47->1757"
1298
]
1299
},
@@ -1324,7 +1324,7 @@
1324
"uk": ", Нема Погодження",
1325
"xloc": [
1326
"default.handlebars->47->1102",
1327
- "default.handlebars->47->2246"
1327
+ "default.handlebars->47->2249"
1328
]
1329
},
1330
{
@@ -1354,7 +1354,7 @@
1354
"uk": ", Запит на погодження",
1355
"xloc": [
1356
"default.handlebars->47->1103",
1357
- "default.handlebars->47->2247"
1357
+ "default.handlebars->47->2250"
1358
]
1359
},
1360
{
@@ -1412,7 +1412,7 @@
1412
"uk": ", Повторюється щодня",
1413
"xloc": [
1414
"default.handlebars->47->1099",
1415
- "default.handlebars->47->2243"
1415
+ "default.handlebars->47->2246"
1416
]
1417
},
1418
{
@@ -1442,7 +1442,7 @@
1442
"uk": ", Повторюється щотижня",
1443
"xloc": [
1444
"default.handlebars->47->1100",
1445
- "default.handlebars->47->2244"
1445
+ "default.handlebars->47->2247"
1446
]
1447
},
1448
{
@@ -1613,7 +1613,7 @@
1613
"uk": ", Панель Засобів",
1614
"xloc": [
1615
"default.handlebars->47->1104",
1616
- "default.handlebars->47->2248"
1616
+ "default.handlebars->47->2251"
1617
]
1618
},
1619
{
@@ -1669,7 +1669,7 @@
1669
"uk": ", Тільки перегляд стільниці",
1670
"xloc": [
1671
"default.handlebars->47->1101",
1672
- "default.handlebars->47->2245"
1672
+ "default.handlebars->47->2248"
1673
]
1674
},
1675
{
@@ -2052,8 +2052,8 @@
2052
"default-mobile.handlebars->11->352",
2053
"default-mobile.handlebars->11->706",
2054
"default.handlebars->47->1539",
2055
- "default.handlebars->47->2470",
2056
- "default.handlebars->47->3144",
2055
+ "default.handlebars->47->2473",
2056
+ "default.handlebars->47->3150",
2057
"sharing.handlebars->11->50"
2058
]
2059
},
@@ -2238,7 +2238,7 @@
2238
"zh-cht": "1個活躍時段",
2239
"uk": "1 активна сесія",
2240
"xloc": [
2241
- "default.handlebars->47->3002"
2241
+ "default.handlebars->47->3008"
2242
]
2243
},
2244
{
@@ -2267,9 +2267,9 @@
2267
"zh-cht": "1個位元組",
2268
"uk": "1 байт",
2269
"xloc": [
2270
- "default-mobile.handlebars->11->1055",
2270
+ "default-mobile.handlebars->11->1056",
2271
"default-mobile.handlebars->11->362",
2272
- "default.handlebars->47->2494",
2272
+ "default.handlebars->47->2497",
2273
"download.handlebars->3->1",
2274
"download2.handlebars->5->1",
2275
"sharing.handlebars->11->101"
@@ -2391,7 +2391,7 @@
2391
"zh-cht": "1群",
2392
"uk": "1 група",
2393
"xloc": [
2394
- "default.handlebars->47->2958"
2394
+ "default.handlebars->47->2963"
2395
]
2396
},
2397
{
@@ -2452,7 +2452,7 @@
2452
"uk": "1 хвилина",
2453
"xloc": [
2454
"default.handlebars->47->1212",
2455
- "default.handlebars->47->2045"
2455
+ "default.handlebars->47->2048"
2456
]
2457
},
2458
{
@@ -2541,7 +2541,7 @@
2541
"zh-cht": "有1個用戶沒有顯示,請使用搜尋框搜尋用戶...",
2542
"uk": "ще 1 користувача не показано, використовуйте поле пошуку для перегляду користувачів...",
2543
"xloc": [
2544
- "default.handlebars->47->2713"
2544
+ "default.handlebars->47->2718"
2545
]
2546
},
2547
{
@@ -2775,7 +2775,7 @@
2775
"default-mobile.handlebars->11->431",
2776
"default-mobile.handlebars->11->435",
2777
"default-mobile.handlebars->11->439",
2778
- "default.handlebars->47->2717",
2778
+ "default.handlebars->47->2722",
2779
"default.handlebars->47->447",
2780
"default.handlebars->47->450",
2781
"default.handlebars->47->454",
@@ -2992,7 +2992,7 @@
2992
"uk": "10 хвилин",
2993
"xloc": [
2994
"default.handlebars->47->1214",
2995
- "default.handlebars->47->2047"
2995
+ "default.handlebars->47->2050"
2996
]
2997
},
2998
{
@@ -3197,7 +3197,7 @@
3197
"uk": "12 годин",
3198
"xloc": [
3199
"default.handlebars->47->1222",
3200
- "default.handlebars->47->2055"
3200
+ "default.handlebars->47->2058"
3201
]
3202
},
3203
{
@@ -3340,7 +3340,7 @@
3340
"uk": "15 хвилин",
3341
"xloc": [
3342
"default.handlebars->47->1215",
3343
- "default.handlebars->47->2048"
3343
+ "default.handlebars->47->2051"
3344
]
3345
},
3346
{
@@ -3370,7 +3370,7 @@
3370
"uk": "16 годин",
3371
"xloc": [
3372
"default.handlebars->47->1223",
3373
- "default.handlebars->47->2056"
3373
+ "default.handlebars->47->2059"
3374
]
3375
},
3376
{
@@ -3516,7 +3516,7 @@
3516
"uk": "2 дні",
3517
"xloc": [
3518
"default.handlebars->47->1225",
3519
- "default.handlebars->47->2058"
3519
+ "default.handlebars->47->2061"
3520
]
3521
},
3522
{
@@ -3546,7 +3546,7 @@
3546
"uk": "2 години",
3547
"xloc": [
3548
"default.handlebars->47->1219",
3549
- "default.handlebars->47->2052"
3549
+ "default.handlebars->47->2055"
3550
]
3551
},
3552
{
@@ -3753,7 +3753,7 @@
3753
"uk": "24 години",
3754
"xloc": [
3755
"default.handlebars->47->1224",
3756
- "default.handlebars->47->2057"
3756
+ "default.handlebars->47->2060"
3757
]
3758
},
3759
{
@@ -3838,7 +3838,7 @@
3838
"zh-cht": "2FA備份代碼已清除",
3839
"uk": "ДФА резервні коди очищено",
3840
"xloc": [
3841
- "default.handlebars->47->2607"
3841
+ "default.handlebars->47->2610"
3842
]
3843
},
3844
{
@@ -3897,7 +3897,7 @@
3897
"zh-cht": "第二個因素",
3898
"uk": "Двофакторний",
3899
"xloc": [
3900
- "default.handlebars->47->3181"
3900
+ "default.handlebars->47->3187"
3901
]
3902
},
3903
{
@@ -3926,8 +3926,8 @@
3926
"zh-cht": "啟用第二因素身份驗證",
3927
"uk": "Двофакторна автентифікація увімкнена",
3928
"xloc": [
3929
- "default.handlebars->47->2731",
3930
- "default.handlebars->47->2983"
3929
+ "default.handlebars->47->2736",
3930
+ "default.handlebars->47->2989"
3931
]
3932
},
3933
{
@@ -4098,7 +4098,7 @@
4098
"uk": "30 хвилин",
4099
"xloc": [
4100
"default.handlebars->47->1216",
4101
- "default.handlebars->47->2049"
4101
+ "default.handlebars->47->2052"
4102
]
4103
},
4104
{
@@ -4127,7 +4127,7 @@
4127
"zh-cht": "32 位",
4128
"uk": "32-біта",
4129
"xloc": [
4130
- "default-mobile.handlebars->11->743",
4130
+ "default-mobile.handlebars->11->744",
4131
"default.handlebars->47->1604"
4132
]
4133
},
@@ -4214,7 +4214,7 @@
4214
"uk": "4 дні",
4215
"xloc": [
4216
"default.handlebars->47->1226",
4217
- "default.handlebars->47->2059"
4217
+ "default.handlebars->47->2062"
4218
]
4219
},
4220
{
@@ -4244,7 +4244,7 @@
4244
"uk": "4 години",
4245
"xloc": [
4246
"default.handlebars->47->1220",
4247
- "default.handlebars->47->2053"
4247
+ "default.handlebars->47->2056"
4248
]
4249
},
4250
{
@@ -4391,7 +4391,7 @@
4391
"uk": "45 хвилин",
4392
"xloc": [
4393
"default.handlebars->47->1217",
4394
- "default.handlebars->47->2050"
4394
+ "default.handlebars->47->2053"
4395
]
4396
},
4397
{
@@ -4450,7 +4450,7 @@
4450
"uk": "5 хвилин",
4451
"xloc": [
4452
"default.handlebars->47->1213",
4453
- "default.handlebars->47->2046"
4453
+ "default.handlebars->47->2049"
4454
]
4455
},
4456
{
@@ -4659,7 +4659,7 @@
4659
"uk": "60 хвилин",
4660
"xloc": [
4661
"default.handlebars->47->1218",
4662
- "default.handlebars->47->2051"
4662
+ "default.handlebars->47->2054"
4663
]
4664
},
4665
{
@@ -4745,7 +4745,7 @@
4745
"zh-chs": "64 位",
4746
"zh-cht": "64 位",
4747
"xloc": [
4748
- "default-mobile.handlebars->11->745",
4748
+ "default-mobile.handlebars->11->746",
4749
"default.handlebars->47->1606"
4750
]
4751
},
@@ -4937,7 +4937,7 @@
4937
"zh-cht": "7天",
4938
"uk": "7 днів",
4939
"xloc": [
4940
- "default.handlebars->47->2060"
4940
+ "default.handlebars->47->2063"
4941
]
4942
},
4943
{
@@ -5027,7 +5027,7 @@
5027
"uk": "8 годин",
5028
"xloc": [
5029
"default.handlebars->47->1221",
5030
- "default.handlebars->47->2054",
5030
+ "default.handlebars->47->2057",
5031
"default.handlebars->47->556",
5032
"default.handlebars->47->570"
5033
]
@@ -5355,7 +5355,7 @@
5355
"pl": "<b>Serwery DNS</b>",
5356
"uk": "<b>DNS Сервери</b>",
5357
"xloc": [
5358
- "default-mobile.handlebars->11->807",
5358
+ "default-mobile.handlebars->11->808",
5359
"default.handlebars->47->1650"
5360
]
5361
},
@@ -5518,7 +5518,7 @@
5518
"zh-cht": "ACM",
5519
"xloc": [
5520
"default-mobile.handlebars->11->510",
5521
- "default.handlebars->47->2224",
5521
+ "default.handlebars->47->2227",
5522
"default.handlebars->47->436",
5523
"default.handlebars->47->916"
5524
]
@@ -5645,7 +5645,7 @@
5645
"zh-chs": "操作系统",
5646
"zh-cht": "AMT操作系統",
5647
"xloc": [
5648
- "default.handlebars->47->3326"
5648
+ "default.handlebars->47->3332"
5649
]
5650
},
5651
{
@@ -5673,7 +5673,7 @@
5673
"zh-chs": "AMT-Redir",
5674
"zh-cht": "AMT-Redir",
5675
"xloc": [
5676
- "default.handlebars->47->3188"
5676
+ "default.handlebars->47->3194"
5677
]
5678
},
5679
{
@@ -5701,7 +5701,7 @@
5701
"zh-chs": "AMT-WSMAN",
5702
"zh-cht": "AMT-WSMAN",
5703
"xloc": [
5704
- "default.handlebars->47->3187"
5704
+ "default.handlebars->47->3193"
5705
]
5706
},
5707
{
@@ -5719,7 +5719,7 @@
5719
"pl": "Wersja APK MeshAgent",
5720
"uk": "MeshAgent версія APK",
5721
"xloc": [
5722
- "default-mobile.handlebars->11->964",
5722
+ "default-mobile.handlebars->11->965",
5723
"default.handlebars->47->647"
5724
]
5725
},
@@ -5914,8 +5914,8 @@
5914
"zh-chs": "影音",
5915
"zh-cht": "視聽",
5916
"xloc": [
5917
- "default-mobile.handlebars->11->750",
5918
- "default-mobile.handlebars->11->752",
5917
+ "default-mobile.handlebars->11->751",
5918
+ "default-mobile.handlebars->11->753",
5919
"default.handlebars->47->935",
5920
"default.handlebars->47->937"
5921
]
@@ -5946,7 +5946,7 @@
5946
"zh-cht": "拒絕存取",
5947
"uk": "Доступ Відмовлено",
5948
"xloc": [
5949
- "default-mobile.handlebars->11->914",
5949
+ "default-mobile.handlebars->11->915",
5950
"default.handlebars->47->1758"
5951
]
5952
},
@@ -6036,7 +6036,7 @@
6036
"zh-cht": "存取伺服器檔案",
6037
"uk": "Доступ до файлів серверу",
6038
"xloc": [
6039
- "default.handlebars->47->2914"
6039
+ "default.handlebars->47->2919"
6040
]
6041
},
6042
{
@@ -6163,9 +6163,9 @@
6163
"default-mobile.handlebars->11->479",
6164
"default-mobile.handlebars->11->90",
6165
"default-mobile.handlebars->container->page_content->column_l->p3->p3info->3->p3AccountActions->p2AccountSecurity->1->0",
6166
- "default.handlebars->47->2089",
6167
- "default.handlebars->47->2091",
6168
- "default.handlebars->47->3380",
6166
+ "default.handlebars->47->2092",
6167
+ "default.handlebars->47->2094",
6168
+ "default.handlebars->47->3386",
6169
"default.handlebars->47->729",
6170
"default.handlebars->47->876",
6171
"default.handlebars->47->878"
@@ -6197,8 +6197,8 @@
6197
"zh-cht": "帳號設定",
6198
"uk": "Налаштування Акаунту",
6199
"xloc": [
6200
- "default-mobile.handlebars->11->1022",
6201
- "default.handlebars->47->3251"
6200
+ "default-mobile.handlebars->11->1023",
6201
+ "default.handlebars->47->3257"
6202
]
6203
},
6204
{
@@ -6271,7 +6271,7 @@
6271
"pl": "Konto zmienione di synchronizacji z danymi LDAP.",
6272
"uk": "Акаунт змінено на синхронізацію з даними LDAP.",
6273
"xloc": [
6274
- "default.handlebars->47->2668"
6274
+ "default.handlebars->47->2671"
6275
]
6276
},
6277
{
@@ -6300,7 +6300,7 @@
6300
"zh-cht": "帳戶已更改:{0}",
6301
"uk": "Акаунт змінено: {0}",
6302
"xloc": [
6303
- "default.handlebars->47->2580"
6303
+ "default.handlebars->47->2583"
6304
]
6305
},
6306
{
@@ -6329,7 +6329,7 @@
6329
"zh-cht": "創建帳戶,電子郵件為{0}",
6330
"uk": "Акаунт створено з е-поштою {0}",
6331
"xloc": [
6332
- "default.handlebars->47->2579"
6332
+ "default.handlebars->47->2582"
6333
]
6334
},
6335
{
@@ -6358,7 +6358,7 @@
6358
"zh-cht": "已創建帳戶,名稱為 {0}。",
6359
"uk": "Акаунт створено із іменем {0}.",
6360
"xloc": [
6361
- "default.handlebars->47->2642"
6361
+ "default.handlebars->47->2645"
6362
]
6363
},
6364
{
@@ -6387,7 +6387,7 @@
6387
"zh-cht": "帳戶已創建,用戶名是{0}",
6388
"uk": "Акаунт створено із іменем користувача {0}",
6389
"xloc": [
6390
- "default.handlebars->47->2578"
6390
+ "default.handlebars->47->2581"
6391
]
6392
},
6393
{
@@ -6418,8 +6418,8 @@
6418
"xloc": [
6419
"default-mobile.handlebars->11->67",
6420
"default.handlebars->47->212",
6421
- "default.handlebars->47->2733",
6422
- "default.handlebars->47->2911"
6421
+ "default.handlebars->47->2738",
6422
+ "default.handlebars->47->2916"
6423
]
6424
},
6425
{
@@ -6448,8 +6448,8 @@
6448
"zh-cht": "達到帳戶限制。",
6449
"uk": "Досягнуто обмеження акаунту.",
6450
"xloc": [
6451
- "default-mobile.handlebars->11->1034",
6452
- "default.handlebars->47->3263",
6451
+ "default-mobile.handlebars->11->1035",
6452
+ "default.handlebars->47->3269",
6453
"login-mobile.handlebars->5->6",
6454
"login.handlebars->5->8",
6455
"login2.handlebars->7->207"
@@ -6512,7 +6512,7 @@
6512
"zh-cht": "帳號登錄",
6513
"uk": "Вхід до акаунту",
6514
"xloc": [
6515
- "default.handlebars->47->2515"
6515
+ "default.handlebars->47->2518"
6516
]
6517
},
6518
{
@@ -6541,7 +6541,7 @@
6541
"zh-cht": "從 {0}、{1}、{2} 登錄帳戶",
6542
"uk": "Вхід до акаунту з {0}, {1}, {2}",
6543
"xloc": [
6544
- "default.handlebars->47->2621"
6544
+ "default.handlebars->47->2624"
6545
]
6546
},
6547
{
@@ -6555,7 +6555,7 @@
6555
"pl": "Zapisy logowania tokenami użytkownika",
6556
"uk": "Записи токенів входу до акаунту",
6557
"xloc": [
6558
- "default.handlebars->47->3230"
6558
+ "default.handlebars->47->3236"
6559
]
6560
},
6561
{
@@ -6584,7 +6584,7 @@
6584
"zh-cht": "帳戶登出",
6585
"uk": "Вихід з акаунту",
6586
"xloc": [
6587
- "default.handlebars->47->2516"
6587
+ "default.handlebars->47->2519"
6588
]
6589
},
6590
{
@@ -6644,7 +6644,7 @@
6644
"zh-cht": "帳戶密碼已更改:{0}",
6645
"uk": "Пароль до акаунту змінено: {0}",
6646
"xloc": [
6647
- "default.handlebars->47->2588"
6647
+ "default.handlebars->47->2591"
6648
]
6649
},
6650
{
@@ -6673,7 +6673,7 @@
6673
"zh-cht": "帳戶已刪除",
6674
"uk": "Акаунт видалено",
6675
"xloc": [
6676
- "default.handlebars->47->2577"
6676
+ "default.handlebars->47->2580"
6677
]
6678
},
6679
{
@@ -6731,7 +6731,7 @@
6731
"zh-cht": "指令",
6732
"uk": "Дія",
6733
"xloc": [
6734
- "default-mobile.handlebars->11->920",
6734
+ "default-mobile.handlebars->11->921",
6735
"default.handlebars->47->1764",
6736
"default.handlebars->container->column_l->p42->p42tbl->1->0->8"
6737
]
@@ -6915,7 +6915,7 @@
6915
"zh-cht": "如果ACM失敗,則激活到CCM",
6916
"uk": "Активувати CCM, якщо ACM зазнало невдачі",
6917
"xloc": [
6918
- "default.handlebars->47->2279"
6918
+ "default.handlebars->47->2282"
6919
]
6920
},
6921
{
@@ -6946,7 +6946,7 @@
6946
"xloc": [
6947
"default-mobile.handlebars->11->505",
6948
"default-mobile.handlebars->11->507",
6949
- "default-mobile.handlebars->11->816",
6949
+ "default-mobile.handlebars->11->817",
6950
"default.handlebars->47->1659",
6951
"default.handlebars->47->909",
6952
"default.handlebars->47->911"
@@ -7008,7 +7008,7 @@
7008
"uk": "Спільний доступ до пристрою активний",
7009
"xloc": [
7010
"default.handlebars->47->1084",
7011
- "default.handlebars->47->2228"
7011
+ "default.handlebars->47->2231"
7012
]
7013
},
7014
{
@@ -7037,7 +7037,7 @@
7037
"zh-cht": "活動登錄令牌",
7038
"uk": "Активні Токени Входу",
7039
"xloc": [
7040
- "default.handlebars->47->2120"
7040
+ "default.handlebars->47->2123"
7041
]
7042
},
7043
{
@@ -7066,7 +7066,7 @@
7066
"zh-cht": "活躍用戶",
7067
"uk": "Активний Користувач",
7068
"xloc": [
7069
- "default-mobile.handlebars->11->777",
7069
+ "default-mobile.handlebars->11->778",
7070
"default.handlebars->47->962"
7071
]
7072
},
@@ -7096,7 +7096,7 @@
7096
"zh-cht": "活躍用戶",
7097
"uk": "Користувачі Активні",
7098
"xloc": [
7099
- "default-mobile.handlebars->11->776",
7099
+ "default-mobile.handlebars->11->777",
7100
"default.handlebars->47->961"
7101
]
7102
},
@@ -7235,7 +7235,7 @@
7235
"zh-cht": "新增代理",
7236
"uk": "Додати Агента",
7237
"xloc": [
7238
- "default.handlebars->47->2218",
7238
+ "default.handlebars->47->2221",
7239
"default.handlebars->47->488"
7240
]
7241
},
@@ -7291,9 +7291,9 @@
7291
"zh-cht": "新增裝置",
7292
"uk": "Додати Пристрій",
7293
"xloc": [
7294
- "default.handlebars->47->2222",
7295
- "default.handlebars->47->2886",
7296
- "default.handlebars->47->3080",
7294
+ "default.handlebars->47->2225",
7295
+ "default.handlebars->47->2891",
7296
+ "default.handlebars->47->3086",
7297
"default.handlebars->47->492"
7298
]
7299
},
@@ -7352,9 +7352,9 @@
7352
"zh-cht": "新增裝置群",
7353
"uk": "Додати Групу Пристроїв",
7354
"xloc": [
7355
- "default.handlebars->47->2365",
7356
- "default.handlebars->47->2880",
7357
- "default.handlebars->47->3068",
7355
+ "default.handlebars->47->2368",
7356
+ "default.handlebars->47->2885",
7357
+ "default.handlebars->47->3074",
7358
"default.handlebars->47->389"
7359
]
7360
},
@@ -7384,7 +7384,7 @@
7384
"zh-cht": "新增裝置群權限",
7385
"uk": "Додайте Дозволи Групи Пристроїв",
7386
"xloc": [
7387
- "default.handlebars->47->2362"
7387
+ "default.handlebars->47->2365"
7388
]
7389
},
7390
{
@@ -7413,8 +7413,8 @@
7413
"zh-cht": "新增裝置權限",
7414
"uk": "Додати Дозволи Пристрою",
7415
"xloc": [
7416
- "default.handlebars->47->2367",
7417
- "default.handlebars->47->2369"
7416
+ "default.handlebars->47->2370",
7417
+ "default.handlebars->47->2372"
7418
]
7419
},
7420
{
@@ -7582,7 +7582,7 @@
7582
"zh-cht": "新增成員身份",
7583
"uk": "Додати Приналежність",
7584
"xloc": [
7585
- "default.handlebars->47->3100"
7585
+ "default.handlebars->47->3106"
7586
]
7587
},
7588
{
@@ -7666,8 +7666,8 @@
7666
"zh-cht": "新增安全密鑰",
7667
"uk": "Додати Ключ Безпеки",
7668
"xloc": [
7669
- "default.handlebars->47->1835",
7670
- "default.handlebars->47->1836",
7669
+ "default.handlebars->47->1838",
7670
+ "default.handlebars->47->1839",
7671
"default.handlebars->47->243",
7672
"default.handlebars->47->245",
7673
"default.handlebars->47->248",
@@ -7700,7 +7700,7 @@
7700
"zh-cht": "新增用戶",
7701
"uk": "Додати Користувача",
7702
"xloc": [
7703
- "default-mobile.handlebars->11->946",
7703
+ "default-mobile.handlebars->11->947",
7704
"default.handlebars->47->1076"
7705
]
7706
},
@@ -7730,7 +7730,7 @@
7730
"zh-cht": "新增用戶裝置權限",
7731
"uk": "Додати Дозволи для Пристрою Користувача",
7732
"xloc": [
7733
- "default.handlebars->47->2372"
7733
+ "default.handlebars->47->2375"
7734
]
7735
},
7736
{
@@ -7760,9 +7760,9 @@
7760
"uk": "Додати Групу Користувачів",
7761
"xloc": [
7762
"default.handlebars->47->1077",
7763
- "default.handlebars->47->2212",
7764
- "default.handlebars->47->2364",
7765
- "default.handlebars->47->3074"
7763
+ "default.handlebars->47->2215",
7764
+ "default.handlebars->47->2367",
7765
+ "default.handlebars->47->3080"
7766
]
7767
},
7768
{
@@ -7791,7 +7791,7 @@
7791
"zh-cht": "新增用戶群裝置權限",
7792
"uk": "Додати Дозволи на Пристрої Групи Користувачів",
7793
"xloc": [
7794
- "default.handlebars->47->2374"
7794
+ "default.handlebars->47->2377"
7795
]
7796
},
7797
{
@@ -7820,7 +7820,7 @@
7820
"zh-cht": "將用戶新增到裝置群",
7821
"uk": "Додати Користувача до Групи Пристроїв",
7822
"xloc": [
7823
- "default-mobile.handlebars->11->987"
7823
+ "default-mobile.handlebars->11->988"
7824
]
7825
},
7826
{
@@ -7875,8 +7875,8 @@
7875
"zh-cht": "新增用戶",
7876
"uk": "Додати Користувачів",
7877
"xloc": [
7878
- "default.handlebars->47->2211",
7879
- "default.handlebars->47->2875"
7878
+ "default.handlebars->47->2214",
7879
+ "default.handlebars->47->2880"
7880
]
7881
},
7882
{
@@ -7905,7 +7905,7 @@
7905
"zh-cht": "將用戶新增到裝置群",
7906
"uk": "Додати Користувачів до Групи Пристроїв",
7907
"xloc": [
7908
- "default.handlebars->47->2361"
7908
+ "default.handlebars->47->2364"
7909
]
7910
},
7911
{
@@ -7934,7 +7934,7 @@
7934
"zh-cht": "將用戶新增到用戶群",
7935
"uk": "Додати Користувачів до Групи Користувачів",
7936
"xloc": [
7937
- "default.handlebars->47->2910"
7937
+ "default.handlebars->47->2915"
7938
]
7939
},
7940
{
@@ -8134,7 +8134,7 @@
8134
"zh-cht": "通過安裝Mesh Agent將新電腦新增到該裝置群。",
8135
"uk": "Додати новий комп'ютер до цієї групи пристроїв, встановивши MeshAgent.",
8136
"xloc": [
8137
- "default.handlebars->47->2217",
8137
+ "default.handlebars->47->2220",
8138
"default.handlebars->47->487"
8139
]
8140
},
@@ -8164,7 +8164,7 @@
8164
"zh-cht": "添加位於本地網絡上的設備。",
8165
"uk": "Додати пристрій, що знаходиться в локальній мережі.",
8166
"xloc": [
8167
- "default.handlebars->47->2221",
8167
+ "default.handlebars->47->2224",
8168
"default.handlebars->47->491"
8169
]
8170
},
@@ -8281,7 +8281,7 @@
8281
"zh-cht": "添加了身份驗證應用程序",
8282
"uk": "Додано застосунок автентифікації",
8283
"xloc": [
8284
- "default.handlebars->47->2604"
8284
+ "default.handlebars->47->2607"
8285
]
8286
},
8287
{
@@ -8310,7 +8310,7 @@
8310
"zh-cht": "已將設備共享{0}從{1}添加到{2}",
8311
"uk": "Додано поширення пристрою {0} від {1} до {2}",
8312
"xloc": [
8313
- "default.handlebars->47->2615"
8313
+ "default.handlebars->47->2618"
8314
]
8315
},
8316
{
@@ -8339,7 +8339,7 @@
8339
"zh-cht": "添加了每天重複的設備共享 {0}。",
8340
"uk": "Додано поширення пристрою {0}, із щоденною переактивацією.",
8341
"xloc": [
8342
- "default.handlebars->47->2652"
8342
+ "default.handlebars->47->2655"
8343
]
8344
},
8345
{
@@ -8368,7 +8368,7 @@
8368
"zh-cht": "添加了每週重複的設備共享 {0}。",
8369
"uk": "Додано поширення пристрою {0}, із щотижневою переактивацією.",
8370
"xloc": [
8371
- "default.handlebars->47->2653"
8371
+ "default.handlebars->47->2656"
8372
]
8373
},
8374
{
@@ -8397,7 +8397,7 @@
8397
"zh-cht": "添加了無限時間的設備共享 {0}。",
8398
"uk": "Додано поширення пристрою {0} без обмеження часу.",
8399
"xloc": [
8400
- "default.handlebars->47->2645"
8400
+ "default.handlebars->47->2648"
8401
]
8402
},
8403
{
@@ -8426,8 +8426,8 @@
8426
"zh-cht": "已將設備{0}添加到設備組{1}",
8427
"uk": "Пристрій {0} додано до групи пристроїв {1}",
8428
"xloc": [
8429
- "default.handlebars->47->2571",
8430
- "default.handlebars->47->2598"
8429
+ "default.handlebars->47->2574",
8430
+ "default.handlebars->47->2601"
8431
]
8432
},
8433
{
@@ -8456,7 +8456,7 @@
8456
"zh-cht": "添加了登錄令牌",
8457
"uk": "Додано токен лоґіну",
8458
"xloc": [
8459
- "default.handlebars->47->2629"
8459
+ "default.handlebars->47->2632"
8460
]
8461
},
8462
{
@@ -8485,7 +8485,7 @@
8485
"zh-cht": "增加推送通知認證設備",
8486
"uk": "На пристрій додано автентифікацію через push-сповіщення",
8487
"xloc": [
8488
- "default.handlebars->47->2627"
8488
+ "default.handlebars->47->2630"
8489
]
8490
},
8491
{
@@ -8514,7 +8514,7 @@
8514
"zh-cht": "添加了安全密鑰",
8515
"uk": "Додано Ключ Безпеки",
8516
"xloc": [
8517
- "default.handlebars->47->2609"
8517
+ "default.handlebars->47->2612"
8518
]
8519
},
8520
{
@@ -8543,7 +8543,7 @@
8543
"zh-cht": "已將用戶組{0}添加到設備組{1}",
8544
"uk": "Групу користувачів {0} додано до групи пристроїв {1}",
8545
"xloc": [
8546
- "default.handlebars->47->2582"
8546
+ "default.handlebars->47->2585"
8547
]
8548
},
8549
{
@@ -8572,8 +8572,8 @@
8572
"zh-cht": "已將用戶{0}添加到用戶組{1}",
8573
"uk": "Додано користувача {0} до групи користувачів {1}",
8574
"xloc": [
8575
- "default.handlebars->47->2585",
8576
- "default.handlebars->47->2594"
8575
+ "default.handlebars->47->2588",
8576
+ "default.handlebars->47->2597"
8577
]
8578
},
8579
{
@@ -8660,7 +8660,7 @@
8660
"zh-cht": "管理員控制模式(ACM)",
8661
"uk": "Режим Керування Адміністратора (eng. ACM)",
8662
"xloc": [
8663
- "default-mobile.handlebars->11->818",
8663
+ "default-mobile.handlebars->11->819",
8664
"default.handlebars->47->1661"
8665
]
8666
},
@@ -8690,7 +8690,7 @@
8690
"zh-cht": "管理員憑證",
8691
"uk": "Облікові Дані Адміністратора",
8692
"xloc": [
8693
- "default-mobile.handlebars->11->824",
8693
+ "default-mobile.handlebars->11->825",
8694
"default.handlebars->47->1667"
8695
]
8696
},
@@ -8750,7 +8750,7 @@
8750
"zh-cht": "管理領域",
8751
"uk": "Області Адміністратора",
8752
"xloc": [
8753
- "default.handlebars->47->2962"
8753
+ "default.handlebars->47->2967"
8754
]
8755
},
8756
{
@@ -8809,7 +8809,7 @@
8809
"zh-cht": "管理領域",
8810
"uk": "Адміністративні Області",
8811
"xloc": [
8812
- "default.handlebars->47->2807"
8812
+ "default.handlebars->47->2812"
8813
]
8814
},
8815
{
@@ -8838,7 +8838,7 @@
8838
"zh-cht": "管理員",
8839
"uk": "Адміністратор",
8840
"xloc": [
8841
- "default.handlebars->47->2725"
8841
+ "default.handlebars->47->2730"
8842
]
8843
},
8844
{
@@ -8868,7 +8868,7 @@
8868
"uk": "Африканська",
8869
"xloc": [
8870
"default-mobile.handlebars->11->107",
8871
- "default.handlebars->47->1838",
8871
+ "default.handlebars->47->1841",
8872
"login2.handlebars->7->1"
8873
]
8874
},
@@ -8902,9 +8902,9 @@
8902
"default-mobile.handlebars->11->469",
8903
"default-mobile.handlebars->11->526",
8904
"default-mobile.handlebars->container->page_content->column_l->p10->p10console->consoleTable->1->4->1->1->1->0->p15outputselecttd->p15outputselect->p15outputselect1",
8905
- "default.handlebars->47->2445",
8906
- "default.handlebars->47->2458",
8907
- "default.handlebars->47->3324",
8905
+ "default.handlebars->47->2448",
8906
+ "default.handlebars->47->2461",
8907
+ "default.handlebars->47->3330",
8908
"default.handlebars->47->409",
8909
"default.handlebars->47->717",
8910
"default.handlebars->container->column_l->p15->consoleTable->1->6->1->1->1->0->p15outputselecttd->p15outputselect->p15outputselect1",
@@ -8937,8 +8937,8 @@
8937
"zh-cht": "代理+Intel® AMT",
8938
"uk": "Агент + Intel® AMT",
8939
"xloc": [
8940
- "default.handlebars->47->2447",
8941
- "default.handlebars->47->2460"
8940
+ "default.handlebars->47->2450",
8941
+ "default.handlebars->47->2463"
8942
]
8943
},
8944
{
@@ -8998,8 +8998,8 @@
8998
"uk": "Консоль Агента",
8999
"xloc": [
9000
"default-mobile.handlebars->11->605",
9001
- "default-mobile.handlebars->11->993",
9002
- "default.handlebars->47->2382",
9001
+ "default-mobile.handlebars->11->994",
9002
+ "default.handlebars->47->2385",
9003
"default.handlebars->47->807"
9004
]
9005
},
@@ -9029,7 +9029,7 @@
9029
"zh-cht": "代理錯誤計數器",
9030
"uk": "Лічильник Помилок Агента",
9031
"xloc": [
9032
- "default.handlebars->47->3293"
9032
+ "default.handlebars->47->3299"
9033
]
9034
},
9035
{
@@ -9243,7 +9243,7 @@
9243
"uk": "Само-Поширення Агента",
9244
"xloc": [
9245
"default.handlebars->47->1105",
9246
- "default.handlebars->47->2249"
9246
+ "default.handlebars->47->2252"
9247
]
9248
},
9249
{
@@ -9272,7 +9272,7 @@
9272
"zh-cht": "代理時段",
9273
"uk": "Сесії Агента",
9274
"xloc": [
9275
- "default.handlebars->47->3309"
9275
+ "default.handlebars->47->3315"
9276
]
9277
},
9278
{
@@ -9387,7 +9387,7 @@
9387
"zh-cht": "代理類型",
9388
"uk": "Тип Агента",
9389
"xloc": [
9390
- "default.handlebars->47->2456",
9390
+ "default.handlebars->47->2459",
9391
"default.handlebars->container->column_l->p21->p21main->1->1->meshOsChartDiv->1"
9392
]
9393
},
@@ -9447,7 +9447,7 @@
9447
"zh-cht": "代理關閉了與{0}%代理到服務器壓縮的會話。已發送:{1},已壓縮:{2}",
9448
"uk": "Агент закрив сесію зі стисненням {0}% між агентом і сервером. Надіслано: {1}, стиснуто: {2}",
9449
"xloc": [
9450
- "default.handlebars->47->2568"
9450
+ "default.handlebars->47->2571"
9451
]
9452
},
9453
{
@@ -9672,7 +9672,7 @@
9672
"zh-cht": "代理離線",
9673
"uk": "Агент офлайн",
9674
"xloc": [
9675
- "default-mobile.handlebars->11->912",
9675
+ "default-mobile.handlebars->11->913",
9676
"default.handlebars->47->1756"
9677
]
9678
},
@@ -9702,7 +9702,7 @@
9702
"zh-cht": "代理在線",
9703
"uk": "Агент онлайн",
9704
"xloc": [
9705
- "default-mobile.handlebars->11->911",
9705
+ "default-mobile.handlebars->11->912",
9706
"default.handlebars->47->1755"
9707
]
9708
},
@@ -9943,8 +9943,8 @@
9943
"zh-cht": "代理",
9944
"uk": "Агент",
9945
"xloc": [
9946
- "default.handlebars->47->2413",
9947
- "default.handlebars->47->3337",
9946
+ "default.handlebars->47->2416",
9947
+ "default.handlebars->47->3343",
9948
"default.handlebars->47->575"
9949
]
9950
},
@@ -9975,7 +9975,7 @@
9975
"uk": "Албанська",
9976
"xloc": [
9977
"default-mobile.handlebars->11->108",
9978
- "default.handlebars->47->1839",
9978
+ "default.handlebars->47->1842",
9979
"login2.handlebars->7->2"
9980
]
9981
},
@@ -10019,7 +10019,7 @@
10019
"default-mobile.handlebars->11->361",
10020
"default-mobile.handlebars->11->707",
10021
"default-mobile.handlebars->11->709",
10022
- "default.handlebars->47->3157",
10022
+ "default.handlebars->47->3163",
10023
"default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->devListToolbar->DevFilterSelect->1"
10024
]
10025
},
@@ -10049,7 +10049,7 @@
10049
"zh-cht": "全部可用",
10050
"uk": "Усі Наявні",
10051
"xloc": [
10052
- "default.handlebars->47->2687"
10052
+ "default.handlebars->47->2692"
10053
]
10054
},
10055
{
@@ -10078,7 +10078,7 @@
10078
"zh-cht": "所有可用的代理",
10079
"uk": "Усі Наявні Агенти",
10080
"xloc": [
10081
- "default.handlebars->47->2414",
10081
+ "default.handlebars->47->2417",
10082
"default.handlebars->47->576"
10083
]
10084
},
@@ -10137,7 +10137,7 @@
10137
"zh-cht": "所有事件",
10138
"uk": "Усі Події",
10139
"xloc": [
10140
- "default.handlebars->47->2685"
10140
+ "default.handlebars->47->2690"
10141
]
10142
},
10143
{
@@ -10237,8 +10237,8 @@
10237
"zh-cht": "允許用戶管理此裝置群和該群中的裝置。",
10238
"uk": "Дозволити користувачам керувати цією групою пристроїв і пристроями в цій групі.",
10239
"xloc": [
10240
- "default.handlebars->47->2326",
10241
- "default.handlebars->47->2907"
10240
+ "default.handlebars->47->2329",
10241
+ "default.handlebars->47->2912"
10242
]
10243
},
10244
{
@@ -10267,7 +10267,7 @@
10267
"zh-cht": "允許用戶管理此裝置。",
10268
"uk": "Дозволити користувачам керувати цим пристроєм.",
10269
"xloc": [
10270
- "default.handlebars->47->2327"
10270
+ "default.handlebars->47->2330"
10271
]
10272
},
10273
{
@@ -10591,9 +10591,9 @@
10591
"zh-cht": "一直通知",
10592
"uk": "Завжди Сповіщувати",
10593
"xloc": [
10594
- "default.handlebars->47->2188",
10595
- "default.handlebars->47->2866",
10596
- "default.handlebars->47->2971",
10594
+ "default.handlebars->47->2191",
10595
+ "default.handlebars->47->2871",
10596
+ "default.handlebars->47->2976",
10597
"default.handlebars->47->971"
10598
]
10599
},
@@ -10623,9 +10623,9 @@
10623
"zh-cht": "一直提示",
10624
"uk": "Завжди Запитувати",
10625
"xloc": [
10626
- "default.handlebars->47->2189",
10627
- "default.handlebars->47->2867",
10628
- "default.handlebars->47->2972",
10626
+ "default.handlebars->47->2192",
10627
+ "default.handlebars->47->2872",
10628
+ "default.handlebars->47->2977",
10629
"default.handlebars->47->972"
10630
]
10631
},
@@ -10725,7 +10725,7 @@
10725
"pl": "Wystąpił nieznany błąd.",
10726
"uk": "Сталася невідома помилка.",
10727
"xloc": [
10728
- "default.handlebars->47->3109"
10728
+ "default.handlebars->47->3115"
10729
]
10730
},
10731
{
@@ -10787,7 +10787,7 @@
10787
"zh-cht": "Android APK",
10788
"uk": "Android APK",
10789
"xloc": [
10790
- "default-mobile.handlebars->11->965",
10790
+ "default-mobile.handlebars->11->966",
10791
"default.handlebars->47->646"
10792
]
10793
},
@@ -10875,7 +10875,7 @@
10875
"zh-cht": "安卓安裝",
10876
"uk": "Інсталяція Android",
10877
"xloc": [
10878
- "default-mobile.handlebars->11->967"
10878
+ "default-mobile.handlebars->11->968"
10879
]
10880
},
10881
{
@@ -10893,7 +10893,7 @@
10893
"nl": "Android Versie",
10894
"uk": "Версія Android",
10895
"xloc": [
10896
- "default-mobile.handlebars->11->793",
10896
+ "default-mobile.handlebars->11->794",
10897
"default.handlebars->47->1626"
10898
]
10899
},
@@ -10953,8 +10953,8 @@
10953
"zh-cht": "殺毒軟件未激活",
10954
"uk": "Антивірус непрацюючий",
10955
"xloc": [
10956
- "default.handlebars->47->2449",
10957
- "default.handlebars->47->2463"
10956
+ "default.handlebars->47->2452",
10957
+ "default.handlebars->47->2466"
10958
]
10959
},
10960
{
@@ -10983,7 +10983,7 @@
10983
"zh-cht": "防毒軟體",
10984
"uk": "Антивірус",
10985
"xloc": [
10986
- "default-mobile.handlebars->11->775",
10986
+ "default-mobile.handlebars->11->776",
10987
"default.handlebars->47->960"
10988
]
10989
},
@@ -11388,7 +11388,7 @@
11388
"uk": "Арабська (Алжир)",
11389
"xloc": [
11390
"default-mobile.handlebars->11->110",
11391
- "default.handlebars->47->1841",
11391
+ "default.handlebars->47->1844",
11392
"login2.handlebars->7->4"
11393
]
11394
},
@@ -11419,7 +11419,7 @@
11419
"uk": "Арабська (Бахрейн)",
11420
"xloc": [
11421
"default-mobile.handlebars->11->111",
11422
- "default.handlebars->47->1842",
11422
+ "default.handlebars->47->1845",
11423
"login2.handlebars->7->5"
11424
]
11425
},
@@ -11450,7 +11450,7 @@
11450
"uk": "Арабська (Єгипет)",
11451
"xloc": [
11452
"default-mobile.handlebars->11->112",
11453
- "default.handlebars->47->1843",
11453
+ "default.handlebars->47->1846",
11454
"login2.handlebars->7->6"
11455
]
11456
},
@@ -11481,7 +11481,7 @@
11481
"uk": "Арабська (Ірак)",
11482
"xloc": [
11483
"default-mobile.handlebars->11->113",
11484
- "default.handlebars->47->1844",
11484
+ "default.handlebars->47->1847",
11485
"login2.handlebars->7->7"
11486
]
11487
},
@@ -11512,7 +11512,7 @@
11512
"uk": "Арабська (Йорданія)",
11513
"xloc": [
11514
"default-mobile.handlebars->11->114",
11515
- "default.handlebars->47->1845",
11515
+ "default.handlebars->47->1848",
11516
"login2.handlebars->7->8"
11517
]
11518
},
@@ -11543,7 +11543,7 @@
11543
"uk": "Арабська (Кувейт)",
11544
"xloc": [
11545
"default-mobile.handlebars->11->115",
11546
- "default.handlebars->47->1846",
11546
+ "default.handlebars->47->1849",
11547
"login2.handlebars->7->9"
11548
]
11549
},
@@ -11574,7 +11574,7 @@
11574
"uk": "Арабська (Ліван)",
11575
"xloc": [
11576
"default-mobile.handlebars->11->116",
11577
- "default.handlebars->47->1847",
11577
+ "default.handlebars->47->1850",
11578
"login2.handlebars->7->10"
11579
]
11580
},
@@ -11605,7 +11605,7 @@
11605
"uk": "Арабська (Лівія)",
11606
"xloc": [
11607
"default-mobile.handlebars->11->117",
11608
- "default.handlebars->47->1848",
11608
+ "default.handlebars->47->1851",
11609
"login2.handlebars->7->11"
11610
]
11611
},
@@ -11636,7 +11636,7 @@
11636
"uk": "Арабська (Марокко)",
11637
"xloc": [
11638
"default-mobile.handlebars->11->118",
11639
- "default.handlebars->47->1849",
11639
+ "default.handlebars->47->1852",
11640
"login2.handlebars->7->12"
11641
]
11642
},
@@ -11667,7 +11667,7 @@
11667
"uk": "Арабська (Оман)",
11668
"xloc": [
11669
"default-mobile.handlebars->11->119",
11670
- "default.handlebars->47->1850",
11670
+ "default.handlebars->47->1853",
11671
"login2.handlebars->7->13"
11672
]
11673
},
@@ -11698,7 +11698,7 @@
11698
"uk": "Арабська (Катар)",
11699
"xloc": [
11700
"default-mobile.handlebars->11->120",
11701
- "default.handlebars->47->1851",
11701
+ "default.handlebars->47->1854",
11702
"login2.handlebars->7->14"
11703
]
11704
},
@@ -11729,7 +11729,7 @@
11729
"uk": "Арабська (Саудівська Аравія)",
11730
"xloc": [
11731
"default-mobile.handlebars->11->121",
11732
- "default.handlebars->47->1852",
11732
+ "default.handlebars->47->1855",
11733
"login2.handlebars->7->15"
11734
]
11735
},
@@ -11760,7 +11760,7 @@
11760
"uk": "Арабська (Стандартна)",
11761
"xloc": [
11762
"default-mobile.handlebars->11->109",
11763
- "default.handlebars->47->1840",
11763
+ "default.handlebars->47->1843",
11764
"login2.handlebars->7->3"
11765
]
11766
},
@@ -11791,7 +11791,7 @@
11791
"uk": "Арабська (Сирія)",
11792
"xloc": [
11793
"default-mobile.handlebars->11->122",
11794
- "default.handlebars->47->1853",
11794
+ "default.handlebars->47->1856",
11795
"login2.handlebars->7->16"
11796
]
11797
},
@@ -11822,7 +11822,7 @@
11822
"uk": "Арабська (Туніс)",
11823
"xloc": [
11824
"default-mobile.handlebars->11->123",
11825
- "default.handlebars->47->1854",
11825
+ "default.handlebars->47->1857",
11826
"login2.handlebars->7->17"
11827
]
11828
},
@@ -11853,7 +11853,7 @@
11853
"uk": "Арабська (ОАЕ)",
11854
"xloc": [
11855
"default-mobile.handlebars->11->124",
11856
- "default.handlebars->47->1855",
11856
+ "default.handlebars->47->1858",
11857
"login2.handlebars->7->18"
11858
]
11859
},
@@ -11884,7 +11884,7 @@
11884
"uk": "Арабська (Ємен)",
11885
"xloc": [
11886
"default-mobile.handlebars->11->125",
11887
- "default.handlebars->47->1856",
11887
+ "default.handlebars->47->1859",
11888
"login2.handlebars->7->19"
11889
]
11890
},
@@ -11915,7 +11915,7 @@
11915
"uk": "Арагонська",
11916
"xloc": [
11917
"default-mobile.handlebars->11->126",
11918
- "default.handlebars->47->1857",
11918
+ "default.handlebars->47->1860",
11919
"login2.handlebars->7->20"
11920
]
11921
},
@@ -11945,9 +11945,9 @@
11945
"zh-cht": "結構",
11946
"uk": "Архітектура",
11947
"xloc": [
11948
- "default-mobile.handlebars->11->742",
11949
- "default-mobile.handlebars->11->744",
11950
- "default-mobile.handlebars->11->746",
11948
+ "default-mobile.handlebars->11->743",
11949
+ "default-mobile.handlebars->11->745",
11950
+ "default-mobile.handlebars->11->747",
11951
"default.handlebars->47->1603",
11952
"default.handlebars->47->1605",
11953
"default.handlebars->47->1607"
@@ -12008,8 +12008,8 @@
12008
"zh-cht": "你確定要刪除群{0}嗎?刪除裝置群還將刪除該群中有關裝置的所有訊息。",
12009
"uk": "Ви впевнені, що бажаєте видалити групу {0}? Видалення групи пристроїв також видалить всю інформацію про пристрої в цій групі.",
12010
"xloc": [
12011
- "default-mobile.handlebars->11->953",
12012
- "default.handlebars->47->2293"
12011
+ "default-mobile.handlebars->11->954",
12012
+ "default.handlebars->47->2296"
12013
]
12014
},
12015
{
@@ -12134,7 +12134,7 @@
12134
"zh-cht": "你確定要{0}外掛嗎:{1}",
12135
"uk": "Ви впевнені, що хочете {0} плаґін: {1}",
12136
"xloc": [
12137
- "default.handlebars->47->3389"
12137
+ "default.handlebars->47->3395"
12138
]
12139
},
12140
{
@@ -12194,7 +12194,7 @@
12194
"uk": "Вірменська",
12195
"xloc": [
12196
"default-mobile.handlebars->11->127",
12197
- "default.handlebars->47->1858",
12197
+ "default.handlebars->47->1861",
12198
"login2.handlebars->7->21"
12199
]
12200
},
@@ -12400,7 +12400,7 @@
12400
"uk": "Асамська",
12401
"xloc": [
12402
"default-mobile.handlebars->11->128",
12403
- "default.handlebars->47->1859",
12403
+ "default.handlebars->47->1862",
12404
"login2.handlebars->7->22"
12405
]
12406
},
@@ -12576,7 +12576,7 @@
12576
"uk": "Астурійська",
12577
"xloc": [
12578
"default-mobile.handlebars->11->129",
12579
- "default.handlebars->47->1860",
12579
+ "default.handlebars->47->1863",
12580
"login2.handlebars->7->23"
12581
]
12582
},
@@ -12606,7 +12606,7 @@
12606
"zh-cht": "嘗試激活英特爾(R)AMT ACM模式",
12607
"uk": "Спроба активувати режим Intel(R) AMT ACM",
12608
"xloc": [
12609
- "default.handlebars->47->2537"
12609
+ "default.handlebars->47->2540"
12610
]
12611
},
12612
{
@@ -12699,7 +12699,7 @@
12699
"zh-cht": "認證軟體",
12700
"uk": "Застосунок Автентифікації",
12701
"xloc": [
12702
- "default.handlebars->47->2975"
12702
+ "default.handlebars->47->2980"
12703
]
12704
},
12705
{
@@ -12728,9 +12728,9 @@
12728
"zh-cht": "認證設備",
12729
"uk": "Пристрій Автентифікації",
12730
"xloc": [
12731
- "default.handlebars->47->1821",
12732
- "default.handlebars->47->1823",
12733
- "default.handlebars->47->1827"
12731
+ "default.handlebars->47->1824",
12732
+ "default.handlebars->47->1826",
12733
+ "default.handlebars->47->1830"
12734
]
12735
},
12736
{
@@ -12795,8 +12795,8 @@
12795
"default-mobile.handlebars->11->314",
12796
"default-mobile.handlebars->11->71",
12797
"default-mobile.handlebars->11->74",
12798
- "default.handlebars->47->1817",
12799
- "default.handlebars->47->1819",
12798
+ "default.handlebars->47->1820",
12799
+ "default.handlebars->47->1822",
12800
"default.handlebars->47->218",
12801
"default.handlebars->47->223"
12802
]
@@ -12943,8 +12943,8 @@
12943
"zh-cht": "自動刪除",
12944
"uk": "Авто-Видалення",
12945
"xloc": [
12946
- "default.handlebars->47->2173",
12947
- "default.handlebars->47->2678"
12946
+ "default.handlebars->47->2176",
12947
+ "default.handlebars->47->2683"
12948
]
12949
},
12950
{
@@ -13006,7 +13006,7 @@
13006
"zh-cht": "自動下載代理程序核心轉儲文件:“{0}”",
13007
"uk": "Автоматичне завантаження файлу дампа ядра агента: \\\"{0}\\\"",
13008
"xloc": [
13009
- "default.handlebars->47->2618"
13009
+ "default.handlebars->47->2621"
13010
]
13011
},
13012
{
@@ -13120,7 +13120,7 @@
13120
"zh-cht": "自動移除非活動設備",
13121
"uk": "Автоматично видаляти неактивні пристрої",
13122
"xloc": [
13123
- "default.handlebars->47->2321"
13123
+ "default.handlebars->47->2324"
13124
]
13125
},
13126
{
@@ -13149,7 +13149,7 @@
13149
"zh-cht": "可用內存",
13150
"uk": "Доступна пам'ять",
13151
"xloc": [
13152
- "default.handlebars->47->3318"
13152
+ "default.handlebars->47->3324"
13153
]
13154
},
13155
{
@@ -13179,7 +13179,7 @@
13179
"uk": "Азербайджанська",
13180
"xloc": [
13181
"default-mobile.handlebars->11->130",
13182
- "default.handlebars->47->1861",
13182
+ "default.handlebars->47->1864",
13183
"login2.handlebars->7->24"
13184
]
13185
},
@@ -13209,9 +13209,9 @@
13209
"zh-cht": "壞的",
13210
"uk": "КЕПСЬКО",
13211
"xloc": [
13212
- "default-mobile.handlebars->11->753",
13213
- "default-mobile.handlebars->11->757",
13214
- "default-mobile.handlebars->11->761",
13212
+ "default-mobile.handlebars->11->754",
13213
+ "default-mobile.handlebars->11->758",
13214
+ "default-mobile.handlebars->11->762",
13215
"default.handlebars->47->938",
13216
"default.handlebars->47->942",
13217
"default.handlebars->47->946"
@@ -13243,7 +13243,7 @@
13243
"zh-cht": "的BIOS",
13244
"uk": "BIOS",
13245
"xloc": [
13246
- "default-mobile.handlebars->11->833",
13246
+ "default-mobile.handlebars->11->834",
13247
"default.handlebars->47->1676"
13248
]
13249
},
@@ -13427,8 +13427,8 @@
13427
"zh-cht": "背景與互動",
13428
"uk": "Фоновий та Інтерактивний",
13429
"xloc": [
13430
- "default.handlebars->47->2420",
13431
- "default.handlebars->47->2427",
13430
+ "default.handlebars->47->2423",
13431
+ "default.handlebars->47->2430",
13432
"default.handlebars->47->562",
13433
"default.handlebars->47->583"
13434
]
@@ -13460,8 +13460,8 @@
13460
"uk": "Лише Фоновий",
13461
"xloc": [
13462
"agentinvite.handlebars->3->9",
13463
- "default.handlebars->47->2421",
13464
- "default.handlebars->47->2429",
13463
+ "default.handlebars->47->2424",
13464
+ "default.handlebars->47->2432",
13465
"default.handlebars->47->563",
13466
"default.handlebars->47->584",
13467
"default.handlebars->47->601"
@@ -13523,8 +13523,8 @@
13523
"zh-cht": "備用碼",
13524
"uk": "Резервні Коди",
13525
"xloc": [
13526
- "default.handlebars->47->2978",
13527
- "default.handlebars->47->3205"
13526
+ "default.handlebars->47->2984",
13527
+ "default.handlebars->47->3211"
13528
]
13529
},
13530
{
@@ -13612,7 +13612,7 @@
13612
"zh-cht": "錯誤的簽名",
13613
"uk": "Помилковий Підпис",
13614
"xloc": [
13615
- "default.handlebars->47->3300"
13615
+ "default.handlebars->47->3306"
13616
]
13617
},
13618
{
@@ -13641,7 +13641,7 @@
13641
"zh-cht": "錯誤的網絡憑證",
13642
"uk": "Недійсний Веб-Сертифікат",
13643
"xloc": [
13644
- "default.handlebars->47->3299"
13644
+ "default.handlebars->47->3305"
13645
]
13646
},
13647
{
@@ -13671,7 +13671,7 @@
13671
"uk": "Баскська",
13672
"xloc": [
13673
"default-mobile.handlebars->11->131",
13674
- "default.handlebars->47->1862",
13674
+ "default.handlebars->47->1865",
13675
"login2.handlebars->7->25"
13676
]
13677
},
@@ -13770,7 +13770,7 @@
13770
"zh-cht": "將{0}個文件批量上傳到文件夾{1}",
13771
"uk": "Пакетне завантаження файлів ({0}) до теки {1}",
13772
"xloc": [
13773
- "default.handlebars->47->2617"
13773
+ "default.handlebars->47->2620"
13774
]
13775
},
13776
{
@@ -13800,7 +13800,7 @@
13800
"uk": "Білоруська",
13801
"xloc": [
13802
"default-mobile.handlebars->11->133",
13803
- "default.handlebars->47->1864",
13803
+ "default.handlebars->47->1867",
13804
"login2.handlebars->7->27"
13805
]
13806
},
@@ -13831,7 +13831,7 @@
13831
"uk": "Бенгальська",
13832
"xloc": [
13833
"default-mobile.handlebars->11->134",
13834
- "default.handlebars->47->1865",
13834
+ "default.handlebars->47->1868",
13835
"login2.handlebars->7->28"
13836
]
13837
},
@@ -13899,7 +13899,7 @@
13899
"nl": "BitLocker",
13900
"uk": "BitLocker",
13901
"xloc": [
13902
- "default-mobile.handlebars->11->889",
13902
+ "default-mobile.handlebars->11->890",
13903
"default.handlebars->47->1732"
13904
]
13905
},
@@ -13910,7 +13910,7 @@
13910
"pl": "Informacje o BitLocker",
13911
"uk": "Інформація о BitLocker",
13912
"xloc": [
13913
- "default-mobile.handlebars->11->910",
13913
+ "default-mobile.handlebars->11->911",
13914
"default.handlebars->47->1753"
13915
]
13916
},
@@ -13940,7 +13940,7 @@
13940
"zh-cht": "引導加載程序",
13941
"uk": "Завантажувач",
13942
"xloc": [
13943
- "default-mobile.handlebars->11->790",
13943
+ "default-mobile.handlebars->11->791",
13944
"default.handlebars->47->1623"
13945
]
13946
},
@@ -13971,7 +13971,7 @@
13971
"uk": "Боснійська",
13972
"xloc": [
13973
"default-mobile.handlebars->11->135",
13974
- "default.handlebars->47->1866",
13974
+ "default.handlebars->47->1869",
13975
"login2.handlebars->7->29"
13976
]
13977
},
@@ -14002,7 +14002,7 @@
14002
"uk": "Бретонська",
14003
"xloc": [
14004
"default-mobile.handlebars->11->136",
14005
- "default.handlebars->47->1867",
14005
+ "default.handlebars->47->1870",
14006
"login2.handlebars->7->30"
14007
]
14008
},
@@ -14032,7 +14032,7 @@
14032
"zh-cht": "廣播",
14033
"uk": "Широкомовне",
14034
"xloc": [
14035
- "default.handlebars->47->2873",
14035
+ "default.handlebars->47->2878",
14036
"default.handlebars->container->column_l->p4->3->1->0->3->1"
14037
]
14038
},
@@ -14062,7 +14062,7 @@
14062
"zh-cht": "廣播消息",
14063
"uk": "Широкомовне Повідомлення",
14064
"xloc": [
14065
- "default.handlebars->47->2789"
14065
+ "default.handlebars->47->2794"
14066
]
14067
},
14068
{
@@ -14091,7 +14091,7 @@
14091
"zh-cht": "向所有連接的用戶廣播消息。",
14092
"uk": "Широкомовне повідомлення всім підключеним користувачам.",
14093
"xloc": [
14094
- "default.handlebars->47->2784"
14094
+ "default.handlebars->47->2789"
14095
]
14096
},
14097
{
@@ -14120,7 +14120,7 @@
14120
"zh-cht": "瀏覽器",
14121
"uk": "Браузер",
14122
"xloc": [
14123
- "default.handlebars->47->3179"
14123
+ "default.handlebars->47->3185"
14124
]
14125
},
14126
{
@@ -14209,7 +14209,7 @@
14209
"uk": "Болгарська",
14210
"xloc": [
14211
"default-mobile.handlebars->11->132",
14212
- "default.handlebars->47->1863",
14212
+ "default.handlebars->47->1866",
14213
"login2.handlebars->7->26"
14214
]
14215
},
@@ -14240,7 +14240,7 @@
14240
"uk": "Бірманська",
14241
"xloc": [
14242
"default-mobile.handlebars->11->137",
14243
- "default.handlebars->47->1868",
14243
+ "default.handlebars->47->1871",
14244
"login2.handlebars->7->31"
14245
]
14246
},
@@ -14270,7 +14270,7 @@
14270
"zh-cht": "默認情況下,非活動設備將在 1 天后移除。",
14271
"uk": "Типово неактивні пристрої видаляються через 1 день.",
14272
"xloc": [
14273
- "default.handlebars->47->2323"
14273
+ "default.handlebars->47->2326"
14274
]
14275
},
14276
{
@@ -14299,7 +14299,7 @@
14299
"zh-cht": "默認情況下,不活動的設備將在 {0} 天后被移除。",
14300
"uk": "Типово неактивні пристрої видаляються через {0} дн.",
14301
"xloc": [
14302
- "default.handlebars->47->2324"
14302
+ "default.handlebars->47->2327"
14303
]
14304
},
14305
{
@@ -14339,7 +14339,7 @@
14339
"zh-cht": "字節輸入",
14340
"uk": "Байт Вх.",
14341
"xloc": [
14342
- "default.handlebars->47->3175"
14342
+ "default.handlebars->47->3181"
14343
]
14344
},
14345
{
@@ -14368,7 +14368,7 @@
14368
"zh-cht": "字節輸出",
14369
"uk": "Байт Вих.",
14370
"xloc": [
14371
- "default.handlebars->47->3176"
14371
+ "default.handlebars->47->3182"
14372
]
14373
},
14374
{
@@ -14474,7 +14474,7 @@
14474
"zh-cht": "CCM模式",
14475
"uk": "Режим CCM",
14476
"xloc": [
14477
- "default.handlebars->47->2276"
14477
+ "default.handlebars->47->2279"
14478
]
14479
},
14480
{
@@ -14482,9 +14482,9 @@
14482
"en": "CD-ROM",
14483
"nl": "CD-ROM",
14484
"xloc": [
14485
- "default-mobile.handlebars->11->882",
14486
- "default-mobile.handlebars->11->894",
14487
- "default-mobile.handlebars->11->901",
14485
+ "default-mobile.handlebars->11->883",
14486
+ "default-mobile.handlebars->11->895",
14487
+ "default-mobile.handlebars->11->902",
14488
"default.handlebars->47->1725",
14489
"default.handlebars->47->1737",
14490
"default.handlebars->47->1744"
@@ -14517,7 +14517,7 @@
14517
"uk": "CIRA",
14518
"xloc": [
14519
"default-mobile.handlebars->11->470",
14520
- "default.handlebars->47->3325",
14520
+ "default.handlebars->47->3331",
14521
"default.handlebars->47->411",
14522
"default.handlebars->47->719"
14523
]
@@ -14548,7 +14548,7 @@
14548
"zh-cht": "CIRA伺服器",
14549
"uk": "Сервер CIRA",
14550
"xloc": [
14551
- "default.handlebars->47->3373"
14551
+ "default.handlebars->47->3379"
14552
]
14553
},
14554
{
@@ -14577,7 +14577,7 @@
14577
"zh-cht": "CIRA伺服器指令",
14578
"uk": "Команди Сервера CIRA",
14579
"xloc": [
14580
- "default.handlebars->47->3374"
14580
+ "default.handlebars->47->3380"
14581
]
14582
},
14583
{
@@ -14635,7 +14635,7 @@
14635
"zh-cht": "CIRA設置",
14636
"uk": "Налаштування CIRA",
14637
"xloc": [
14638
- "default.handlebars->47->2284"
14638
+ "default.handlebars->47->2287"
14639
]
14640
},
14641
{
@@ -14664,10 +14664,10 @@
14664
"zh-cht": "CPU",
14665
"uk": "ЦП",
14666
"xloc": [
14667
- "default-mobile.handlebars->11->839",
14667
+ "default-mobile.handlebars->11->840",
14668
"default.handlebars->47->1598",
14669
"default.handlebars->47->1682",
14670
- "default.handlebars->47->3349",
14670
+ "default.handlebars->47->3355",
14671
"default.handlebars->container->column_l->p40->3->1->p40type->5"
14672
]
14673
},
@@ -14697,7 +14697,7 @@
14697
"zh-cht": "CPU負載",
14698
"uk": "Навантаження ЦП",
14699
"xloc": [
14700
- "default.handlebars->47->3314"
14700
+ "default.handlebars->47->3320"
14701
]
14702
},
14703
{
@@ -14726,7 +14726,7 @@
14726
"zh-cht": "最近15分鐘的CPU負載",
14727
"uk": "Навантаження ЦП за останні 15 хвилин",
14728
"xloc": [
14729
- "default.handlebars->47->3317"
14729
+ "default.handlebars->47->3323"
14730
]
14731
},
14732
{
@@ -14755,7 +14755,7 @@
14755
"zh-cht": "最近5分鐘的CPU負載",
14756
"uk": "Навантаження ЦП за останні 5 хвилин",
14757
"xloc": [
14758
- "default.handlebars->47->3316"
14758
+ "default.handlebars->47->3322"
14759
]
14760
},
14761
{
@@ -14784,7 +14784,7 @@
14784
"zh-cht": "最近一分鐘的CPU負載",
14785
"uk": "Навантаження ЦП за останню хвилину",
14786
"xloc": [
14787
- "default.handlebars->47->3315"
14787
+ "default.handlebars->47->3321"
14788
]
14789
},
14790
{
@@ -14847,7 +14847,7 @@
14847
"zh-cht": "CSV",
14848
"uk": "CSV",
14849
"xloc": [
14850
- "default.handlebars->47->2695"
14850
+ "default.handlebars->47->2700"
14851
]
14852
},
14853
{
@@ -14876,8 +14876,8 @@
14876
"zh-cht": "CSV格式",
14877
"uk": "Формат CSV",
14878
"xloc": [
14879
- "default.handlebars->47->2699",
14880
- "default.handlebars->47->2776",
14879
+ "default.handlebars->47->2704",
14880
+ "default.handlebars->47->2781",
14881
"default.handlebars->47->792"
14882
]
14883
},
@@ -14887,7 +14887,7 @@
14887
"nl": "Het CSV bestandsformaat is als volgt:",
14888
"uk": "Формат файлу CSV нижче:",
14889
"xloc": [
14890
- "default.handlebars->47->2762"
14890
+ "default.handlebars->47->2767"
14891
]
14892
},
14893
{
@@ -14942,7 +14942,7 @@
14942
"zh-cht": "呼叫錯誤",
14943
"uk": "Помилка Виклику",
14944
"xloc": [
14945
- "default.handlebars->47->3390"
14945
+ "default.handlebars->47->3396"
14946
]
14947
},
14948
{
@@ -14956,7 +14956,7 @@
14956
"uk": "CallMeBot",
14957
"xloc": [
14958
"default.handlebars->47->1790",
14959
- "default.handlebars->47->3013"
14959
+ "default.handlebars->47->3019"
14960
]
14961
},
14962
{
@@ -15017,8 +15017,8 @@
15017
"agent-translations.json",
15018
"default-mobile.handlebars->11->323",
15019
"default-mobile.handlebars->dialog->idx_dlgButtonBar",
15020
- "default.handlebars->47->2140",
15021
- "default.handlebars->47->3379",
15020
+ "default.handlebars->47->2143",
15021
+ "default.handlebars->47->3385",
15022
"default.handlebars->47->535",
15023
"default.handlebars->container->dialog->idx_dlgButtonBar",
15024
"login-mobile.handlebars->dialog->idx_dlgButtonBar",
@@ -15137,14 +15137,14 @@
15137
"zh-cht": "容量",
15138
"uk": "Ємність",
15139
"xloc": [
15140
- "default-mobile.handlebars->11->857",
15141
- "default-mobile.handlebars->11->863",
15142
- "default-mobile.handlebars->11->869",
15143
- "default-mobile.handlebars->11->874",
15144
- "default-mobile.handlebars->11->876",
15145
- "default-mobile.handlebars->11->879",
15146
- "default-mobile.handlebars->11->891",
15147
- "default-mobile.handlebars->11->898",
15140
+ "default-mobile.handlebars->11->858",
15141
+ "default-mobile.handlebars->11->864",
15142
+ "default-mobile.handlebars->11->870",
15143
+ "default-mobile.handlebars->11->875",
15144
+ "default-mobile.handlebars->11->877",
15145
+ "default-mobile.handlebars->11->880",
15146
+ "default-mobile.handlebars->11->892",
15147
+ "default-mobile.handlebars->11->899",
15148
"default.handlebars->47->1700",
15149
"default.handlebars->47->1706",
15150
"default.handlebars->47->1712",
@@ -15181,9 +15181,9 @@
15181
"zh-cht": "容量/速度",
15182
"uk": "Ємність / Швидкість",
15183
"xloc": [
15184
- "default-mobile.handlebars->11->855",
15185
- "default-mobile.handlebars->11->861",
15186
- "default-mobile.handlebars->11->867",
15184
+ "default-mobile.handlebars->11->856",
15185
+ "default-mobile.handlebars->11->862",
15186
+ "default-mobile.handlebars->11->868",
15187
"default.handlebars->47->1698",
15188
"default.handlebars->47->1704",
15189
"default.handlebars->47->1710"
@@ -15195,9 +15195,9 @@
15195
"nl": "Resterende capaciteit",
15196
"uk": "Залишок ємності",
15197
"xloc": [
15198
- "default-mobile.handlebars->11->880",
15199
- "default-mobile.handlebars->11->892",
15200
- "default-mobile.handlebars->11->899",
15198
+ "default-mobile.handlebars->11->881",
15199
+ "default-mobile.handlebars->11->893",
15200
+ "default-mobile.handlebars->11->900",
15201
"default.handlebars->47->1723",
15202
"default.handlebars->47->1735",
15203
"default.handlebars->47->1742"
@@ -15230,7 +15230,7 @@
15230
"uk": "Каталанська",
15231
"xloc": [
15232
"default-mobile.handlebars->11->138",
15233
- "default.handlebars->47->1869",
15233
+ "default.handlebars->47->1872",
15234
"login2.handlebars->7->32"
15235
]
15236
},
@@ -15347,7 +15347,7 @@
15347
"uk": "Чаморро",
15348
"xloc": [
15349
"default-mobile.handlebars->11->139",
15350
- "default.handlebars->47->1870",
15350
+ "default.handlebars->47->1873",
15351
"login2.handlebars->7->33"
15352
]
15353
},
@@ -15408,7 +15408,7 @@
15408
"zh-cht": "更改{0}的電郵",
15409
"uk": "Змінити е-пошту для {0}",
15410
"xloc": [
15411
- "default.handlebars->47->3055"
15411
+ "default.handlebars->47->3061"
15412
]
15413
},
15414
{
@@ -15480,8 +15480,8 @@
15480
"uk": "Змінити Пароль",
15481
"xloc": [
15482
"default-mobile.handlebars->11->331",
15483
- "default.handlebars->47->2086",
15484
- "default.handlebars->47->2999"
15483
+ "default.handlebars->47->2089",
15484
+ "default.handlebars->47->3005"
15485
]
15486
},
15487
{
@@ -15510,7 +15510,7 @@
15510
"zh-cht": "更改{0}的密碼",
15511
"uk": "Змінити пароль для {0}",
15512
"xloc": [
15513
- "default.handlebars->47->3064"
15513
+ "default.handlebars->47->3070"
15514
]
15515
},
15516
{
@@ -15539,7 +15539,7 @@
15539
"zh-cht": "更改{0}的真實名稱",
15540
"uk": "Змінити справжнє ім'я для {0}",
15541
"xloc": [
15542
- "default.handlebars->47->3050"
15542
+ "default.handlebars->47->3056"
15543
]
15544
},
15545
{
@@ -15712,7 +15712,7 @@
15712
"zh-cht": "更改該用戶的密碼",
15713
"uk": "Змінити пароль для цього користувача",
15714
"xloc": [
15715
- "default.handlebars->47->2998"
15715
+ "default.handlebars->47->3004"
15716
]
15717
},
15718
{
@@ -15770,7 +15770,7 @@
15770
"zh-cht": "在此處更改你的帳戶電郵地址。",
15771
"uk": "Змініть адресу е-пошти свого акаунту тут.",
15772
"xloc": [
15773
- "default.handlebars->47->2073"
15773
+ "default.handlebars->47->2076"
15774
]
15775
},
15776
{
@@ -15799,7 +15799,7 @@
15799
"zh-cht": "在下面的框中兩次輸入舊密碼和新密碼,以更改帳戶密碼。",
15800
"uk": "Змініть пароль свого акаунту, ввівши старий пароль та двічі новий пароль в поля нижче.",
15801
"xloc": [
15802
- "default.handlebars->47->2079"
15802
+ "default.handlebars->47->2082"
15803
]
15804
},
15805
{
@@ -15828,7 +15828,7 @@
15828
"zh-cht": "帳戶憑證已更改",
15829
"uk": "Змінено облікові дані акаунту",
15830
"xloc": [
15831
- "default.handlebars->47->2589"
15831
+ "default.handlebars->47->2592"
15832
]
15833
},
15834
{
@@ -15857,7 +15857,7 @@
15857
"zh-cht": "將帳戶顯示名稱更改為 {0}。",
15858
"uk": "Відображене ім'я акаунту змінено на {0}.",
15859
"xloc": [
15860
- "default.handlebars->47->2641"
15860
+ "default.handlebars->47->2644"
15861
]
15862
},
15863
{
@@ -15886,8 +15886,8 @@
15886
"zh-cht": "{1}組中的設備{0}已更改:{2}",
15887
"uk": "Пристрій {0} змінено з групи {1}: {2}",
15888
"xloc": [
15889
- "default.handlebars->47->2573",
15890
- "default.handlebars->47->2654"
15889
+ "default.handlebars->47->2576",
15890
+ "default.handlebars->47->2657"
15891
]
15892
},
15893
{
@@ -15916,7 +15916,7 @@
15916
"zh-cht": "語言從{1}更改為{2}",
15917
"uk": "Мову змінено з {1} на {2}",
15918
"xloc": [
15919
- "default.handlebars->47->2517"
15919
+ "default.handlebars->47->2520"
15920
]
15921
},
15922
{
@@ -15945,8 +15945,8 @@
15945
"zh-cht": "已更改{0}的用戶設備權限",
15946
"uk": "Права користувача пристрою змінено для {0}",
15947
"xloc": [
15948
- "default.handlebars->47->2575",
15949
- "default.handlebars->47->2596"
15948
+ "default.handlebars->47->2578",
15949
+ "default.handlebars->47->2599"
15950
]
15951
},
15952
{
@@ -16002,7 +16002,7 @@
16002
"uk": "Зміна мови потребуватиме освіження сторінки.",
16003
"xloc": [
16004
"default-mobile.handlebars->11->306",
16005
- "default.handlebars->47->2037"
16005
+ "default.handlebars->47->2040"
16006
]
16007
},
16008
{
@@ -16034,9 +16034,9 @@
16034
"default.handlebars->47->1018",
16035
"default.handlebars->47->1137",
16036
"default.handlebars->47->1162",
16037
- "default.handlebars->47->2716",
16038
- "default.handlebars->47->2994",
16039
- "default.handlebars->47->2995"
16037
+ "default.handlebars->47->2721",
16038
+ "default.handlebars->47->3000",
16039
+ "default.handlebars->47->3001"
16040
]
16041
},
16042
{
@@ -16065,10 +16065,10 @@
16065
"zh-cht": "聊天並通知",
16066
"uk": "Чат і Сповіщення",
16067
"xloc": [
16068
- "default-mobile.handlebars->11->1003",
16069
- "default-mobile.handlebars->11->983",
16070
- "default.handlebars->47->2355",
16071
- "default.handlebars->47->2393"
16068
+ "default-mobile.handlebars->11->1004",
16069
+ "default-mobile.handlebars->11->984",
16070
+ "default.handlebars->47->2358",
16071
+ "default.handlebars->47->2396"
16072
]
16073
},
16074
{
@@ -16097,8 +16097,8 @@
16097
"zh-cht": "聊天請求,點擊這裡接受。",
16098
"uk": "Запит на чат, натисніть тут, щоб прийняти",
16099
"xloc": [
16100
- "default-mobile.handlebars->11->1035",
16101
- "default.handlebars->47->3264"
16100
+ "default-mobile.handlebars->11->1036",
16101
+ "default.handlebars->47->3270"
16102
]
16103
},
16104
{
@@ -16157,7 +16157,7 @@
16157
"uk": "Чеченська",
16158
"xloc": [
16159
"default-mobile.handlebars->11->140",
16160
- "default.handlebars->47->1871",
16160
+ "default.handlebars->47->1874",
16161
"login2.handlebars->7->34"
16162
]
16163
},
@@ -16317,8 +16317,8 @@
16317
"zh-cht": "檢查...",
16318
"uk": "Перевірка...",
16319
"xloc": [
16320
- "default.handlebars->47->1837",
16321
- "default.handlebars->47->3384"
16320
+ "default.handlebars->47->1840",
16321
+ "default.handlebars->47->3390"
16322
]
16323
},
16324
{
@@ -16348,7 +16348,7 @@
16348
"uk": "Китайська",
16349
"xloc": [
16350
"default-mobile.handlebars->11->141",
16351
- "default.handlebars->47->1872",
16351
+ "default.handlebars->47->1875",
16352
"login2.handlebars->7->35"
16353
]
16354
},
@@ -16379,7 +16379,7 @@
16379
"uk": "Китайська (Гонконг)",
16380
"xloc": [
16381
"default-mobile.handlebars->11->142",
16382
- "default.handlebars->47->1873",
16382
+ "default.handlebars->47->1876",
16383
"login2.handlebars->7->36"
16384
]
16385
},
@@ -16410,7 +16410,7 @@
16410
"uk": "Китайська (КНР)",
16411
"xloc": [
16412
"default-mobile.handlebars->11->143",
16413
- "default.handlebars->47->1874",
16413
+ "default.handlebars->47->1877",
16414
"login2.handlebars->7->37"
16415
]
16416
},
@@ -16441,7 +16441,7 @@
16441
"uk": "Китайська (Спрощена)",
16442
"xloc": [
16443
"default-mobile.handlebars->11->303",
16444
- "default.handlebars->47->2034",
16444
+ "default.handlebars->47->2037",
16445
"login2.handlebars->7->197"
16446
]
16447
},
@@ -16472,7 +16472,7 @@
16472
"uk": "Китайська (Сінгапур)",
16473
"xloc": [
16474
"default-mobile.handlebars->11->144",
16475
- "default.handlebars->47->1875",
16475
+ "default.handlebars->47->1878",
16476
"login2.handlebars->7->38"
16477
]
16478
},
@@ -16503,7 +16503,7 @@
16503
"uk": "Китайська (Тайвань)",
16504
"xloc": [
16505
"default-mobile.handlebars->11->145",
16506
- "default.handlebars->47->1876",
16506
+ "default.handlebars->47->1879",
16507
"login2.handlebars->7->39"
16508
]
16509
},
@@ -16534,7 +16534,7 @@
16534
"uk": "Китайська (Традиційна)",
16535
"xloc": [
16536
"default-mobile.handlebars->11->304",
16537
- "default.handlebars->47->2035",
16537
+ "default.handlebars->47->2038",
16538
"login2.handlebars->7->198"
16539
]
16540
},
@@ -16595,7 +16595,7 @@
16595
"uk": "Чуваська",
16596
"xloc": [
16597
"default-mobile.handlebars->11->146",
16598
- "default.handlebars->47->1877",
16598
+ "default.handlebars->47->1880",
16599
"login2.handlebars->7->40"
16600
]
16601
},
@@ -16662,7 +16662,7 @@
16662
"default.handlebars->47->1573",
16663
"default.handlebars->47->1575",
16664
"default.handlebars->47->1577",
16665
- "default.handlebars->47->2511",
16665
+ "default.handlebars->47->2514",
16666
"default.handlebars->container->column_l->p15->consoleTable->1->6->1->1->1->0->7",
16667
"default.handlebars->container->column_l->p41->3->1",
16668
"messenger.handlebars->xbottom->1->1->0->5",
@@ -16846,8 +16846,8 @@
16846
"zh-cht": "全部清除",
16847
"uk": "Очистити все",
16848
"xloc": [
16849
- "default-mobile.handlebars->11->1018",
16850
- "default.handlebars->47->3247"
16849
+ "default-mobile.handlebars->11->1019",
16850
+ "default.handlebars->47->3253"
16851
]
16852
},
16853
{
@@ -16906,7 +16906,7 @@
16906
"zh-cht": "清除核心",
16907
"uk": "Очистити ядро",
16908
"xloc": [
16909
- "default-mobile.handlebars->11->922",
16909
+ "default-mobile.handlebars->11->923",
16910
"default.handlebars->47->1766"
16911
]
16912
},
@@ -16965,8 +16965,8 @@
16965
"zh-cht": "清除此通知",
16966
"uk": "Очистити це сповіщення",
16967
"xloc": [
16968
- "default-mobile.handlebars->11->1017",
16969
- "default.handlebars->47->3246"
16968
+ "default-mobile.handlebars->11->1018",
16969
+ "default.handlebars->47->3252"
16970
]
16971
},
16972
{
@@ -17082,8 +17082,8 @@
17082
"zh-cht": "單擊此處編輯裝置群名稱",
17083
"uk": "Клікніть тут, щоб змінити назву групи пристроїв",
17084
"xloc": [
17085
- "default.handlebars->47->2154",
17086
- "default.handlebars->47->2454"
17085
+ "default.handlebars->47->2157",
17086
+ "default.handlebars->47->2457"
17087
]
17088
},
17089
{
@@ -17141,7 +17141,7 @@
17141
"zh-cht": "單擊此處編輯用戶群名稱",
17142
"uk": "Клікніть тут, щоб змінити назву групи користувачів",
17143
"xloc": [
17144
- "default.handlebars->47->2846"
17144
+ "default.handlebars->47->2851"
17145
]
17146
},
17147
{
@@ -17286,7 +17286,7 @@
17286
"uk": "Клікнути OK, щоб надіслати електронний лист для підтвердження на:",
17287
"xloc": [
17288
"default-mobile.handlebars->11->316",
17289
- "default.handlebars->47->2070"
17289
+ "default.handlebars->47->2073"
17290
]
17291
},
17292
{
@@ -17400,7 +17400,7 @@
17400
"zh-cht": "客戶端控制模式(CCM)",
17401
"uk": "Режим керування клієнтом (eng. CCM)",
17402
"xloc": [
17403
- "default-mobile.handlebars->11->817",
17403
+ "default-mobile.handlebars->11->818",
17404
"default.handlebars->47->1660"
17405
]
17406
},
@@ -17430,7 +17430,7 @@
17430
"zh-cht": "客戶編號",
17431
"uk": "ID Клієнта",
17432
"xloc": [
17433
- "default.handlebars->47->2133"
17433
+ "default.handlebars->47->2136"
17434
]
17435
},
17436
{
@@ -17459,7 +17459,7 @@
17459
"zh-cht": "客戶端啟動的遠程訪問",
17460
"uk": "Клієнт Ініціював Віддалений Доступ",
17461
"xloc": [
17462
- "default.handlebars->47->2283"
17462
+ "default.handlebars->47->2286"
17463
]
17464
},
17465
{
@@ -17488,7 +17488,7 @@
17488
"zh-cht": "客戶機密",
17489
"uk": "Секретний Ключ Клієнта",
17490
"xloc": [
17491
- "default.handlebars->47->2134"
17491
+ "default.handlebars->47->2137"
17492
]
17493
},
17494
{
@@ -17553,7 +17553,7 @@
17553
"default.handlebars->47->1546",
17554
"default.handlebars->47->230",
17555
"default.handlebars->47->238",
17556
- "default.handlebars->47->3378",
17556
+ "default.handlebars->47->3384",
17557
"sharing.handlebars->11->52"
17558
]
17559
},
@@ -17583,7 +17583,7 @@
17583
"zh-cht": "已關閉桌面多路復用會話 \\\"{0}\\\",{1} 秒",
17584
"uk": "Закрито сесію мультиплексної стільниці \\\"{0}\\\", {1} секунд(и)",
17585
"xloc": [
17586
- "default.handlebars->47->2661"
17586
+ "default.handlebars->47->2664"
17587
]
17588
},
17589
{
@@ -17612,7 +17612,7 @@
17612
"zh-cht": "封閉式桌面多路復用會話,{0}秒",
17613
"uk": "Закрито сесію мультиплексної стільниці, {0} секунд(и)",
17614
"xloc": [
17615
- "default.handlebars->47->2522"
17615
+ "default.handlebars->47->2525"
17616
]
17617
},
17618
{
@@ -17816,10 +17816,10 @@
17816
"zh-cht": "指令",
17817
"uk": "Команди",
17818
"xloc": [
17819
- "default-mobile.handlebars->11->1005",
17819
+ "default-mobile.handlebars->11->1006",
17820
"default.handlebars->47->1139",
17821
"default.handlebars->47->1164",
17822
- "default.handlebars->47->2395"
17822
+ "default.handlebars->47->2398"
17823
]
17824
},
17825
{
@@ -17899,8 +17899,8 @@
17899
"zh-cht": "通用裝置群",
17900
"uk": "Пов'язані Групи Пристроїв",
17901
"xloc": [
17902
- "default.handlebars->47->2881",
17903
- "default.handlebars->47->3069"
17902
+ "default.handlebars->47->2886",
17903
+ "default.handlebars->47->3075"
17904
]
17905
},
17906
{
@@ -17929,8 +17929,8 @@
17929
"zh-cht": "通用裝置",
17930
"uk": "Пов'язані Пристрої",
17931
"xloc": [
17932
- "default.handlebars->47->2887",
17933
- "default.handlebars->47->3081"
17932
+ "default.handlebars->47->2892",
17933
+ "default.handlebars->47->3087"
17934
]
17935
},
17936
{
@@ -17959,7 +17959,7 @@
17959
"zh-cht": "編譯時間",
17960
"uk": "Час компіляції",
17961
"xloc": [
17962
- "default-mobile.handlebars->11->786",
17962
+ "default-mobile.handlebars->11->787",
17963
"default.handlebars->47->1619"
17964
]
17965
},
@@ -18057,7 +18057,7 @@
18057
"pl": "Zapisy pliku konfiguracyjnego",
18058
"uk": "Записи файлу конфігурації",
18059
"xloc": [
18060
- "default.handlebars->47->3223"
18060
+ "default.handlebars->47->3229"
18061
]
18062
},
18063
{
@@ -18087,14 +18087,14 @@
18087
"uk": "Підтвердити",
18088
"xloc": [
18089
"default-mobile.handlebars->11->623",
18090
- "default-mobile.handlebars->11->954",
18090
+ "default-mobile.handlebars->11->955",
18091
"default.handlebars->47->1311",
18092
"default.handlebars->47->1320",
18093
- "default.handlebars->47->2294",
18094
- "default.handlebars->47->2746",
18095
- "default.handlebars->47->2836",
18096
- "default.handlebars->47->2903",
18097
- "default.handlebars->47->3067",
18093
+ "default.handlebars->47->2297",
18094
+ "default.handlebars->47->2751",
18095
+ "default.handlebars->47->2841",
18096
+ "default.handlebars->47->2908",
18097
+ "default.handlebars->47->3073",
18098
"default.handlebars->47->756"
18099
]
18100
},
@@ -18240,7 +18240,7 @@
18240
"zh-cht": "確認刪除所選帳戶?",
18241
"uk": "Підтвердити видалення відібраних акаунтів?",
18242
"xloc": [
18243
- "default.handlebars->47->2745"
18243
+ "default.handlebars->47->2750"
18244
]
18245
},
18246
{
@@ -18295,7 +18295,7 @@
18295
"zh-cht": "確認刪除所選用戶群?",
18296
"uk": "Підтвердити видалення відібраних груп користувачів?",
18297
"xloc": [
18298
- "default.handlebars->47->2835"
18298
+ "default.handlebars->47->2840"
18299
]
18300
},
18301
{
@@ -18324,7 +18324,7 @@
18324
"zh-cht": "確認刪除用戶{0}?",
18325
"uk": "Підтвердити видалення користувача {0}?",
18326
"xloc": [
18327
- "default.handlebars->47->3066"
18327
+ "default.handlebars->47->3072"
18328
]
18329
},
18330
{
@@ -18353,7 +18353,7 @@
18353
"zh-cht": "確認刪除用戶“ {0} ”的成員身份?",
18354
"uk": "Підтвердити видалення приналежності у користувача \\\"{0}\\\"?",
18355
"xloc": [
18356
- "default.handlebars->47->2906"
18356
+ "default.handlebars->47->2911"
18357
]
18358
},
18359
{
@@ -18382,7 +18382,7 @@
18382
"zh-cht": "確認刪除用戶群“ {0} ”的成員身份?",
18383
"uk": "Підтвердити видалення приналежності до групи користувачів \\\"{0}\\\"?",
18384
"xloc": [
18385
- "default.handlebars->47->3098"
18385
+ "default.handlebars->47->3104"
18386
]
18387
},
18388
{
@@ -18501,7 +18501,7 @@
18501
"zh-cht": "確認覆蓋?",
18502
"uk": "Підтвердити перезапис?",
18503
"xloc": [
18504
- "default.handlebars->47->2503"
18504
+ "default.handlebars->47->2506"
18505
]
18506
},
18507
{
@@ -18530,8 +18530,8 @@
18530
"zh-cht": "確認刪除裝置“ {0} ”的訪問權限?",
18531
"uk": "Підтвердити видалення прав доступу для пристрою \\\"{0}\\\"?",
18532
"xloc": [
18533
- "default.handlebars->47->2896",
18534
- "default.handlebars->47->3089"
18533
+ "default.handlebars->47->2901",
18534
+ "default.handlebars->47->3095"
18535
]
18536
},
18537
{
@@ -18560,8 +18560,8 @@
18560
"zh-cht": "確認刪除裝置群“ {0} ”的訪問權限?",
18561
"uk": "Підтвердити видалення прав доступу для групи пристроїв \\\"{0}\\\"?",
18562
"xloc": [
18563
- "default.handlebars->47->2898",
18564
- "default.handlebars->47->3102"
18563
+ "default.handlebars->47->2903",
18564
+ "default.handlebars->47->3108"
18565
]
18566
},
18567
{
@@ -18590,7 +18590,7 @@
18590
"zh-cht": "確認刪除用戶“ {0} ”的訪問權限?",
18591
"uk": "Підтвердити видалення прав доступу для користувача \\\"{0}\\\"?",
18592
"xloc": [
18593
- "default.handlebars->47->3091"
18593
+ "default.handlebars->47->3097"
18594
]
18595
},
18596
{
@@ -18619,7 +18619,7 @@
18619
"zh-cht": "確認刪除用戶群“ {0} ”的訪問權限?",
18620
"uk": "Підтвердити видалення прав доступу для групи користувачів \\\"{0}\\\"?",
18621
"xloc": [
18622
- "default.handlebars->47->3094"
18622
+ "default.handlebars->47->3100"
18623
]
18624
},
18625
{
@@ -18648,8 +18648,8 @@
18648
"zh-cht": "確認刪除訪問權限?",
18649
"uk": "Підтвердити видалення прав доступу?",
18650
"xloc": [
18651
- "default.handlebars->47->3092",
18652
- "default.handlebars->47->3095"
18651
+ "default.handlebars->47->3098",
18652
+ "default.handlebars->47->3101"
18653
]
18654
},
18655
{
@@ -18679,7 +18679,7 @@
18679
"uk": "Підтвердити видалення двофакторної автентифікації через застосунок?",
18680
"xloc": [
18681
"default-mobile.handlebars->11->315",
18682
- "default.handlebars->47->1820"
18682
+ "default.handlebars->47->1823"
18683
]
18684
},
18685
{
@@ -18734,7 +18734,7 @@
18734
"zh-cht": "確認刪除設備共享“{0}”?",
18735
"uk": "Підтвердити скасування поширення пристрою \\\"{0}\\\"?",
18736
"xloc": [
18737
- "default.handlebars->47->3087"
18737
+ "default.handlebars->47->3093"
18738
]
18739
},
18740
{
@@ -18815,7 +18815,7 @@
18815
"zh-cht": "確認移除推送認證設備?",
18816
"uk": "Підтвердити видалення пристрою push-автентифікації?",
18817
"xloc": [
18818
- "default.handlebars->47->1822"
18818
+ "default.handlebars->47->1825"
18819
]
18820
},
18821
{
@@ -18844,7 +18844,7 @@
18844
"zh-cht": "確認刪除用戶“ {0} ”的權限?",
18845
"uk": "Підтвердити видалення прав користувача \\\"{0}\\\"?",
18846
"xloc": [
18847
- "default.handlebars->47->2407"
18847
+ "default.handlebars->47->2410"
18848
]
18849
},
18850
{
@@ -18873,7 +18873,7 @@
18873
"zh-cht": "確認刪除用戶群“ {0} ”的權限?",
18874
"uk": "Підтвердити видалення прав для групи користувачів \\\"{0}\\\"?",
18875
"xloc": [
18876
- "default.handlebars->47->2409"
18876
+ "default.handlebars->47->2412"
18877
]
18878
},
18879
{
@@ -18931,7 +18931,7 @@
18931
"zh-cht": "確認刪除此登錄令牌?",
18932
"uk": "Підтвердити видалення цього токена входу?",
18933
"xloc": [
18934
- "default.handlebars->47->2126"
18934
+ "default.handlebars->47->2129"
18935
]
18936
},
18937
{
@@ -18986,7 +18986,7 @@
18986
"zh-cht": "確認刪除用戶{0}?",
18987
"uk": "Підтвердити видалення користувача {0}?",
18988
"xloc": [
18989
- "default-mobile.handlebars->11->1014"
18989
+ "default-mobile.handlebars->11->1015"
18990
]
18991
},
18992
{
@@ -19045,7 +19045,7 @@
19045
"uk": "Підтвердити {0} із {1} записів{2} для цієї локації?",
19046
"xloc": [
19047
"default-mobile.handlebars->11->371",
19048
- "default.handlebars->47->2506"
19048
+ "default.handlebars->47->2509"
19049
]
19050
},
19051
{
@@ -19078,7 +19078,7 @@
19078
"default-mobile.handlebars->container->page_content->column_l->p10->p10desktop->deskarea1->1->3",
19079
"default-mobile.handlebars->container->page_content->column_l->p10->p10files->p13toolbar->1->0->1->3",
19080
"default-mobile.handlebars->container->page_content->column_l->p10->p10terminal->termTable->termarea1->1->3->connectbutton2span",
19081
- "default.handlebars->47->2192",
19081
+ "default.handlebars->47->2195",
19082
"default.handlebars->47->975",
19083
"default.handlebars->container->column_l->p11->deskarea0->deskarea1->3->connectbutton1span",
19084
"default.handlebars->container->column_l->p12->termTable->1->1->0->1->3->connectbutton2span",
@@ -19174,7 +19174,7 @@
19174
"zh-cht": "連接到伺服器",
19175
"uk": "Підключитися до сервера",
19176
"xloc": [
19177
- "default.handlebars->47->2287"
19177
+ "default.handlebars->47->2290"
19178
]
19179
},
19180
{
@@ -19436,7 +19436,7 @@
19436
"zh-cht": "已連接的Intel® AMT",
19437
"uk": "Підключено Intel® AMT",
19438
"xloc": [
19439
- "default.handlebars->47->3305"
19439
+ "default.handlebars->47->3311"
19440
]
19441
},
19442
{
@@ -19465,7 +19465,7 @@
19465
"zh-cht": "已连接的用户",
19466
"uk": "Підключені Користувачі",
19467
"xloc": [
19468
- "default.handlebars->47->3310"
19468
+ "default.handlebars->47->3316"
19469
]
19470
},
19471
{
@@ -19524,7 +19524,7 @@
19524
"zh-cht": "現在已連接",
19525
"uk": "Підключено зараз",
19526
"xloc": [
19527
- "default-mobile.handlebars->11->781",
19527
+ "default-mobile.handlebars->11->782",
19528
"default.handlebars->47->1614"
19529
]
19530
},
@@ -19730,7 +19730,7 @@
19730
"zh-cht": "連接數量",
19731
"uk": "Кількість Підключень",
19732
"xloc": [
19733
- "default.handlebars->47->3336"
19733
+ "default.handlebars->47->3342"
19734
]
19735
},
19736
{
@@ -19791,7 +19791,7 @@
19791
"zh-cht": "連接轉發器",
19792
"uk": "Ретрансляція Підключення",
19793
"xloc": [
19794
- "default.handlebars->47->3372"
19794
+ "default.handlebars->47->3378"
19795
]
19796
},
19797
{
@@ -19879,7 +19879,7 @@
19879
"uk": "Сполучення",
19880
"xloc": [
19881
"default-mobile.handlebars->11->531",
19882
- "default.handlebars->47->2461",
19882
+ "default.handlebars->47->2464",
19883
"default.handlebars->47->383",
19884
"default.handlebars->47->992",
19885
"default.handlebars->container->column_l->p21->p21main->1->1->meshConnChartDiv->1"
@@ -19911,7 +19911,7 @@
19911
"zh-cht": "同意",
19912
"uk": "Згода",
19913
"xloc": [
19914
- "default.handlebars->47->2677"
19914
+ "default.handlebars->47->2682"
19915
]
19916
},
19917
{
@@ -20064,7 +20064,7 @@
20064
"zh-cht": "Cookie編碼器",
20065
"uk": "Cookie кодувальник",
20066
"xloc": [
20067
- "default.handlebars->47->3355"
20067
+ "default.handlebars->47->3361"
20068
]
20069
},
20070
{
@@ -20362,8 +20362,8 @@
20362
"zh-cht": "複製連結到剪貼板",
20363
"uk": "Копіювати посилання до буфера обміну",
20364
"xloc": [
20365
- "default.handlebars->47->2472",
20366
- "default.handlebars->47->2491",
20365
+ "default.handlebars->47->2475",
20366
+ "default.handlebars->47->2494",
20367
"default.handlebars->47->313",
20368
"default.handlebars->47->335",
20369
"default.handlebars->47->337",
@@ -20518,7 +20518,7 @@
20518
"zh-cht": "複製:“{0}”到“{1}”",
20519
"uk": "Копіювати: \\\"{0}\\\" до \\\"{1}\\\"",
20520
"xloc": [
20521
- "default.handlebars->47->2565"
20521
+ "default.handlebars->47->2568"
20522
]
20523
},
20524
{
@@ -20727,7 +20727,7 @@
20727
"zh-cht": "核心伺服器",
20728
"uk": "Центральний Сервер",
20729
"xloc": [
20730
- "default.handlebars->47->3354"
20730
+ "default.handlebars->47->3360"
20731
]
20732
},
20733
{
@@ -20757,7 +20757,7 @@
20757
"uk": "Корсиканська",
20758
"xloc": [
20759
"default-mobile.handlebars->11->147",
20760
- "default.handlebars->47->1878",
20760
+ "default.handlebars->47->1881",
20761
"login2.handlebars->7->41"
20762
]
20763
},
@@ -20813,7 +20813,7 @@
20813
"zh-cht": "創建帳號",
20814
"uk": "Створити Акаунт",
20815
"xloc": [
20816
- "default.handlebars->47->2803",
20816
+ "default.handlebars->47->2808",
20817
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->16->1->1",
20818
"login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->16->1->1",
20819
"login2.handlebars->centralTable->1->0->logincell->createpanel->createpanelform->9->1->16->1->1"
@@ -20900,7 +20900,7 @@
20900
"zh-cht": "創建登錄令牌",
20901
"uk": "Створити Токен Входу",
20902
"xloc": [
20903
- "default.handlebars->47->2063",
20903
+ "default.handlebars->47->2066",
20904
"default.handlebars->47->338"
20905
]
20906
},
@@ -20930,7 +20930,7 @@
20930
"zh-cht": "創建用戶群",
20931
"uk": "Створити Групу Користувачів",
20932
"xloc": [
20933
- "default.handlebars->47->2843"
20933
+ "default.handlebars->47->2848"
20934
]
20935
},
20936
{
@@ -20988,7 +20988,7 @@
20988
"zh-cht": "使用以下選項創建一個新的裝置群。",
20989
"uk": "Створіть нову групу пристроїв за допомогою параметрів нижче.",
20990
"xloc": [
20991
- "default.handlebars->47->2093"
20991
+ "default.handlebars->47->2096"
20992
]
20993
},
20994
{
@@ -21046,7 +21046,7 @@
21046
"zh-cht": "創建一個臨時用戶名和密碼,可用作您帳戶的替代登錄名。這對於允許工具或其他服務訪問您的帳戶很有用。",
21047
"uk": "Створіть тимчасове ім'я користувача та пароль, які можна використовувати як альтернативний лоґін для входу до вашого акаунту. Це корисно, щоб надати засобам або іншим службам доступ до вашого акаунту.",
21048
"xloc": [
21049
- "default.handlebars->47->2043"
21049
+ "default.handlebars->47->2046"
21050
]
21051
},
21052
{
@@ -21104,7 +21104,7 @@
21104
"zh-cht": "創建文件夾:“{0}”",
21105
"uk": "Створити теку: \\\"{0}\\\"",
21106
"xloc": [
21107
- "default.handlebars->47->2558"
21107
+ "default.handlebars->47->2561"
21108
]
21109
},
21110
{
@@ -21183,7 +21183,7 @@
21183
"nl": "Maak meerdere accounts tegelijk aan door een JSON of een CSV bestand te importeren",
21184
"uk": "Створіть кілька акаунтів одночасно, імпортувавши файл JSON або CSV",
21185
"xloc": [
21186
- "default.handlebars->47->2760"
21186
+ "default.handlebars->47->2765"
21187
]
21188
},
21189
{
@@ -21243,7 +21243,7 @@
21243
"zh-cht": "創建的設備組:{0}",
21244
"uk": "Створена група пристроїв: {0}",
21245
"xloc": [
21246
- "default.handlebars->47->2569"
21246
+ "default.handlebars->47->2572"
21247
]
21248
},
21249
{
@@ -21353,7 +21353,7 @@
21353
"zh-cht": "創建",
21354
"uk": "Створено",
21355
"xloc": [
21356
- "default.handlebars->47->2951"
21356
+ "default.handlebars->47->2956"
21357
]
21358
},
21359
{
@@ -21382,7 +21382,7 @@
21382
"zh-cht": "創作時間",
21383
"uk": "Час Створення",
21384
"xloc": [
21385
- "default.handlebars->47->2172"
21385
+ "default.handlebars->47->2175"
21386
]
21387
},
21388
{
@@ -21442,8 +21442,8 @@
21442
"zh-cht": "創作者",
21443
"uk": "Творець",
21444
"xloc": [
21445
- "default.handlebars->47->2170",
21446
- "default.handlebars->47->2171"
21445
+ "default.handlebars->47->2173",
21446
+ "default.handlebars->47->2174"
21447
]
21448
},
21449
{
@@ -21475,7 +21475,7 @@
21475
"default-mobile.handlebars->11->543",
21476
"default.handlebars->47->1004",
21477
"default.handlebars->47->1386",
21478
- "default.handlebars->47->2131"
21478
+ "default.handlebars->47->2134"
21479
]
21480
},
21481
{
@@ -21505,7 +21505,7 @@
21505
"uk": "Крі",
21506
"xloc": [
21507
"default-mobile.handlebars->11->148",
21508
- "default.handlebars->47->1879",
21508
+ "default.handlebars->47->1882",
21509
"login2.handlebars->7->42"
21510
]
21511
},
@@ -21536,7 +21536,7 @@
21536
"uk": "Хорватська",
21537
"xloc": [
21538
"default-mobile.handlebars->11->149",
21539
- "default.handlebars->47->1880",
21539
+ "default.handlebars->47->1883",
21540
"login2.handlebars->7->43"
21541
]
21542
},
@@ -21835,8 +21835,8 @@
21835
"zh-cht": "當前密碼不正確。",
21836
"uk": "Поточний пароль неправильний.",
21837
"xloc": [
21838
- "default-mobile.handlebars->11->1045",
21839
- "default.handlebars->47->3274"
21838
+ "default-mobile.handlebars->11->1046",
21839
+ "default.handlebars->47->3280"
21840
]
21841
},
21842
{
@@ -21958,7 +21958,7 @@
21958
"uk": "Чеська",
21959
"xloc": [
21960
"default-mobile.handlebars->11->150",
21961
- "default.handlebars->47->1881",
21961
+ "default.handlebars->47->1884",
21962
"login2.handlebars->7->44"
21963
]
21964
},
@@ -22047,7 +22047,7 @@
22047
"uk": "Данська",
22048
"xloc": [
22049
"default-mobile.handlebars->11->151",
22050
- "default.handlebars->47->1882",
22050
+ "default.handlebars->47->1885",
22051
"login2.handlebars->7->45"
22052
]
22053
},
@@ -22123,7 +22123,7 @@
22123
"pl": "Zapisy Bazy Danych",
22124
"uk": "Записи Бази Даних",
22125
"xloc": [
22126
- "default.handlebars->47->3148"
22126
+ "default.handlebars->47->3154"
22127
]
22128
},
22129
{
@@ -22153,7 +22153,7 @@
22153
"uk": "Дата та Час",
22154
"xloc": [
22155
"default-mobile.handlebars->11->309",
22156
- "default.handlebars->47->2040"
22156
+ "default.handlebars->47->2043"
22157
]
22158
},
22159
{
@@ -22184,8 +22184,8 @@
22184
"xloc": [
22185
"default-mobile.handlebars->11->613",
22186
"default.handlebars->47->1295",
22187
- "default.handlebars->47->3152",
22188
- "default.handlebars->47->3155"
22187
+ "default.handlebars->47->3158",
22188
+ "default.handlebars->47->3161"
22189
]
22190
},
22191
{
@@ -22214,8 +22214,8 @@
22214
"zh-cht": "停用",
22215
"uk": "Деактивувати",
22216
"xloc": [
22217
- "default.handlebars->47->2202",
22218
- "default.handlebars->47->2266"
22217
+ "default.handlebars->47->2205",
22218
+ "default.handlebars->47->2269"
22219
]
22220
},
22221
{
@@ -22244,7 +22244,7 @@
22244
"zh-cht": "如果設置停用CCM",
22245
"uk": "Деактивувати CCM, якщо встановлено",
22246
"xloc": [
22247
- "default.handlebars->47->2278"
22247
+ "default.handlebars->47->2281"
22248
]
22249
},
22250
{
@@ -22329,10 +22329,10 @@
22329
"zh-cht": "默認",
22330
"uk": "Типовий",
22331
"xloc": [
22332
- "default.handlebars->47->2790",
22333
- "default.handlebars->47->2839",
22334
- "default.handlebars->47->2850",
22335
- "default.handlebars->47->2924"
22332
+ "default.handlebars->47->2795",
22333
+ "default.handlebars->47->2844",
22334
+ "default.handlebars->47->2855",
22335
+ "default.handlebars->47->2929"
22336
]
22337
},
22338
{
@@ -22397,7 +22397,7 @@
22397
"default-mobile.handlebars->container->page_content->column_l->p5->p5myfiles->p5toolbar->1->0->1->1",
22398
"default-mobile.handlebars->dialog->idx_dlgButtonBar->5",
22399
"default.handlebars->47->1556",
22400
- "default.handlebars->47->2498",
22400
+ "default.handlebars->47->2501",
22401
"default.handlebars->47->854",
22402
"default.handlebars->container->column_l->p13->p13toolbar->1->2->1->3",
22403
"default.handlebars->container->column_l->p5->p5toolbar->1->0->p5filehead->3",
@@ -22438,7 +22438,7 @@
22438
"uk": "Видалити Акаунт",
22439
"xloc": [
22440
"default-mobile.handlebars->11->325",
22441
- "default.handlebars->47->2078"
22441
+ "default.handlebars->47->2081"
22442
]
22443
},
22444
{
@@ -22467,7 +22467,7 @@
22467
"zh-cht": "刪除帳戶",
22468
"uk": "Видалити Акаунти",
22469
"xloc": [
22470
- "default.handlebars->47->2747"
22470
+ "default.handlebars->47->2752"
22471
]
22472
},
22473
{
@@ -22555,10 +22555,10 @@
22555
"zh-cht": "刪除群組",
22556
"uk": "Видалити Групу",
22557
"xloc": [
22558
- "default-mobile.handlebars->11->952",
22559
- "default-mobile.handlebars->11->955",
22560
- "default.handlebars->47->2254",
22561
- "default.handlebars->47->2295"
22558
+ "default-mobile.handlebars->11->953",
22559
+ "default-mobile.handlebars->11->956",
22560
+ "default.handlebars->47->2257",
22561
+ "default.handlebars->47->2298"
22562
]
22563
},
22564
{
@@ -22643,7 +22643,7 @@
22643
"zh-cht": "刪除用戶",
22644
"uk": "Видалити Користувача",
22645
"xloc": [
22646
- "default.handlebars->47->2997"
22646
+ "default.handlebars->47->3003"
22647
]
22648
},
22649
{
@@ -22672,8 +22672,8 @@
22672
"zh-cht": "刪除用戶群組",
22673
"uk": "Видалити Групу Користувачів",
22674
"xloc": [
22675
- "default.handlebars->47->2892",
22676
- "default.handlebars->47->2904"
22675
+ "default.handlebars->47->2897",
22676
+ "default.handlebars->47->2909"
22677
]
22678
},
22679
{
@@ -22702,7 +22702,7 @@
22702
"zh-cht": "刪除用戶群組",
22703
"uk": "Видалити Групи Користувачів",
22704
"xloc": [
22705
- "default.handlebars->47->2837"
22705
+ "default.handlebars->47->2842"
22706
]
22707
},
22708
{
@@ -22731,7 +22731,7 @@
22731
"zh-cht": "刪除用戶{0}",
22732
"uk": "Видалити Користувача {0}",
22733
"xloc": [
22734
- "default.handlebars->47->3065"
22734
+ "default.handlebars->47->3071"
22735
]
22736
},
22737
{
@@ -22761,7 +22761,7 @@
22761
"uk": "Видалити акаунт",
22762
"xloc": [
22763
"default-mobile.handlebars->container->page_content->column_l->p3->p3info->3->p3AccountActions->p2AccountActions->3->p2AccountPassActions->5->0",
22764
- "default.handlebars->47->2743",
22764
+ "default.handlebars->47->2748",
22765
"default.handlebars->container->column_l->p2->p2info->p2AccountActions->3->p2AccountPassActions->7"
22766
]
22767
},
@@ -22820,7 +22820,7 @@
22820
"zh-cht": "刪除群組",
22821
"uk": "Видалити групу",
22822
"xloc": [
22823
- "default.handlebars->47->2833"
22823
+ "default.handlebars->47->2838"
22824
]
22825
},
22826
{
@@ -22878,7 +22878,7 @@
22878
"zh-cht": "遞歸刪除:“{0}”,{1}個元素已刪除",
22879
"uk": "Видалити рекурсивно: \\\"{0}\\\", {1} елемент(ів) видалено",
22880
"xloc": [
22881
- "default.handlebars->47->2560"
22881
+ "default.handlebars->47->2563"
22882
]
22883
},
22884
{
@@ -22910,7 +22910,7 @@
22910
"default-mobile.handlebars->11->368",
22911
"default-mobile.handlebars->11->715",
22912
"default.handlebars->47->1558",
22913
- "default.handlebars->47->2500",
22913
+ "default.handlebars->47->2503",
22914
"sharing.handlebars->11->63"
22915
]
22916
},
@@ -22940,7 +22940,7 @@
22940
"zh-cht": "刪除用戶群組{0}?",
22941
"uk": "Видалити групу користувачів {0}?",
22942
"xloc": [
22943
- "default.handlebars->47->2902"
22943
+ "default.handlebars->47->2907"
22944
]
22945
},
22946
{
@@ -22972,7 +22972,7 @@
22972
"default-mobile.handlebars->11->367",
22973
"default-mobile.handlebars->11->714",
22974
"default.handlebars->47->1557",
22975
- "default.handlebars->47->2499",
22975
+ "default.handlebars->47->2502",
22976
"sharing.handlebars->11->62"
22977
]
22978
},
@@ -23031,7 +23031,7 @@
23031
"zh-cht": "刪除:“{0}”",
23032
"uk": "Видалити: \\\"{0}\\\"",
23033
"xloc": [
23034
- "default.handlebars->47->2559"
23034
+ "default.handlebars->47->2562"
23035
]
23036
},
23037
{
@@ -23060,7 +23060,7 @@
23060
"zh-cht": "刪除:“{0}”,已刪除{1}個元素",
23061
"uk": "Видалити: \\\"{0}\\\", {1} елемент(ів) видалено",
23062
"xloc": [
23063
- "default.handlebars->47->2561"
23063
+ "default.handlebars->47->2564"
23064
]
23065
},
23066
{
@@ -23107,7 +23107,7 @@
23107
"pl": "Odmówiono zalogowania użytkownika z {0}, {1}, {2}",
23108
"uk": "Відмовлено у вході користувачу з {0}, {1}, {2}",
23109
"xloc": [
23110
- "default.handlebars->47->2669"
23110
+ "default.handlebars->47->2672"
23111
]
23112
},
23113
{
@@ -23268,22 +23268,23 @@
23268
"default-mobile.handlebars->11->491",
23269
"default-mobile.handlebars->11->492",
23270
"default-mobile.handlebars->11->631",
23271
- "default-mobile.handlebars->11->795",
23272
- "default-mobile.handlebars->11->938",
23273
- "default-mobile.handlebars->11->961",
23271
+ "default-mobile.handlebars->11->741",
23272
+ "default-mobile.handlebars->11->796",
23273
+ "default-mobile.handlebars->11->939",
23274
+ "default-mobile.handlebars->11->962",
23275
"default.handlebars->47->1365",
23276
"default.handlebars->47->159",
23277
"default.handlebars->47->1601",
23278
"default.handlebars->47->1628",
23279
"default.handlebars->47->1638",
23279
- "default.handlebars->47->2103",
23280
- "default.handlebars->47->2163",
23281
- "default.handlebars->47->2301",
23282
- "default.handlebars->47->2675",
23283
- "default.handlebars->47->2842",
23284
- "default.handlebars->47->2853",
23285
- "default.handlebars->47->2854",
23286
- "default.handlebars->47->2900",
23280
+ "default.handlebars->47->2106",
23281
+ "default.handlebars->47->2166",
23282
+ "default.handlebars->47->2304",
23283
+ "default.handlebars->47->2680",
23284
+ "default.handlebars->47->2847",
23285
+ "default.handlebars->47->2858",
23286
+ "default.handlebars->47->2859",
23287
+ "default.handlebars->47->2905",
23288
"default.handlebars->47->895",
23289
"default.handlebars->47->896",
23290
"default.handlebars->container->column_l->p42->p42tbl->1->0->3"
@@ -23345,12 +23346,12 @@
23346
"default.handlebars->47->1088",
23347
"default.handlebars->47->1202",
23348
"default.handlebars->47->1484",
23348
- "default.handlebars->47->2232",
23349
- "default.handlebars->47->2307",
23350
- "default.handlebars->47->3125",
23351
- "default.handlebars->47->3185",
23352
- "default.handlebars->47->3235",
23353
- "default.handlebars->47->3330",
23349
+ "default.handlebars->47->2235",
23350
+ "default.handlebars->47->2310",
23351
+ "default.handlebars->47->3131",
23352
+ "default.handlebars->47->3191",
23353
+ "default.handlebars->47->3241",
23354
+ "default.handlebars->47->3336",
23355
"default.handlebars->47->860",
23356
"default.handlebars->container->topbar->1->1->MainSubMenuSpan->MainSubMenu->1->0->MainDevDesktop",
23357
"default.handlebars->contextMenu->cxdesktop",
@@ -23386,7 +23387,7 @@
23387
"xloc": [
23388
"default.handlebars->47->1092",
23389
"default.handlebars->47->1205",
23389
- "default.handlebars->47->2236"
23390
+ "default.handlebars->47->2239"
23391
]
23392
},
23393
{
@@ -23416,7 +23417,7 @@
23417
"uk": "Стільниця + Термінал",
23418
"xloc": [
23419
"default.handlebars->47->1089",
23419
- "default.handlebars->47->2233"
23420
+ "default.handlebars->47->2236"
23421
]
23422
},
23423
{
@@ -23447,7 +23448,7 @@
23448
"xloc": [
23449
"default.handlebars->47->1093",
23450
"default.handlebars->47->1207",
23450
- "default.handlebars->47->2237"
23451
+ "default.handlebars->47->2240"
23452
]
23453
},
23454
{
@@ -23505,7 +23506,7 @@
23506
"zh-cht": "桌面多路復用",
23507
"uk": "Мультиплексна Стільниця",
23508
"xloc": [
23508
- "default.handlebars->47->3335"
23509
+ "default.handlebars->47->3341"
23510
]
23511
},
23512
{
@@ -23534,9 +23535,9 @@
23535
"zh-cht": "桌面通知",
23536
"uk": "Сповіщення Cтільниці",
23537
"xloc": [
23537
- "default.handlebars->47->2183",
23538
- "default.handlebars->47->2861",
23539
- "default.handlebars->47->2966",
23538
+ "default.handlebars->47->2186",
23539
+ "default.handlebars->47->2866",
23540
+ "default.handlebars->47->2971",
23541
"default.handlebars->47->966"
23542
]
23543
},
@@ -23566,9 +23567,9 @@
23567
"zh-cht": "桌面提示",
23568
"uk": "Запит до Стільниці",
23569
"xloc": [
23569
- "default.handlebars->47->2182",
23570
- "default.handlebars->47->2860",
23571
- "default.handlebars->47->2965",
23570
+ "default.handlebars->47->2185",
23571
+ "default.handlebars->47->2865",
23572
+ "default.handlebars->47->2970",
23573
"default.handlebars->47->965"
23574
]
23575
},
@@ -23598,9 +23599,9 @@
23599
"zh-cht": "桌面提示+工具欄",
23600
"uk": "Запит до Стільниці та Панелі Засобів",
23601
"xloc": [
23601
- "default.handlebars->47->2180",
23602
- "default.handlebars->47->2858",
23603
- "default.handlebars->47->2963",
23602
+ "default.handlebars->47->2183",
23603
+ "default.handlebars->47->2863",
23604
+ "default.handlebars->47->2968",
23605
"default.handlebars->47->963"
23606
]
23607
},
@@ -23630,7 +23631,7 @@
23631
"zh-cht": "桌面會話",
23632
"uk": "Cесія Стільниці",
23633
"xloc": [
23633
- "default.handlebars->47->3118"
23634
+ "default.handlebars->47->3124"
23635
]
23636
},
23637
{
@@ -23745,9 +23746,9 @@
23746
"zh-cht": "桌面工具欄",
23747
"uk": "Панель Засобів Стільниці",
23748
"xloc": [
23748
- "default.handlebars->47->2181",
23749
- "default.handlebars->47->2859",
23750
- "default.handlebars->47->2964",
23749
+ "default.handlebars->47->2184",
23750
+ "default.handlebars->47->2864",
23751
+ "default.handlebars->47->2969",
23752
"default.handlebars->47->964"
23753
]
23754
},
@@ -23777,7 +23778,7 @@
23778
"zh-cht": "僅桌面視圖",
23779
"uk": "Лише Перегляд Стільниці",
23780
"xloc": [
23780
- "default.handlebars->47->2939"
23781
+ "default.handlebars->47->2944"
23782
]
23783
},
23784
{
@@ -23927,7 +23928,7 @@
23928
"default-mobile.handlebars->11->570",
23929
"default.handlebars->47->1142",
23930
"default.handlebars->47->1167",
23930
- "default.handlebars->47->2398",
23931
+ "default.handlebars->47->2401",
23932
"default.handlebars->container->topbar->1->1->MainSubMenuSpan->MainSubMenu->1->0->MainDevInfo",
23933
"default.handlebars->contextMenu->cxdetails"
23934
]
@@ -23987,14 +23988,14 @@
23988
"zh-cht": "裝置",
23989
"uk": "Пристрій",
23990
"xloc": [
23990
- "default-mobile.handlebars->11->789",
23991
+ "default-mobile.handlebars->11->790",
23992
"default.handlebars->47->1622",
23992
- "default.handlebars->47->1826",
23993
- "default.handlebars->47->2335",
23993
+ "default.handlebars->47->1829",
23994
+ "default.handlebars->47->2338",
23995
"default.handlebars->47->283",
23995
- "default.handlebars->47->3084",
23996
- "default.handlebars->47->3151",
23997
- "default.handlebars->47->3169",
23996
+ "default.handlebars->47->3090",
23997
+ "default.handlebars->47->3157",
23998
+ "default.handlebars->47->3175",
23999
"default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->9->devListToolbarSort->sortselect->5"
24000
]
24001
},
@@ -24144,7 +24145,7 @@
24145
"zh-cht": "設備詳情",
24146
"uk": "Деталі Пристрою",
24147
"xloc": [
24147
- "default.handlebars->47->2359"
24148
+ "default.handlebars->47->2362"
24149
]
24150
},
24151
{
@@ -24203,18 +24204,18 @@
24204
"uk": "Група Пристроїв",
24205
"xloc": [
24206
"agent-translations.json",
24206
- "default-mobile.handlebars->11->1023",
24207
- "default.handlebars->47->2330",
24207
+ "default-mobile.handlebars->11->1024",
24208
"default.handlebars->47->2333",
24209
- "default.handlebars->47->2334",
24210
- "default.handlebars->47->2692",
24211
- "default.handlebars->47->2884",
24212
- "default.handlebars->47->2890",
24213
- "default.handlebars->47->3072",
24214
- "default.handlebars->47->3134",
24215
- "default.handlebars->47->3158",
24216
- "default.handlebars->47->3172",
24217
- "default.handlebars->47->3252"
24209
+ "default.handlebars->47->2336",
24210
+ "default.handlebars->47->2337",
24211
+ "default.handlebars->47->2697",
24212
+ "default.handlebars->47->2889",
24213
+ "default.handlebars->47->2895",
24214
+ "default.handlebars->47->3078",
24215
+ "default.handlebars->47->3140",
24216
+ "default.handlebars->47->3164",
24217
+ "default.handlebars->47->3178",
24218
+ "default.handlebars->47->3258"
24219
]
24220
},
24221
{
@@ -24243,8 +24244,8 @@
24244
"zh-cht": "裝置群用戶",
24245
"uk": "Користувач Групи Пристроїв",
24246
"xloc": [
24246
- "default-mobile.handlebars->11->1012",
24247
- "default.handlebars->47->2405"
24247
+ "default-mobile.handlebars->11->1013",
24248
+ "default.handlebars->47->2408"
24249
]
24250
},
24251
{
@@ -24274,11 +24275,11 @@
24275
"uk": "Групи Пристроїв",
24276
"xloc": [
24277
"default-mobile.handlebars->container->page_content->column_l->p3->p3info->3->3",
24277
- "default.handlebars->47->2708",
24278
- "default.handlebars->47->2827",
24279
- "default.handlebars->47->2871",
24280
- "default.handlebars->47->2960",
24281
- "default.handlebars->47->3308",
24278
+ "default.handlebars->47->2713",
24279
+ "default.handlebars->47->2832",
24280
+ "default.handlebars->47->2876",
24281
+ "default.handlebars->47->2965",
24282
+ "default.handlebars->47->3314",
24283
"default.handlebars->container->column_l->p2->p2info->9"
24284
]
24285
},
@@ -24397,7 +24398,7 @@
24398
"xloc": [
24399
"default-mobile.handlebars->11->629",
24400
"default.handlebars->47->1363",
24400
- "default.handlebars->47->3133",
24401
+ "default.handlebars->47->3139",
24402
"default.handlebars->47->494",
24403
"default.handlebars->47->503",
24404
"player.handlebars->3->25"
@@ -24459,7 +24460,7 @@
24460
"zh-cht": "設備配對鏈接",
24461
"uk": "Посилання на Спарювання Пристроїв",
24462
"xloc": [
24462
- "default-mobile.handlebars->11->966"
24463
+ "default-mobile.handlebars->11->967"
24464
]
24465
},
24466
{
@@ -24468,7 +24469,7 @@
24469
"nl": "Apparaat is ingeschakeld",
24470
"uk": "Пристрій Увімкнено",
24471
"xloc": [
24471
- "default.handlebars->47->2673"
24472
+ "default.handlebars->47->2676"
24473
]
24474
},
24475
{
@@ -24497,7 +24498,7 @@
24498
"zh-cht": "設備推送",
24499
"uk": "Push Пристрій",
24500
"xloc": [
24500
- "default.handlebars->47->2979"
24501
+ "default.handlebars->47->2985"
24502
]
24503
},
24504
{
@@ -24512,7 +24513,7 @@
24513
"pl": "Zapis Powiadomień Push Urządzenia",
24514
"uk": "Запис Push-Сповіщень Пристрою",
24515
"xloc": [
24515
- "default.handlebars->47->3232"
24516
+ "default.handlebars->47->3238"
24517
]
24518
},
24519
{
@@ -24527,7 +24528,7 @@
24528
"pl": "Zapis SMBIOS urządzenia",
24529
"uk": "SMBIOS запис пристрою",
24530
"xloc": [
24530
- "default.handlebars->47->3231"
24531
+ "default.handlebars->47->3237"
24532
]
24533
},
24534
{
@@ -24609,7 +24610,7 @@
24610
"uk": "Посилання для Поширення Пристрою",
24611
"xloc": [
24612
"default.handlebars->47->1085",
24612
- "default.handlebars->47->2229"
24613
+ "default.handlebars->47->2232"
24614
]
24615
},
24616
{
@@ -24759,10 +24760,10 @@
24760
"default.handlebars->47->1111",
24761
"default.handlebars->47->1115",
24762
"default.handlebars->47->1119",
24762
- "default.handlebars->47->2066",
24763
- "default.handlebars->47->2432",
24764
- "default.handlebars->47->2436",
24765
- "default.handlebars->47->2440"
24763
+ "default.handlebars->47->2069",
24764
+ "default.handlebars->47->2435",
24765
+ "default.handlebars->47->2439",
24766
+ "default.handlebars->47->2443"
24767
]
24768
},
24769
{
@@ -24794,10 +24795,10 @@
24795
"default.handlebars->47->1112",
24796
"default.handlebars->47->1116",
24797
"default.handlebars->47->1120",
24797
- "default.handlebars->47->2067",
24798
- "default.handlebars->47->2433",
24799
- "default.handlebars->47->2437",
24800
- "default.handlebars->47->2441"
24798
+ "default.handlebars->47->2070",
24799
+ "default.handlebars->47->2436",
24800
+ "default.handlebars->47->2440",
24801
+ "default.handlebars->47->2444"
24802
]
24803
},
24804
{
@@ -24826,7 +24827,7 @@
24827
"zh-cht": "設備組已創建:{0}",
24828
"uk": "Створено групу пристроїв: {0}",
24829
"xloc": [
24829
- "default.handlebars->47->2590"
24830
+ "default.handlebars->47->2593"
24831
]
24832
},
24833
{
@@ -24855,7 +24856,7 @@
24856
"zh-cht": "設備組已刪除:{0}",
24857
"uk": "Групу пристроїв видалено: {0}",
24858
"xloc": [
24858
- "default.handlebars->47->2591"
24859
+ "default.handlebars->47->2594"
24860
]
24861
},
24862
{
@@ -24884,7 +24885,7 @@
24885
"zh-cht": "設備組成員身份已更改:{0}",
24886
"uk": "Змінено належність у групі пристроїв: {0}",
24887
"xloc": [
24887
- "default.handlebars->47->2592"
24888
+ "default.handlebars->47->2595"
24889
]
24890
},
24891
{
@@ -24943,7 +24944,7 @@
24944
"zh-cht": "設備組通知已更改",
24945
"uk": "Сповіщення групи пристроїв змінено",
24946
"xloc": [
24946
- "default.handlebars->47->2587"
24947
+ "default.handlebars->47->2590"
24948
]
24949
},
24950
{
@@ -24958,7 +24959,7 @@
24959
"pl": "Zapis grupy urządzeń",
24960
"uk": "Запис групи пристроїв",
24961
"xloc": [
24961
- "default.handlebars->47->3217"
24962
+ "default.handlebars->47->3223"
24963
]
24964
},
24965
{
@@ -24987,7 +24988,7 @@
24988
"zh-cht": "未刪除的設備組:{0}",
24989
"uk": "Відновлено групу пристроїв: {0}",
24990
"xloc": [
24990
- "default.handlebars->47->2570"
24991
+ "default.handlebars->47->2573"
24992
]
24993
},
24994
{
@@ -25016,7 +25017,7 @@
25017
"zh-cht": "設備組 {0} 已更改:{1}",
25018
"uk": "Групу пристроїв {0} змінено: {1}",
25019
"xloc": [
25019
- "default.handlebars->47->2656"
25020
+ "default.handlebars->47->2659"
25021
]
25022
},
25023
{
@@ -25060,7 +25061,7 @@
25061
"pl": "Zapisy informacji urządzenia",
25062
"uk": "Записи інформації про пристрій",
25063
"xloc": [
25063
- "default.handlebars->47->3219"
25064
+ "default.handlebars->47->3225"
25065
]
25066
},
25067
{
@@ -25668,7 +25669,7 @@
25669
"pl": "Zapisy zmiany stanu zasilania",
25670
"uk": "Записи про зміни стану живлення",
25671
"xloc": [
25671
- "default.handlebars->47->3225"
25672
+ "default.handlebars->47->3231"
25673
]
25674
},
25675
{
@@ -25683,7 +25684,7 @@
25684
"pl": "Zapis urządzenia",
25685
"uk": "Запис пристрою",
25686
"xloc": [
25686
- "default.handlebars->47->3216"
25687
+ "default.handlebars->47->3222"
25688
]
25689
},
25690
{
@@ -25712,7 +25713,7 @@
25713
"zh-cht": "設備請求 Intel(R) AMT ACM TLS 激活,FQDN:{0}",
25714
"uk": "Пристрій запитав активацію Intel(R) AMT ACM TLS, FQDN: {0}",
25715
"xloc": [
25715
- "default.handlebars->47->2625"
25716
+ "default.handlebars->47->2628"
25717
]
25718
},
25719
{
@@ -25741,7 +25742,7 @@
25742
"zh-cht": "設備請求激活Intel(R)AMT ACM,FQDN:{0}",
25743
"uk": "Пристрій запитав активацію Intel(R) AMT ACM, FQDN: {0}",
25744
"xloc": [
25744
- "default.handlebars->47->2572"
25745
+ "default.handlebars->47->2575"
25746
]
25747
},
25748
{
@@ -25756,7 +25757,7 @@
25757
"pl": "Zapisy udostępniania urządzenia",
25758
"uk": "Записи поширеного пристрою",
25759
"xloc": [
25759
- "default.handlebars->47->3229"
25760
+ "default.handlebars->47->3235"
25761
]
25762
},
25763
{
@@ -25771,7 +25772,7 @@
25772
"pl": "Zapisy urządzenia, użytkowników, grup i inne",
25773
"uk": "Пристрій, користувачі, групи та інші записи",
25774
"xloc": [
25774
- "default.handlebars->47->3233"
25775
+ "default.handlebars->47->3239"
25776
]
25777
},
25778
{
@@ -25826,9 +25827,9 @@
25827
"zh-cht": "裝置",
25828
"uk": "Пристрої",
25829
"xloc": [
25829
- "default.handlebars->47->2252",
25830
- "default.handlebars->47->2828",
25831
- "default.handlebars->47->2872"
25830
+ "default.handlebars->47->2255",
25831
+ "default.handlebars->47->2833",
25832
+ "default.handlebars->47->2877"
25833
]
25834
},
25835
{
@@ -26057,11 +26058,17 @@
26058
"zh-cht": "已禁用",
26059
"uk": "Вимкнено",
26060
"xloc": [
26060
- "default-mobile.handlebars->11->772",
26061
+ "default-mobile.handlebars->11->773",
26062
"default.handlebars->47->132",
26063
"default.handlebars->47->957"
26064
]
26065
},
26066
+ {
26067
+ "en": "Disabled Duo two-factor authentication",
26068
+ "xloc": [
26069
+ "default.handlebars->47->2678"
26070
+ ]
26071
+ },
26072
{
26073
"bs": "Onemogućena dvofaktorska autentikacija e-pošte",
26074
"ca": "S'ha desactivat l'autenticació de dos factors de correu electrònic",
@@ -26088,7 +26095,7 @@
26095
"zh-cht": "禁用的電子郵件兩因素身份驗證",
26096
"uk": "Двофакторну автентифікацію е-поштою вимкнено",
26097
"xloc": [
26091
- "default.handlebars->47->2603"
26098
+ "default.handlebars->47->2606"
26099
]
26100
},
26101
{
@@ -26121,7 +26128,7 @@
26128
"default-mobile.handlebars->container->page_content->column_l->p10->p10desktop->deskarea1->1->3",
26129
"default-mobile.handlebars->container->page_content->column_l->p10->p10files->p13toolbar->1->0->1->3",
26130
"default-mobile.handlebars->container->page_content->column_l->p10->p10terminal->termTable->termarea1->1->3->disconnectbutton2span",
26124
- "default.handlebars->47->2193",
26131
+ "default.handlebars->47->2196",
26132
"default.handlebars->47->976",
26133
"default.handlebars->container->column_l->p11->deskarea0->deskarea1->3->disconnectbutton1span",
26134
"default.handlebars->container->column_l->p12->termTable->1->1->0->1->3->disconnectbutton2span",
@@ -26346,7 +26353,7 @@
26353
"uk": "Discord",
26354
"xloc": [
26355
"default.handlebars->47->1788",
26349
- "default.handlebars->47->3011"
26356
+ "default.handlebars->47->3017"
26357
]
26358
},
26359
{
@@ -26546,7 +26553,7 @@
26553
"zh-cht": "顯示裝置群名稱",
26554
"uk": "Показ назви групи пристроїв",
26555
"xloc": [
26549
- "default.handlebars->47->2065"
26556
+ "default.handlebars->47->2068"
26557
]
26558
},
26559
{
@@ -26604,7 +26611,7 @@
26611
"zh-cht": "顯示公共鏈結",
26612
"uk": "Показати публічне посилання",
26613
"xloc": [
26607
- "default.handlebars->47->2471"
26614
+ "default.handlebars->47->2474"
26615
]
26616
},
26617
{
@@ -26643,7 +26650,7 @@
26650
"pl": "Wyświetl okno powiadomienia, tytuł=\\\"{0}\\\", wiadomość=\\\"{1}\\\"",
26651
"uk": "Показ вікна попередження, title=\\\"{0}\\\", message=\\\"{1}\\\"",
26652
"xloc": [
26646
- "default.handlebars->47->2672"
26653
+ "default.handlebars->47->2675"
26654
]
26655
},
26656
{
@@ -26672,7 +26679,7 @@
26679
"zh-cht": "顯示消息框,標題= “{0}”,消息= “{1}”",
26680
"uk": "Показ вікна повідомлення, title=\\\"{0}\\\", message=\\\"{1}\\\"",
26681
"xloc": [
26675
- "default.handlebars->47->2532"
26682
+ "default.handlebars->47->2535"
26683
]
26684
},
26685
{
@@ -26701,7 +26708,7 @@
26708
"zh-cht": "顯示吐司消息,標題= “{0}”,消息= “{1}”",
26709
"uk": "Показувати висувне повідомлення, title=\\\"{0}\\\", message=\\\"{1}\\\"",
26710
"xloc": [
26704
- "default.handlebars->47->2540"
26711
+ "default.handlebars->47->2543"
26712
]
26713
},
26714
{
@@ -26730,8 +26737,8 @@
26737
"zh-cht": "什麼都不做",
26738
"uk": "Нічого не робити",
26739
"xloc": [
26733
- "default.handlebars->47->2281",
26734
- "default.handlebars->47->2285"
26740
+ "default.handlebars->47->2284",
26741
+ "default.handlebars->47->2288"
26742
]
26743
},
26744
{
@@ -26762,10 +26769,10 @@
26769
"xloc": [
26770
"default.handlebars->47->128",
26771
"default.handlebars->47->1389",
26765
- "default.handlebars->47->2791",
26766
- "default.handlebars->47->2840",
26767
- "default.handlebars->47->2849",
26768
- "default.handlebars->47->2923",
26772
+ "default.handlebars->47->2796",
26773
+ "default.handlebars->47->2845",
26774
+ "default.handlebars->47->2854",
26775
+ "default.handlebars->47->2928",
26776
"mstsc.handlebars->main->1->3->1->rowdomain->1->0",
26777
"mstsc.handlebars->main->1->3->1->rowdomain->3"
26778
]
@@ -26822,7 +26829,7 @@
26829
"zh-cht": "請勿更改,如果設置請保留CCM",
26830
"uk": "Не змінювати, зберегти CCM, якщо встановлено",
26831
"xloc": [
26825
- "default.handlebars->47->2277"
26832
+ "default.handlebars->47->2280"
26833
]
26834
},
26835
{
@@ -26877,7 +26884,7 @@
26884
"zh-cht": "不要連接到伺服器",
26885
"uk": "Не підключатися до сервера",
26886
"xloc": [
26880
- "default.handlebars->47->2286"
26887
+ "default.handlebars->47->2289"
26888
]
26889
},
26890
{
@@ -27284,7 +27291,7 @@
27291
"zh-cht": "下載報告",
27292
"uk": "Завантажити Звіт",
27293
"xloc": [
27287
- "default.handlebars->47->2697",
27294
+ "default.handlebars->47->2702",
27295
"default.handlebars->container->column_l->p3->3->1->0->3",
27296
"default.handlebars->container->column_l->p60->3->1->0->3->1->p60downloadReportDiv"
27297
]
@@ -27402,7 +27409,7 @@
27409
"zh-cht": "下載設備列表",
27410
"uk": "Отримати перелік пристроїв",
27411
"xloc": [
27405
- "default.handlebars->47->2250"
27412
+ "default.handlebars->47->2253"
27413
]
27414
},
27415
{
@@ -27636,7 +27643,7 @@
27643
"zh-cht": "使用以下一種檔案格式下載事件列表。",
27644
"uk": "Завантажте файл переліку подій в одному з наведених нижче форматів.",
27645
"xloc": [
27639
- "default.handlebars->47->2698"
27646
+ "default.handlebars->47->2703"
27647
]
27648
},
27649
{
@@ -27665,7 +27672,7 @@
27672
"zh-cht": "使用以下一種檔案格式下載用戶列表。",
27673
"uk": "Завантажити файл із переліком користувачів в одному з наведених нижче форматів.",
27674
"xloc": [
27668
- "default.handlebars->47->2775"
27675
+ "default.handlebars->47->2780"
27676
]
27677
},
27678
{
@@ -27783,7 +27790,7 @@
27790
"zh-cht": "下載:“{0}”",
27791
"uk": "Завантажити: \\\"{0}\\\"",
27792
"xloc": [
27786
- "default.handlebars->47->2563"
27793
+ "default.handlebars->47->2566"
27794
]
27795
},
27796
{
@@ -27812,7 +27819,7 @@
27819
"zh-cht": "下載:\\\"{0}\\\",大小:{1}",
27820
"uk": "Завантажити: \\\"{0}\\\", Розмір: {1}",
27821
"xloc": [
27815
- "default.handlebars->47->2620"
27822
+ "default.handlebars->47->2623"
27823
]
27824
},
27825
{
@@ -27844,6 +27851,20 @@
27851
"player.handlebars->3->45"
27852
]
27853
},
27854
+ {
27855
+ "en": "Duo",
27856
+ "xloc": [
27857
+ "default.handlebars->47->2983"
27858
+ ]
27859
+ },
27860
+ {
27861
+ "en": "Duo Authentication",
27862
+ "xloc": [
27863
+ "default.handlebars->47->1817",
27864
+ "login2.handlebars->centralTable->1->0->logincell->resettokenpanel->resettokenpanelform->5->1->2farow2->1->3",
27865
+ "login2.handlebars->centralTable->1->0->logincell->tokenpanel->tokenpanelform->7->1->2farow->1->3"
27866
+ ]
27867
+ },
27868
{
27869
"bs": "Duplirani agent",
27870
"ca": "Agent duplicat",
@@ -27870,7 +27891,7 @@
27891
"zh-cht": "代理重複",
27892
"uk": "Дублювати Агента",
27893
"xloc": [
27873
- "default.handlebars->47->3304"
27894
+ "default.handlebars->47->3310"
27895
]
27896
},
27897
{
@@ -27928,7 +27949,7 @@
27949
"zh-cht": "複製用戶群",
27950
"uk": "Дублювати Групу Користувачів",
27951
"xloc": [
27931
- "default.handlebars->47->2844"
27952
+ "default.handlebars->47->2849"
27953
]
27954
},
27955
{
@@ -27986,8 +28007,8 @@
28007
"default.handlebars->47->1238",
28008
"default.handlebars->47->289",
28009
"default.handlebars->47->291",
27989
- "default.handlebars->47->3113",
27990
- "default.handlebars->47->3139",
28010
+ "default.handlebars->47->3119",
28011
+ "default.handlebars->47->3145",
28012
"player.handlebars->3->18"
28013
]
28014
},
@@ -28044,7 +28065,7 @@
28065
"uk": "Голландська (Бельгійська)",
28066
"xloc": [
28067
"default-mobile.handlebars->11->153",
28047
- "default.handlebars->47->1884",
28068
+ "default.handlebars->47->1887",
28069
"login2.handlebars->7->47"
28070
]
28071
},
@@ -28075,7 +28096,7 @@
28096
"uk": "Голландська (Стандартна)",
28097
"xloc": [
28098
"default-mobile.handlebars->11->152",
28078
- "default.handlebars->47->1883",
28099
+ "default.handlebars->47->1886",
28100
"login2.handlebars->7->46"
28101
]
28102
},
@@ -28554,17 +28575,17 @@
28575
"zh-cht": "編輯裝置群",
28576
"uk": "Редагувати Групу Пристроїв",
28577
"xloc": [
28557
- "default-mobile.handlebars->11->956",
28558
- "default-mobile.handlebars->11->959",
28559
- "default-mobile.handlebars->11->962",
28560
- "default-mobile.handlebars->11->969",
28561
- "default-mobile.handlebars->11->989",
28562
- "default.handlebars->47->2296",
28578
+ "default-mobile.handlebars->11->957",
28579
+ "default-mobile.handlebars->11->960",
28580
+ "default-mobile.handlebars->11->963",
28581
+ "default-mobile.handlebars->11->970",
28582
+ "default-mobile.handlebars->11->990",
28583
"default.handlebars->47->2299",
28584
"default.handlebars->47->2302",
28565
- "default.handlebars->47->2339",
28566
- "default.handlebars->47->2366",
28567
- "default.handlebars->47->2378"
28585
+ "default.handlebars->47->2305",
28586
+ "default.handlebars->47->2342",
28587
+ "default.handlebars->47->2369",
28588
+ "default.handlebars->47->2381"
28589
]
28590
},
28591
{
@@ -28593,7 +28614,7 @@
28614
"zh-cht": "編輯裝置群功能",
28615
"uk": "Редагувати Ознаки Групи Пристроїв",
28616
"xloc": [
28596
- "default.handlebars->47->2325"
28617
+ "default.handlebars->47->2328"
28618
]
28619
},
28620
{
@@ -28622,8 +28643,8 @@
28643
"zh-cht": "編輯裝置群權限",
28644
"uk": "Редагувати Дозволи Групи Пристроїв",
28645
"xloc": [
28625
- "default.handlebars->47->2363",
28626
- "default.handlebars->47->2375"
28646
+ "default.handlebars->47->2366",
28647
+ "default.handlebars->47->2378"
28648
]
28649
},
28650
{
@@ -28652,7 +28673,7 @@
28673
"zh-cht": "編輯裝置群用戶同意",
28674
"uk": "Редагувати Згоду Користувача Групи Пристроїв",
28675
"xloc": [
28655
- "default.handlebars->47->2303"
28676
+ "default.handlebars->47->2306"
28677
]
28678
},
28679
{
@@ -28681,8 +28702,8 @@
28702
"zh-cht": "編輯裝置筆記",
28703
"uk": "Редагувати Нотатки Пристрою",
28704
"xloc": [
28684
- "default-mobile.handlebars->11->981",
28685
- "default.handlebars->47->2353"
28705
+ "default-mobile.handlebars->11->982",
28706
+ "default.handlebars->47->2356"
28707
]
28708
},
28709
{
@@ -28711,8 +28732,8 @@
28732
"zh-cht": "編輯裝置權限",
28733
"uk": "Редагувати Дозволи Пристрою",
28734
"xloc": [
28714
- "default.handlebars->47->2368",
28715
- "default.handlebars->47->2370"
28735
+ "default.handlebars->47->2371",
28736
+ "default.handlebars->47->2373"
28737
]
28738
},
28739
{
@@ -28770,7 +28791,7 @@
28791
"zh-cht": "編輯裝置用戶同意",
28792
"uk": "Редагувати Згоду Користувача Пристрою",
28793
"xloc": [
28773
- "default.handlebars->47->2305"
28794
+ "default.handlebars->47->2308"
28795
]
28796
},
28797
{
@@ -28864,8 +28885,8 @@
28885
"zh-cht": "編輯筆記",
28886
"uk": "Редагувати Примітки",
28887
"xloc": [
28867
- "default-mobile.handlebars->11->996",
28868
- "default.handlebars->47->2385"
28888
+ "default-mobile.handlebars->11->997",
28889
+ "default.handlebars->47->2388"
28890
]
28891
},
28892
{
@@ -28894,7 +28915,7 @@
28915
"zh-cht": "編輯用戶同意",
28916
"uk": "Редагувати Згоду Користувача",
28917
"xloc": [
28897
- "default.handlebars->47->2304"
28918
+ "default.handlebars->47->2307"
28919
]
28920
},
28921
{
@@ -28923,7 +28944,7 @@
28944
"zh-cht": "編輯用戶裝置群權限",
28945
"uk": "Редагувати Дозволи Групи Пристроїв Користувача",
28946
"xloc": [
28926
- "default.handlebars->47->2376"
28947
+ "default.handlebars->47->2379"
28948
]
28949
},
28950
{
@@ -28952,7 +28973,7 @@
28973
"zh-cht": "編輯用戶裝置權限",
28974
"uk": "Редагувати Дозволи Пристрою Користувача",
28975
"xloc": [
28955
- "default.handlebars->47->2371"
28976
+ "default.handlebars->47->2374"
28977
]
28978
},
28979
{
@@ -28981,7 +29002,7 @@
29002
"zh-cht": "編輯用戶特徵",
29003
"uk": "Редагувати Ознаки Користувача",
29004
"xloc": [
28984
- "default.handlebars->47->3048"
29005
+ "default.handlebars->47->3054"
29006
]
29007
},
29008
{
@@ -29010,7 +29031,7 @@
29031
"zh-cht": "編輯用戶群",
29032
"uk": "Редагувати Групу Користувачів",
29033
"xloc": [
29013
- "default.handlebars->47->2901"
29034
+ "default.handlebars->47->2906"
29035
]
29036
},
29037
{
@@ -29039,7 +29060,7 @@
29060
"zh-cht": "編輯用戶群裝置權限",
29061
"uk": "Редагувати Дозволи Крупи Користувачів на Пристрої",
29062
"xloc": [
29042
- "default.handlebars->47->2373"
29063
+ "default.handlebars->47->2376"
29064
]
29065
},
29066
{
@@ -29068,7 +29089,7 @@
29089
"zh-cht": "編輯用戶組功能",
29090
"uk": "Редагувати Ознаки Групи Користувачів",
29091
"xloc": [
29071
- "default.handlebars->47->2894"
29092
+ "default.handlebars->47->2899"
29093
]
29094
},
29095
{
@@ -29097,7 +29118,7 @@
29118
"zh-cht": "編輯用戶組用戶同意",
29119
"uk": "Редагувати Згоду Користувача Групи Користувачів",
29120
"xloc": [
29100
- "default.handlebars->47->2306"
29121
+ "default.handlebars->47->2309"
29122
]
29123
},
29124
{
@@ -29241,12 +29262,12 @@
29262
"uk": "е-пошта",
29263
"xloc": [
29264
"default-mobile.handlebars->11->319",
29244
- "default.handlebars->47->2793",
29245
- "default.handlebars->47->2927",
29246
- "default.handlebars->47->2929",
29247
- "default.handlebars->47->2977",
29248
- "default.handlebars->47->2990",
29249
- "default.handlebars->47->3051",
29265
+ "default.handlebars->47->2798",
29266
+ "default.handlebars->47->2932",
29267
+ "default.handlebars->47->2934",
29268
+ "default.handlebars->47->2982",
29269
+ "default.handlebars->47->2996",
29270
+ "default.handlebars->47->3057",
29271
"default.handlebars->47->545",
29272
"login-mobile.handlebars->5->45",
29273
"login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->3",
@@ -29272,7 +29293,7 @@
29293
"pl": "Email ({0})",
29294
"uk": "е-пошта ({0})",
29295
"xloc": [
29275
- "default.handlebars->47->2195",
29296
+ "default.handlebars->47->2198",
29297
"default.handlebars->47->978"
29298
]
29299
},
@@ -29303,7 +29324,7 @@
29324
"uk": "Змінити Адресу е-пошти",
29325
"xloc": [
29326
"default-mobile.handlebars->11->320",
29306
- "default.handlebars->47->2074"
29327
+ "default.handlebars->47->2077"
29328
]
29329
},
29330
{
@@ -29458,7 +29479,7 @@
29479
"uk": "Сповіщення е-поштою",
29480
"xloc": [
29481
"default.handlebars->47->1114",
29461
- "default.handlebars->47->2435"
29482
+ "default.handlebars->47->2438"
29483
]
29484
},
29485
{
@@ -29514,7 +29535,7 @@
29535
"uk": "Верифікація е-пошти",
29536
"xloc": [
29537
"default-mobile.handlebars->11->318",
29517
- "default.handlebars->47->2072"
29538
+ "default.handlebars->47->2075"
29539
]
29540
},
29541
{
@@ -29543,8 +29564,8 @@
29564
"zh-cht": "不允許使用電子郵件域 \\\"{0}\\\"。只允許 ({1})",
29565
"uk": "Домен е-пошти \\\"{0}\\\" заборонено. Дозволено лише ({1}).",
29566
"xloc": [
29546
- "default-mobile.handlebars->11->1054",
29547
- "default.handlebars->47->3283"
29567
+ "default-mobile.handlebars->11->1055",
29568
+ "default.handlebars->47->3289"
29569
]
29570
},
29571
{
@@ -29602,7 +29623,7 @@
29623
"zh-cht": "電郵未驗證",
29624
"uk": "Е-пошта не верифікована",
29625
"xloc": [
29605
- "default.handlebars->47->2728"
29626
+ "default.handlebars->47->2733"
29627
]
29628
},
29629
{
@@ -29631,8 +29652,8 @@
29652
"zh-cht": "電子郵件已驗證",
29653
"uk": "Е-пошту верифіковано",
29654
"xloc": [
29634
- "default.handlebars->47->2729",
29635
- "default.handlebars->47->2921"
29655
+ "default.handlebars->47->2734",
29656
+ "default.handlebars->47->2926"
29657
]
29658
},
29659
{
@@ -29661,7 +29682,7 @@
29682
"zh-cht": "電郵已驗證。",
29683
"uk": "Е-пошту верифіковано.",
29684
"xloc": [
29664
- "default.handlebars->47->2799"
29685
+ "default.handlebars->47->2804"
29686
]
29687
},
29688
{
@@ -29690,7 +29711,7 @@
29711
"zh-cht": "電郵未驗證",
29712
"uk": "Е-пошта не верифікована",
29713
"xloc": [
29693
- "default.handlebars->47->2922"
29714
+ "default.handlebars->47->2927"
29715
]
29716
},
29717
{
@@ -29745,8 +29766,8 @@
29766
"zh-cht": "電郵已發送。",
29767
"uk": "Е-пошту надіслано.",
29768
"xloc": [
29748
- "default-mobile.handlebars->11->1038",
29749
- "default.handlebars->47->3267",
29769
+ "default-mobile.handlebars->11->1039",
29770
+ "default.handlebars->47->3273",
29771
"login-mobile.handlebars->5->2",
29772
"login.handlebars->5->2",
29773
"login2.handlebars->7->201"
@@ -29835,7 +29856,7 @@
29856
"zh-cht": "已通過電郵驗證,並且需要重置密碼。",
29857
"uk": "Потрібно верифікувати е-пошту та примусово скинути пароль.",
29858
"xloc": [
29838
- "default.handlebars->47->2800"
29859
+ "default.handlebars->47->2805"
29860
]
29861
},
29862
{
@@ -29890,7 +29911,7 @@
29911
"zh-cht": "電子郵件/短信/推送流量",
29912
"uk": "е-пошта/SMS/Push обмін",
29913
"xloc": [
29893
- "default.handlebars->47->3363"
29914
+ "default.handlebars->47->3369"
29915
]
29916
},
29917
{
@@ -29956,6 +29977,12 @@
29977
"default.handlebars->container->dialog->dialogBody->dialog7->d7rdpkvm->5->d7rdpflags->15"
29978
]
29979
},
29980
+ {
29981
+ "en": "Enable Duo two-factor authentication.",
29982
+ "xloc": [
29983
+ "default.handlebars->47->1819"
29984
+ ]
29985
+ },
29986
{
29987
"bs": "Omogućite ugađanje fontova",
29988
"ca": "Habiliteu la suavització de fonts",
@@ -30010,7 +30037,7 @@
30037
"zh-cht": "啟用邀請代碼",
30038
"uk": "Увімкнути коди запрошення",
30039
"xloc": [
30013
- "default.handlebars->47->2411"
30040
+ "default.handlebars->47->2414"
30041
]
30042
},
30043
{
@@ -30127,10 +30154,16 @@
30154
"zh-cht": "已啟用",
30155
"uk": "Увімкнено",
30156
"xloc": [
30130
- "default-mobile.handlebars->11->885",
30157
+ "default-mobile.handlebars->11->886",
30158
"default.handlebars->47->131",
30159
"default.handlebars->47->1728",
30133
- "default.handlebars->47->3141"
30160
+ "default.handlebars->47->3147"
30161
+ ]
30162
+ },
30163
+ {
30164
+ "en": "Enabled Duo two-factor authentication",
30165
+ "xloc": [
30166
+ "default.handlebars->47->2677"
30167
]
30168
},
30169
{
@@ -30159,7 +30192,7 @@
30192
"zh-cht": "啟用電子郵件兩因素身份驗證",
30193
"uk": "Увімкнено двофакторну автентифікацію е-поштою",
30194
"xloc": [
30162
- "default.handlebars->47->2602"
30195
+ "default.handlebars->47->2605"
30196
]
30197
},
30198
{
@@ -30288,7 +30321,7 @@
30321
"nl": "Versleuteling wordt uitgevoerd",
30322
"uk": "Виконується Шифрування",
30323
"xloc": [
30291
- "default-mobile.handlebars->11->887",
30324
+ "default-mobile.handlebars->11->888",
30325
"default.handlebars->47->1730"
30326
]
30327
},
@@ -30348,7 +30381,7 @@
30381
"zh-cht": "時間結束",
30382
"uk": "Час закінчення",
30383
"xloc": [
30351
- "default.handlebars->47->3138"
30384
+ "default.handlebars->47->3144"
30385
]
30386
},
30387
{
@@ -30377,7 +30410,7 @@
30410
"zh-cht": "從{1}到{2},{3}秒結束了桌面會話“{0}”",
30411
"uk": "Завершено сесію стільниці \\\"{0}\\\" з {1} до {2}, {3} секунд(и)",
30412
"xloc": [
30380
- "default.handlebars->47->2525"
30413
+ "default.handlebars->47->2528"
30414
]
30415
},
30416
{
@@ -30406,7 +30439,7 @@
30439
"zh-cht": "從{1}到{2},{3}秒結束了文件管理會話“{0}”",
30440
"uk": "Завершено сесію керування файлами \\\"{0}\\\" з {1} до {2}, {3} секунд(и)",
30441
"xloc": [
30409
- "default.handlebars->47->2526"
30442
+ "default.handlebars->47->2529"
30443
]
30444
},
30445
{
@@ -30435,7 +30468,7 @@
30468
"zh-cht": "已結束本地中繼會話 \\\"{0}\\\",協議 {1} 到 {2},{3} 秒",
30469
"uk": "Завершено сесію локальної ретрансляції \\\"{0}\\\", протокол {1} до {2}, {3} секунд(и)",
30470
"xloc": [
30438
- "default.handlebars->47->2635"
30471
+ "default.handlebars->47->2638"
30472
]
30473
},
30474
{
@@ -30464,7 +30497,7 @@
30497
"zh-cht": "從 {1} 到 {2} 結束的 Messenger 會話 \\\"{0}\\\",{3} 秒",
30498
"uk": "Завершено сесію месенджера \\\"{0}\\\" з {1} до {2}, {3} секунд(и)",
30499
"xloc": [
30467
- "default.handlebars->47->2626"
30500
+ "default.handlebars->47->2629"
30501
]
30502
},
30503
{
@@ -30493,7 +30526,7 @@
30526
"zh-cht": "從{1}到{2},{3}秒結束了中繼會話“{0}”",
30527
"uk": "Завершено сесію ретрансляції \\\"{0}\\\" від {1} до {2}, {3} секунд(и)",
30528
"xloc": [
30496
- "default.handlebars->47->2523"
30529
+ "default.handlebars->47->2526"
30530
]
30531
},
30532
{
@@ -30522,7 +30555,7 @@
30555
"zh-cht": "從{1}到{2},{3}秒結束了終端會話“{0}”",
30556
"uk": "Завершено термінальну сесію \\\"{0}\\\" з {1} до {2}, {3} секунд(и)",
30557
"xloc": [
30525
- "default.handlebars->47->2524"
30558
+ "default.handlebars->47->2527"
30559
]
30560
},
30561
{
@@ -30552,7 +30585,7 @@
30585
"uk": "Англійська",
30586
"xloc": [
30587
"default-mobile.handlebars->11->154",
30555
- "default.handlebars->47->1885",
30588
+ "default.handlebars->47->1888",
30589
"login2.handlebars->7->48"
30590
]
30591
},
@@ -30583,7 +30616,7 @@
30616
"uk": "Англійська (Австралія)",
30617
"xloc": [
30618
"default-mobile.handlebars->11->155",
30586
- "default.handlebars->47->1886",
30619
+ "default.handlebars->47->1889",
30620
"login2.handlebars->7->49"
30621
]
30622
},
@@ -30614,7 +30647,7 @@
30647
"uk": "Англійська (Беліз)",
30648
"xloc": [
30649
"default-mobile.handlebars->11->156",
30617
- "default.handlebars->47->1887",
30650
+ "default.handlebars->47->1890",
30651
"login2.handlebars->7->50"
30652
]
30653
},
@@ -30645,7 +30678,7 @@
30678
"uk": "Англійська (Канада)",
30679
"xloc": [
30680
"default-mobile.handlebars->11->157",
30648
- "default.handlebars->47->1888",
30681
+ "default.handlebars->47->1891",
30682
"login2.handlebars->7->51"
30683
]
30684
},
@@ -30676,7 +30709,7 @@
30709
"uk": "Англійська (Ірландія)",
30710
"xloc": [
30711
"default-mobile.handlebars->11->158",
30679
- "default.handlebars->47->1889",
30712
+ "default.handlebars->47->1892",
30713
"login2.handlebars->7->52"
30714
]
30715
},
@@ -30707,7 +30740,7 @@
30740
"uk": "Англійська (Ямайка)",
30741
"xloc": [
30742
"default-mobile.handlebars->11->159",
30710
- "default.handlebars->47->1890",
30743
+ "default.handlebars->47->1893",
30744
"login2.handlebars->7->53"
30745
]
30746
},
@@ -30738,7 +30771,7 @@
30771
"uk": "Англійська (Нова Зеландія)",
30772
"xloc": [
30773
"default-mobile.handlebars->11->160",
30741
- "default.handlebars->47->1891",
30774
+ "default.handlebars->47->1894",
30775
"login2.handlebars->7->54"
30776
]
30777
},
@@ -30769,7 +30802,7 @@
30802
"uk": "Англійська (Філіппіни)",
30803
"xloc": [
30804
"default-mobile.handlebars->11->161",
30772
- "default.handlebars->47->1892",
30805
+ "default.handlebars->47->1895",
30806
"login2.handlebars->7->55"
30807
]
30808
},
@@ -30800,7 +30833,7 @@
30833
"uk": "Англійська (Південна Африка)",
30834
"xloc": [
30835
"default-mobile.handlebars->11->162",
30803
- "default.handlebars->47->1893",
30836
+ "default.handlebars->47->1896",
30837
"login2.handlebars->7->56"
30838
]
30839
},
@@ -30831,7 +30864,7 @@
30864
"uk": "Англійська (Трінідад і Тобаго)",
30865
"xloc": [
30866
"default-mobile.handlebars->11->163",
30834
- "default.handlebars->47->1894",
30867
+ "default.handlebars->47->1897",
30868
"login2.handlebars->7->57"
30869
]
30870
},
@@ -30862,7 +30895,7 @@
30895
"uk": "Англійська (Великобританія)",
30896
"xloc": [
30897
"default-mobile.handlebars->11->164",
30865
- "default.handlebars->47->1895",
30898
+ "default.handlebars->47->1898",
30899
"login2.handlebars->7->58"
30900
]
30901
},
@@ -30893,7 +30926,7 @@
30926
"uk": "Англійська (Сполучені Штати)",
30927
"xloc": [
30928
"default-mobile.handlebars->11->165",
30896
- "default.handlebars->47->1896",
30929
+ "default.handlebars->47->1899",
30930
"login2.handlebars->7->59"
30931
]
30932
},
@@ -30924,7 +30957,7 @@
30957
"uk": "Англійська (Зімбабве)",
30958
"xloc": [
30959
"default-mobile.handlebars->11->166",
30927
- "default.handlebars->47->1897",
30960
+ "default.handlebars->47->1900",
30961
"login2.handlebars->7->60"
30962
]
30963
},
@@ -30983,8 +31016,8 @@
31016
"default-mobile.handlebars->11->645",
31017
"default.handlebars->47->1411",
31018
"default.handlebars->47->1549",
30986
- "default.handlebars->47->2111",
30987
- "default.handlebars->47->2112",
31019
+ "default.handlebars->47->2114",
31020
+ "default.handlebars->47->2115",
31021
"sharing.handlebars->11->55"
31022
]
31023
},
@@ -31014,7 +31047,7 @@
31047
"zh-cht": "輸入管理領域名稱的逗號分隔列表。",
31048
"uk": "Введіть розділений комами список імен адміністративних областей.",
31049
"xloc": [
31017
- "default.handlebars->47->2804"
31050
+ "default.handlebars->47->2809"
31051
]
31052
},
31053
{
@@ -31448,8 +31481,8 @@
31481
"zh-cht": "錯誤,邀請碼 \\\"{0}\\\" 已在使用中。",
31482
"uk": "Помилка, код запрошення \\\"{0}\\\" уже використовується.",
31483
"xloc": [
31451
- "default-mobile.handlebars->11->1046",
31452
- "default.handlebars->47->3275"
31484
+ "default-mobile.handlebars->11->1047",
31485
+ "default.handlebars->47->3281"
31486
]
31487
},
31488
{
@@ -31478,8 +31511,8 @@
31511
"zh-cht": "錯誤,密碼未更改。",
31512
"uk": "Помилка, пароль не змінено.",
31513
"xloc": [
31481
- "default-mobile.handlebars->11->1043",
31482
- "default.handlebars->47->3272"
31514
+ "default-mobile.handlebars->11->1044",
31515
+ "default.handlebars->47->3278"
31516
]
31517
},
31518
{
@@ -31508,8 +31541,8 @@
31541
"zh-cht": "錯誤,無法更改為常用密碼。",
31542
"uk": "Помилка, неможливо змінити пароль на широко використовуваний.",
31543
"xloc": [
31511
- "default-mobile.handlebars->11->1042",
31512
- "default.handlebars->47->3271"
31544
+ "default-mobile.handlebars->11->1043",
31545
+ "default.handlebars->47->3277"
31546
]
31547
},
31548
{
@@ -31538,8 +31571,8 @@
31571
"zh-cht": "錯誤,無法更改為以前使用的密碼。",
31572
"uk": "Помилка, неможливо змінити на раніше використаний пароль.",
31573
"xloc": [
31541
- "default-mobile.handlebars->11->1041",
31542
- "default.handlebars->47->3270"
31574
+ "default-mobile.handlebars->11->1042",
31575
+ "default.handlebars->47->3276"
31576
]
31577
},
31578
{
@@ -31639,7 +31672,7 @@
31672
"uk": "Есперанто",
31673
"xloc": [
31674
"default-mobile.handlebars->11->167",
31642
- "default.handlebars->47->1898",
31675
+ "default.handlebars->47->1901",
31676
"login2.handlebars->7->61"
31677
]
31678
},
@@ -31696,7 +31729,7 @@
31729
"uk": "Естонська",
31730
"xloc": [
31731
"default-mobile.handlebars->11->168",
31699
- "default.handlebars->47->1899",
31732
+ "default.handlebars->47->1902",
31733
"login2.handlebars->7->62"
31734
]
31735
},
@@ -31781,7 +31814,7 @@
31814
"zh-cht": "事件列表輸出",
31815
"uk": "Експортувати Перелік Подій",
31816
"xloc": [
31784
- "default.handlebars->47->2703"
31817
+ "default.handlebars->47->2708"
31818
]
31819
},
31820
{
@@ -31796,7 +31829,7 @@
31829
"pl": "Zapisy zdarzeń",
31830
"uk": "Записи подій",
31831
"xloc": [
31799
- "default.handlebars->47->3226"
31832
+ "default.handlebars->47->3232"
31833
]
31834
},
31835
{
@@ -32005,7 +32038,7 @@
32038
"uk": "Термін придатності",
32039
"xloc": [
32040
"default.handlebars->47->1233",
32008
- "default.handlebars->47->2062",
32041
+ "default.handlebars->47->2065",
32042
"default.handlebars->47->294"
32043
]
32044
},
@@ -32064,7 +32097,7 @@
32097
"zh-cht": "過期{0}",
32098
"uk": "Застаріє {0}",
32099
"xloc": [
32067
- "default.handlebars->47->2125",
32100
+ "default.handlebars->47->2128",
32101
"sharing.handlebars->11->100"
32102
]
32103
},
@@ -32183,7 +32216,7 @@
32216
"zh-cht": "外部",
32217
"uk": "Зовнішня",
32218
"xloc": [
32186
- "default.handlebars->47->3343"
32219
+ "default.handlebars->47->3349"
32220
]
32221
},
32222
{
@@ -32212,7 +32245,7 @@
32245
"zh-cht": "FIDO 密鑰",
32246
"uk": "ключ FIDO",
32247
"xloc": [
32215
- "default.handlebars->47->3206"
32248
+ "default.handlebars->47->3212"
32249
]
32250
},
32251
{
@@ -32271,7 +32304,7 @@
32304
"uk": "Македонська (КЮРМ)",
32305
"xloc": [
32306
"default-mobile.handlebars->11->218",
32274
- "default.handlebars->47->1949",
32307
+ "default.handlebars->47->1952",
32308
"login2.handlebars->7->112"
32309
]
32310
},
@@ -32287,7 +32320,7 @@
32320
"uk": "Facebook",
32321
"xloc": [
32322
"default.handlebars->47->1800",
32290
- "default.handlebars->47->3023"
32323
+ "default.handlebars->47->3029"
32324
]
32325
},
32326
{
@@ -32317,7 +32350,7 @@
32350
"uk": "Фарерська",
32351
"xloc": [
32352
"default-mobile.handlebars->11->169",
32320
- "default.handlebars->47->1900",
32353
+ "default.handlebars->47->1903",
32354
"login2.handlebars->7->63"
32355
]
32356
},
@@ -32376,8 +32409,8 @@
32409
"zh-cht": "更改電子郵件地址失敗,另一個帳戶已在使用:{0}。",
32410
"uk": "Не вдалося змінити адресу е-пошти, інший акаунт її вже використовує: {0}.",
32411
"xloc": [
32379
- "default-mobile.handlebars->11->1037",
32380
- "default.handlebars->47->3266"
32412
+ "default-mobile.handlebars->11->1038",
32413
+ "default.handlebars->47->3272"
32414
]
32415
},
32416
{
@@ -32463,7 +32496,7 @@
32496
"zh-cht": "本地用戶拒絕後無法啟動遠程桌面",
32497
"uk": "Не вдалося запустити віддалену стільницю через відмову локального користувача",
32498
"xloc": [
32466
- "default.handlebars->47->2548"
32499
+ "default.handlebars->47->2551"
32500
]
32501
},
32502
{
@@ -32518,7 +32551,7 @@
32551
"zh-cht": "本地用戶拒絕後無法啟動遠程文件",
32552
"uk": "Не вдалося запустити віддалені файли після відмови локальним користувачем",
32553
"xloc": [
32521
- "default.handlebars->47->2555"
32554
+ "default.handlebars->47->2558"
32555
]
32556
},
32557
{
@@ -32606,7 +32639,7 @@
32639
"uk": "Фарсі (Перська)",
32640
"xloc": [
32641
"default-mobile.handlebars->11->170",
32609
- "default.handlebars->47->1901",
32642
+ "default.handlebars->47->1904",
32643
"login2.handlebars->7->64"
32644
]
32645
},
@@ -32667,9 +32700,9 @@
32700
"zh-cht": "功能",
32701
"uk": "Ознаки",
32702
"xloc": [
32670
- "default.handlebars->47->2179",
32671
- "default.handlebars->47->2857",
32672
- "default.handlebars->47->2948"
32703
+ "default.handlebars->47->2182",
32704
+ "default.handlebars->47->2862",
32705
+ "default.handlebars->47->2953"
32706
]
32707
},
32708
{
@@ -32699,7 +32732,7 @@
32732
"uk": "Фіджійська",
32733
"xloc": [
32734
"default-mobile.handlebars->11->171",
32702
- "default.handlebars->47->1902",
32735
+ "default.handlebars->47->1905",
32736
"login2.handlebars->7->65"
32737
]
32738
},
@@ -32760,7 +32793,7 @@
32793
"xloc": [
32794
"default-mobile.handlebars->11->718",
32795
"default.handlebars->47->1561",
32763
- "default.handlebars->47->2504",
32796
+ "default.handlebars->47->2507",
32797
"default.handlebars->47->852",
32798
"sharing.handlebars->11->66"
32799
]
@@ -32862,9 +32895,9 @@
32895
"pl": "System Plików",
32896
"uk": "Файлова система",
32897
"xloc": [
32865
- "default-mobile.handlebars->11->883",
32866
- "default-mobile.handlebars->11->895",
32867
- "default-mobile.handlebars->11->902",
32898
+ "default-mobile.handlebars->11->884",
32899
+ "default-mobile.handlebars->11->896",
32900
+ "default-mobile.handlebars->11->903",
32901
"default.handlebars->47->1726",
32902
"default.handlebars->47->1738",
32903
"default.handlebars->47->1745"
@@ -32896,7 +32929,7 @@
32929
"zh-cht": "文件傳輸",
32930
"uk": "Трансфер файлів",
32931
"xloc": [
32899
- "default.handlebars->47->3119"
32932
+ "default.handlebars->47->3125"
32933
]
32934
},
32935
{
@@ -32958,12 +32991,12 @@
32991
"default-mobile.handlebars->11->569",
32992
"default.handlebars->47->1090",
32993
"default.handlebars->47->1204",
32961
- "default.handlebars->47->2234",
32962
- "default.handlebars->47->2314",
32963
- "default.handlebars->47->3126",
32964
- "default.handlebars->47->3186",
32965
- "default.handlebars->47->3236",
32966
- "default.handlebars->47->3331",
32994
+ "default.handlebars->47->2237",
32995
+ "default.handlebars->47->2317",
32996
+ "default.handlebars->47->3132",
32997
+ "default.handlebars->47->3192",
32998
+ "default.handlebars->47->3242",
32999
+ "default.handlebars->47->3337",
33000
"default.handlebars->47->460",
33001
"default.handlebars->container->topbar->1->1->MainSubMenuSpan->MainSubMenu->1->0->MainDevFiles",
33002
"default.handlebars->contextMenu->cxfiles",
@@ -33025,9 +33058,9 @@
33058
"zh-cht": "檔案通知",
33059
"uk": "Сповіщення про файли",
33060
"xloc": [
33028
- "default.handlebars->47->2187",
33029
- "default.handlebars->47->2865",
33030
- "default.handlebars->47->2970",
33061
+ "default.handlebars->47->2190",
33062
+ "default.handlebars->47->2870",
33063
+ "default.handlebars->47->2975",
33064
"default.handlebars->47->970"
33065
]
33066
},
@@ -33057,9 +33090,9 @@
33090
"zh-cht": "檔案提示",
33091
"uk": "Запит файлів",
33092
"xloc": [
33060
- "default.handlebars->47->2186",
33061
- "default.handlebars->47->2864",
33062
- "default.handlebars->47->2969",
33093
+ "default.handlebars->47->2189",
33094
+ "default.handlebars->47->2869",
33095
+ "default.handlebars->47->2974",
33096
"default.handlebars->47->969"
33097
]
33098
},
@@ -33215,7 +33248,7 @@
33248
"zh-cht": "已完成錄製會話 \\\"{0}\\\",{1} 秒",
33249
"uk": "Сеанс запису завершено \\\"{0}\\\", {1} секунд(и)",
33250
"xloc": [
33218
- "default.handlebars->47->2660"
33251
+ "default.handlebars->47->2663"
33252
]
33253
},
33254
{
@@ -33244,7 +33277,7 @@
33277
"zh-cht": "錄製會話已完成,{0}秒",
33278
"uk": "Сеанс запису завершено, {0} секунд(и)",
33279
"xloc": [
33247
- "default.handlebars->47->2521"
33280
+ "default.handlebars->47->2524"
33281
]
33282
},
33283
{
@@ -33274,7 +33307,7 @@
33307
"uk": "Фінська",
33308
"xloc": [
33309
"default-mobile.handlebars->11->172",
33277
- "default.handlebars->47->1903",
33310
+ "default.handlebars->47->1906",
33311
"login2.handlebars->7->66"
33312
]
33313
},
@@ -33310,8 +33343,8 @@
33343
"zh-cht": "防火牆",
33344
"uk": "Фаєрвол",
33345
"xloc": [
33313
- "default-mobile.handlebars->11->758",
33314
- "default-mobile.handlebars->11->760",
33346
+ "default-mobile.handlebars->11->759",
33347
+ "default-mobile.handlebars->11->761",
33348
"default.handlebars->47->943",
33349
"default.handlebars->47->945"
33350
]
@@ -33342,8 +33375,8 @@
33375
"zh-cht": "防火牆未激活",
33376
"uk": "Фаєрвол не активний",
33377
"xloc": [
33345
- "default.handlebars->47->2451",
33346
- "default.handlebars->47->2465"
33378
+ "default.handlebars->47->2454",
33379
+ "default.handlebars->47->2468"
33380
]
33381
},
33382
{
@@ -33416,7 +33449,7 @@
33449
"zh-cht": "標誌",
33450
"uk": "Прапорці",
33451
"xloc": [
33419
- "default.handlebars->47->2676"
33452
+ "default.handlebars->47->2681"
33453
]
33454
},
33455
{
@@ -33764,8 +33797,8 @@
33797
"zh-cht": "下次登入時強制重置密碼。",
33798
"uk": "Примусово скинути пароль під час наступного входу.",
33799
"xloc": [
33767
- "default.handlebars->47->2798",
33768
- "default.handlebars->47->3062"
33800
+ "default.handlebars->47->2803",
33801
+ "default.handlebars->47->3068"
33802
]
33803
},
33804
{
@@ -33794,7 +33827,7 @@
33827
"zh-cht": "強行斷開用戶 {0} 的桌面會話",
33828
"uk": "Примусово перервано робочий сеанс користувача {0}",
33829
"xloc": [
33797
- "default.handlebars->47->2648"
33830
+ "default.handlebars->47->2651"
33831
]
33832
},
33833
{
@@ -33823,7 +33856,7 @@
33856
"zh-cht": "強制斷開用戶 {0} 的文件會話",
33857
"uk": "Примусово перервано файловий сеанс користувача {0}",
33858
"xloc": [
33826
- "default.handlebars->47->2650"
33859
+ "default.handlebars->47->2653"
33860
]
33861
},
33862
{
@@ -33852,7 +33885,7 @@
33885
"zh-cht": "強制斷開用戶 {0} 的路由會話",
33886
"uk": "Примусове відключення сеансу маршрутизації користувача {0}",
33887
"xloc": [
33855
- "default.handlebars->47->2651"
33888
+ "default.handlebars->47->2654"
33889
]
33890
},
33891
{
@@ -33881,7 +33914,7 @@
33914
"zh-cht": "強制斷開用戶 {0} 的終端會話",
33915
"uk": "Сеанс терміналу користувача {0} примусово припинено",
33916
"xloc": [
33884
- "default.handlebars->47->2649"
33917
+ "default.handlebars->47->2652"
33918
]
33919
},
33920
{
@@ -34000,7 +34033,7 @@
34033
"zh-cht": "格式化",
34034
"uk": "Формат",
34035
"xloc": [
34003
- "default.handlebars->47->2694"
34036
+ "default.handlebars->47->2699"
34037
]
34038
},
34039
{
@@ -34086,8 +34119,8 @@
34119
"zh-cht": "自由",
34120
"uk": "Вільно",
34121
"xloc": [
34089
- "default.handlebars->47->3289",
34090
- "default.handlebars->47->3291"
34122
+ "default.handlebars->47->3295",
34123
+ "default.handlebars->47->3297"
34124
]
34125
},
34126
{
@@ -34101,7 +34134,7 @@
34134
"uk": "Безкоштовний сервіс від ntfy.sh",
34135
"xloc": [
34136
"default.handlebars->47->1803",
34104
- "default.handlebars->47->3026"
34137
+ "default.handlebars->47->3032"
34138
]
34139
},
34140
{
@@ -34161,7 +34194,7 @@
34194
"uk": "Французька (Бельгія)",
34195
"xloc": [
34196
"default-mobile.handlebars->11->174",
34164
- "default.handlebars->47->1905",
34197
+ "default.handlebars->47->1908",
34198
"login2.handlebars->7->68"
34199
]
34200
},
@@ -34192,7 +34225,7 @@
34225
"uk": "Французька (Канада)",
34226
"xloc": [
34227
"default-mobile.handlebars->11->175",
34195
- "default.handlebars->47->1906",
34228
+ "default.handlebars->47->1909",
34229
"login2.handlebars->7->69"
34230
]
34231
},
@@ -34223,7 +34256,7 @@
34256
"uk": "Французька (Франція)",
34257
"xloc": [
34258
"default-mobile.handlebars->11->176",
34226
- "default.handlebars->47->1907",
34259
+ "default.handlebars->47->1910",
34260
"login2.handlebars->7->70"
34261
]
34262
},
@@ -34254,7 +34287,7 @@
34287
"uk": "Французька (Люксембург)",
34288
"xloc": [
34289
"default-mobile.handlebars->11->177",
34257
- "default.handlebars->47->1908",
34290
+ "default.handlebars->47->1911",
34291
"login2.handlebars->7->71"
34292
]
34293
},
@@ -34285,7 +34318,7 @@
34318
"uk": "Французька (Монако)",
34319
"xloc": [
34320
"default-mobile.handlebars->11->178",
34288
- "default.handlebars->47->1909",
34321
+ "default.handlebars->47->1912",
34322
"login2.handlebars->7->72"
34323
]
34324
},
@@ -34316,7 +34349,7 @@
34349
"uk": "Французька (Стандартна)",
34350
"xloc": [
34351
"default-mobile.handlebars->11->173",
34319
- "default.handlebars->47->1904",
34352
+ "default.handlebars->47->1907",
34353
"login2.handlebars->7->67"
34354
]
34355
},
@@ -34347,7 +34380,7 @@
34380
"uk": "Французька (Швейцарія)",
34381
"xloc": [
34382
"default-mobile.handlebars->11->179",
34350
- "default.handlebars->47->1910",
34383
+ "default.handlebars->47->1913",
34384
"login2.handlebars->7->73"
34385
]
34386
},
@@ -34378,7 +34411,7 @@
34411
"uk": "Фризька",
34412
"xloc": [
34413
"default-mobile.handlebars->11->180",
34381
- "default.handlebars->47->1911",
34414
+ "default.handlebars->47->1914",
34415
"login2.handlebars->7->74"
34416
]
34417
},
@@ -34409,7 +34442,7 @@
34442
"uk": "Фріульська",
34443
"xloc": [
34444
"default-mobile.handlebars->11->181",
34412
- "default.handlebars->47->1912",
34445
+ "default.handlebars->47->1915",
34446
"login2.handlebars->7->75"
34447
]
34448
},
@@ -34440,12 +34473,12 @@
34473
"uk": "Повноправний Адміністратор",
34474
"xloc": [
34475
"default-mobile.handlebars->11->346",
34443
- "default-mobile.handlebars->11->950",
34444
- "default-mobile.handlebars->11->968",
34445
- "default-mobile.handlebars->11->988",
34446
- "default.handlebars->47->2118",
34447
- "default.handlebars->47->2338",
34448
- "default.handlebars->47->2810"
34476
+ "default-mobile.handlebars->11->951",
34477
+ "default-mobile.handlebars->11->969",
34478
+ "default-mobile.handlebars->11->989",
This file is too large to show in full.
views/default.handlebars
+16
-3
@@ -430,6 +430,7 @@
430
<div id="managePhoneNumber1"><div class="p2AccountActions"><span id="authPhoneNumberCheck"><strong>✓</strong></span></div><span><a href=# onclick="return account_managePhone()">Manage phone number</a><br /></span></div>
431
<div id="manageEmail2FA"><div class="p2AccountActions"><span id="authEmailSetupCheck"><strong>✓</strong></span></div><span><a href=# onclick="return account_manageAuthEmail()">Manage email authentication</a><br /></span></div>
432
<div id="manageAuthApp"><div class="p2AccountActions"><span id="authAppSetupCheck"><strong>✓</strong></span></div><span><a href=# onclick="return account_manageAuthApp()">Manage authenticator app</a><br /></span></div>
433
+ <div id="manageDuoApp"><div class="p2AccountActions"><span id="authDuoSetupCheck"><strong>✓</strong></span></div><span><a href=# onclick="return account_manageAuthDuo()">Manage Duo authentication</a><br /></span></div>
434
<div id="manageHardwareOtp"><div class="p2AccountActions"><span id="authKeySetupCheck"><strong>✓</strong></span></div><span><a href=# onclick="return account_manageHardwareOtp(0)">Manage security keys</a><br /></span></div>
435
<div id="managePushAuthDev"><div class="p2AccountActions"><span id="authPushAuthDevCheck"><strong>✓</strong></span></div><span><a href=# onclick="return account_managePushAuthDev()">Manage push authentication</a><br /></span></div>
436
<div id="manageMessaging1"><div class="p2AccountActions"><span id="authMessagingCheck"><strong>✓</strong></span></div><span><a href=# onclick="return account_manageMessaging()">Manage messaging</a><br /></span></div>
@@ -2357,6 +2358,7 @@
2358
QV('authPhoneNumberCheck', (userinfo.phone != null));
2359
QV('authMessagingCheck', (userinfo.msghandle != null));
2360
QV('authEmailSetupCheck', (userinfo.otpekey == 1) && (userinfo.email != null) && (userinfo.emailVerified == true));
2361
+ QV('authDuoSetupCheck', (userinfo.otpduo == 1));
2362
QV('authAppSetupCheck', userinfo.otpsecret == 1);
2363
QV('manageAuthApp', (serverinfo.lock2factor != true) && ((userinfo.otpsecret == 1) || ((features2 & 0x00020000) == 0)));
2364
QV('authKeySetupCheck', userinfo.otphkeys > 0);
@@ -12881,6 +12883,14 @@
12883
}, "When enabled, on each login, you will be given the option to receive a login token to you email account for added security." + '<br /><br /><label><input id=email2facheck type=checkbox ' + (emailU2Fenabled?'checked':'') + '/>' + "Enable email two-factor authentication." + '</label>');
12884
}
12885
12886
+ function account_manageAuthDuo() {
12887
+ if (xxdialogMode || ((features & 0x00800000) == 0)) return;
12888
+ var duoU2Fenabled = ((userinfo.otpduo == 1));
12889
+ setDialogMode(2, "Duo Authentication", 1, function () {
12890
+ if (duoU2Fenabled != Q('duo2facheck').checked) { meshserver.send({ action: 'otpduo', enabled: Q('duo2facheck').checked }); }
12891
+ }, "When enabled, on each login, you will be given the option to login using Duo for added security." + '<br /><br /><label><input id=duo2facheck type=checkbox ' + (duoU2Fenabled?'checked':'') + '/>' + "Enable Duo two-factor authentication." + '</label>');
12892
+ }
12893
+
12894
function account_manageAuthApp() {
12895
if (xxdialogMode || ((features & 4096) == 0)) return;
12896
if (userinfo.otpsecret == 1) { account_removeOtp(); } else { account_addOtp(); }
@@ -15242,7 +15252,9 @@
15252
156: "Verified messaging account of user {0}",
15253
157: "Removed messaging account of user {0}",
15254
158: "Displaying alert box, title=\"{0}\", message=\"{1}\"",
15245
- 159: "Device Powered On"
15255
+ 159: "Device Powered On",
15256
+ 160: "Enabled Duo two-factor authentication",
15257
+ 161: "Disabled Duo two-factor authentication"
15258
};
15259
15260
var eventsShortMessageId = {
@@ -15534,7 +15546,7 @@
15546
if (userdomain != '') { username += ', <span style=color:#26F>' + userdomain + '</span>'; }
15547
}
15548
15537
- if ((user.otpsecret > 0) || (user.otphkeys > 0) || ((user.otpekey == 1) && (features & 0x00800000)) || ((user.phone != null) && (features & 0x04000000))) { username += ' <img src="images/key12.png" height=12 width=11 title="' + "2nd factor authentication enabled" + '" style="margin-top:2px" />'; }
15549
+ if ((user.otpsecret > 0) || (user.otphkeys > 0) || ((user.otpekey == 1) && (features & 0x00800000)) || (user.otpduo == 1) || ((user.phone != null) && (features & 0x04000000))) { username += ' <img src="images/key12.png" height=12 width=11 title="' + "2nd factor authentication enabled" + '" style="margin-top:2px" />'; }
15550
if (user.phone != null) { username += ' <img src="images/phone12.png" height=12 width=7 title="' + "Verified phone number" + '" style="margin-top:2px" />'; }
15551
if ((user.siteadmin != null) && ((user.siteadmin & 32) != 0) && (user.siteadmin != 0xFFFFFFFF)) { username += ' <img src="images/padlock12.png" height=12 width=8 title="' + "Account is locked" + '" style="margin-top:2px" />'; }
15552
if ((user.msghandle != null) && (features2 & 0x02000000)) { username += ' <img src="images/messaging12.png" height=12 width=12 title="' + "Verified messaging account" + '" style="margin-top:2px" />'; }
@@ -16717,12 +16729,13 @@
16729
}
16730
16731
var multiFactor = 0;
16720
- if ((user.otpsecret > 0) || (user.otphkeys > 0) || (user.otpekey > 0)) {
16732
+ if ((user.otpsecret > 0) || (user.otphkeys > 0) || (user.otpekey > 0) || (user.otpduo > 0)) {
16733
multiFactor = 1;
16734
var factors = [];
16735
if (user.otpsecret > 0) { factors.push("Authentication App"); }
16736
if (user.otphkeys > 0) { factors.push("Security Key"); }
16737
if (user.otpekey > 0) { factors.push("Email"); }
16738
+ if (user.otpduo > 0) { factors.push("Duo"); }
16739
if (user.otpkeys > 0) { factors.push("Backup Codes"); }
16740
if (user.otpdev > 0) { factors.push("Device Push"); }
16741
if ((user.phone != null) && (features & 0x04000000)) { factors.push("SMS"); }
views/default3.handlebars
+22
-3
@@ -590,6 +590,12 @@
590
id="authAppSetupCheck"><strong>✓</strong></span></div><span><a href=#
591
onclick="return account_manageAuthApp()">Manage authenticator
592
app</a><br /></span>
593
+ </div>
594
+ <div id="manageDuoApp">
595
+ <div class="p2AccountActions"><span
596
+ id="authDuoSetupCheck"><strong>✓</strong></span></div><span><a href=#
597
+ onclick="return account_manageAuthDuo()">Manage Duo
598
+ authentication</a><br /></span>
599
</div>
600
<div id="manageHardwareOtp">
601
<div class="p2AccountActions"><span
@@ -3018,6 +3024,7 @@
3024
QV('authPhoneNumberCheck', (userinfo.phone != null));
3025
QV('authMessagingCheck', (userinfo.msghandle != null));
3026
QV('authEmailSetupCheck', (userinfo.otpekey == 1) && (userinfo.email != null) && (userinfo.emailVerified == true));
3027
+ QV('authDuoSetupCheck', (userinfo.otpduo == 1));
3028
QV('authAppSetupCheck', userinfo.otpsecret == 1);
3029
QV('manageAuthApp', (serverinfo.lock2factor != true) && ((userinfo.otpsecret == 1) || ((features2 & 0x00020000) == 0)));
3030
QV('authKeySetupCheck', userinfo.otphkeys > 0);
@@ -13994,6 +14001,15 @@
14001
});
14002
}
14003
14004
+ function account_manageAuthDuo() {
14005
+ if (xxdialogMode || ((features & 0x00800000) == 0)) return;
14006
+ var duoU2Fenabled = ((userinfo.otpduo == 1));
14007
+ setModalContent('xxAddAgent', 'Duo Authentication', "When enabled, on each login, you will be given the option to login using Duo for added security." + '<br /><br /><label><input id=duo2facheck type=checkbox class="form-check-input me-2" ' + (duoU2Fenabled ? 'checked' : '') + '/>' + "Enable Duo two-factor authentication." + '</label>');
14008
+ showModal('xxAddAgentModal', 'idx_dlgOkButton', function () {
14009
+ if (duoU2Fenabled != Q('duo2facheck').checked) { meshserver.send({ action: 'otpduo', enabled: Q('duo2facheck').checked }); }
14010
+ });
14011
+ }
14012
+
14013
function account_manageAuthApp() {
14014
if (xxdialogMode || ((features & 4096) == 0)) return;
14015
if (userinfo.otpsecret == 1) { account_removeOtp(); } else { account_addOtp(); }
@@ -16578,7 +16594,9 @@
16594
156: "Verified messaging account of user {0}",
16595
157: "Removed messaging account of user {0}",
16596
158: "Displaying alert box, title=\"{0}\", message=\"{1}\"",
16581
- 159: "Device Powered On"
16597
+ 159: "Device Powered On",
16598
+ 160: "Enabled Duo two-factor authentication",
16599
+ 161: "Disabled Duo two-factor authentication"
16600
};
16601
16602
var eventsShortMessageId = {
@@ -16881,7 +16899,7 @@
16899
if (userdomain != '') { username += ', <span style=color:#26F>' + userdomain + '</span>'; }
16900
}
16901
16884
- if ((user.otpsecret > 0) || (user.otphkeys > 0) || ((user.otpekey == 1) && (features & 0x00800000)) || ((user.phone != null) && (features & 0x04000000))) { username += ' <i class="fa-solid fa-key" title="' + "2nd factor authentication enabled" + '" style="margin-top:2px"></i>'; }
16902
+ if ((user.otpsecret > 0) || (user.otphkeys > 0) || ((user.otpekey == 1) && (features & 0x00800000)) || (user.otpduo == 1) || ((user.phone != null) && (features & 0x04000000))) { username += ' <i class="fa-solid fa-key" title="' + "2nd factor authentication enabled" + '" style="margin-top:2px"></i>'; }
16903
if (user.phone != null) { username += ' <i class="fa-solid fa-mobile-screen" title="' + "Verified phone number" + '" style="margin-top:2px"></i>'; }
16904
if ((user.siteadmin != null) && ((user.siteadmin & 32) != 0) && (user.siteadmin != 0xFFFFFFFF)) { username += ' <img src="images/padlock12.png" height=12 width=8 title="' + "Account is locked" + '" style="margin-top:2px" />'; }
16905
if ((user.msghandle != null) && (features2 & 0x02000000)) { username += ' <i class="fa-solid fa-comment fa-xs" title="' + "Verified messaging account" + '" style="margin-top:2px" />'; }
@@ -18129,12 +18147,13 @@
18147
}
18148
18149
var multiFactor = 0;
18132
- if ((user.otpsecret > 0) || (user.otphkeys > 0) || (user.otpekey > 0)) {
18150
+ if ((user.otpsecret > 0) || (user.otphkeys > 0) || (user.otpekey > 0) || (user.otpduo > 0)) {
18151
multiFactor = 1;
18152
var factors = [];
18153
if (user.otpsecret > 0) { factors.push("Authentication App"); }
18154
if (user.otphkeys > 0) { factors.push("Security Key"); }
18155
if (user.otpekey > 0) { factors.push("Email"); }
18156
+ if (user.otpduo > 0) { factors.push("Duo"); }
18157
if (user.otpkeys > 0) { factors.push("Backup Codes"); }
18158
if (user.otpdev > 0) { factors.push("Device Push"); }
18159
if ((user.phone != null) && (features & 0x04000000)) { factors.push("SMS"); }
views/login.handlebars
+17
@@ -193,6 +193,7 @@
193
<input style="display:none;float:right" id=emailKeyButton type=button value="Email" onclick="useEmailToken(1)" />
194
<input style="display:none;float:right" id=smsKeyButton type=button value="SMS" onclick="useSMSToken(1)" />
195
<input style="display:none;float:right" id=msgKeyButton type=button value="Messaging" onclick="useMsgToken(1)" />
196
+ <input style="display:none;float:right" id=duoKeyButton type=button value="Duo" onclick="useDuoToken(1)" />
197
</div>
198
</td>
199
</tr>
@@ -221,6 +222,7 @@
222
<input style="display:none;float:right" id=emailKeyButton2 type=button value="Email" onclick="useEmailToken(2)" />
223
<input style="display:none;float:right" id=smsKeyButton2 type=button value="SMS" onclick="useSMSToken(2)" />
224
<input style="display:none;float:right" id=msgKeyButton2 type=button value="Messaging" onclick="useMsgToken(2)" />
225
+ <input style="display:none;float:right" id=duoKeyButton2 type=button value="Duo" onclick="useDuoToken(2)" />
226
</div>
227
</td>
228
</tr>
@@ -337,6 +339,7 @@
339
var webPageFullScreen = true;
340
var nightMode = (getstore('_nightMode', '0') == '1');
341
var publicKeyCredentialRequestOptions = null;
342
+ var otpduo = (decodeURIComponent('{{{otpduo}}}') === 'true');
343
var otpemail = (decodeURIComponent('{{{otpemail}}}') === 'true');
344
var otpsms = (decodeURIComponent('{{{otpsms}}}') === 'true');
345
var otpmsg = (decodeURIComponent('{{{otpmsg}}}') === 'true');
@@ -474,6 +477,7 @@
477
QV('emailKeyButton', otpemail && (messageid != 2) && (messageid != 4) && (messageid != 6));
478
QV('smsKeyButton', otpsms && (messageid != 2) && (messageid != 4) && (messageid != 6));
479
QV('msgKeyButton', otpmsg && (messageid != 2) && (messageid != 4) && (messageid != 6));
480
+ QV('duoKeyButton', otpduo && (messageid != 2) && (messageid != 4) && (messageid != 6));
481
482
// If hardware key is an option, trigger it now
483
if (autofido && twofakey) { setTimeout(function () { useSecurityKey(1); }, 300); }
@@ -487,6 +491,7 @@
491
QV('emailKeyButton2', otpemail && (messageid != 2) && (messageid != 4) && (messageid != 6));
492
QV('smsKeyButton2', otpsms && (messageid != 2) && (messageid != 4) && (messageid != 6));
493
QV('msgKeyButton2', otpmsg && (messageid != 2) && (messageid != 4) && (messageid != 6));
494
+ QV('duoKeyButton2', otpduo && (messageid != 2) && (messageid != 4) && (messageid != 6));
495
496
// If hardware key is an option, trigger it now
497
if (autofido && twofakey) { setTimeout(function () { useSecurityKey(2); }, 300); }
@@ -617,6 +622,18 @@
622
}
623
}
624
625
+ function useDuoToken(panelAction) {
626
+ if (panelAction == 1) {
627
+ Q('hwtokenInput').value = '**duo**';
628
+ QE('tokenOkButton', true);
629
+ Q('tokenOkButton').click();
630
+ } else if (panelAction == 2) {
631
+ Q('resetHwtokenInput').value = '**duo**';
632
+ QE('resetTokenOkButton', true);
633
+ Q('resetTokenOkButton').click();
634
+ }
635
+ }
636
+
637
function showPassHint(e) {
638
messagebox("Password Hint", passhint);
639
haltEvent(e);
views/login2.handlebars
+22
-3
@@ -223,6 +223,7 @@
223
<img id=msgKeyButton src="images/login/2fa-messaging-48.png" srcset="images/login/2fa-messaging-96.png 2x" title="Messaging" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="useMsgToken(1)" />
224
<img id=emailKeyButton src="images/login/2fa-mail-48.png" srcset="images/login/2fa-mail-96.png 2x" title="Email" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="useEmailToken(1)" />
225
<img id=pushKeyButton src="images/login/2fa-push-48.png" srcset="images/login/2fa-push-96.png 2x" title="Device Authentication" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="usePushToken(1)" />
226
+ <img id=duoKeyButton src="images/login/2fa-duo-48.png" srcset="images/login/2fa-duo-96.png 2x" title="Duo Authentication" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="useDuoToken(1)" />
227
</div>
228
</td>
229
</tr>
@@ -258,6 +259,7 @@
259
<img id=msgKeyButton2 src="images/login/2fa-msg-48.png" srcset="images/login/2fa-msg-96.png 2x" title="SMS" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="useMsgToken(2)" />
260
<img id=emailKeyButton2 src="images/login/2fa-mail-48.png" srcset="images/login/2fa-mail-96.png 2x" title="Email" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="useEmailToken(2)" />
261
<img id=pushKeyButton2 src="images/login/2fa-push-48.png" srcset="images/login/2fa-push-96.png 2x" title="Device Authentication" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="usePushToken(2)" />
262
+ <img id=duoKeyButton2 src="images/login/2fa-duo-48.png" srcset="images/login/2fa-duo-96.png 2x" title="Duo Authentication" loading="lazy" width="48" height="48" style="display:none;margin-left:3px;margin-right:3px;border-radius:3px;box-shadow:2px 2px 5px black;cursor:pointer;background-color:#FFF" onclick="useDuoToken(2)" />
263
</div>
264
</td>
265
</tr>
@@ -393,6 +395,7 @@
395
var welcomeText = decodeURIComponent('{{{welcometext}}}');
396
var currentpanel = 0;
397
var publicKeyCredentialRequestOptions = null;
398
+ var otpduo = (decodeURIComponent('{{{otpduo}}}') === 'true');
399
var otpemail = (decodeURIComponent('{{{otpemail}}}') === 'true');
400
var otpsms = (decodeURIComponent('{{{otpsms}}}') === 'true');
401
var otpmsg = (decodeURIComponent('{{{otpmsg}}}') === 'true');
@@ -547,12 +550,14 @@
550
var smskey = otpsms && (messageid != 2) && (messageid != 4) && (messageid != 6);
551
var msgkey = otpmsg && (messageid != 2) && (messageid != 4) && (messageid != 6);
552
var pushkey = otppush && (messageid != 2) && (messageid != 4) && (messageid != 6);
553
+ var duokey = otpduo && (messageid != 2) && (messageid != 4) && (messageid != 6);
554
QV('securityKeyButton', twofakey);
555
QV('emailKeyButton', emailkey);
556
QV('smsKeyButton', smskey);
557
QV('msgKeyButton', msgkey);
558
QV('pushKeyButton', pushkey);
555
- QV('2farow', twofakey || emailkey || smskey || msgkey || pushkey);
559
+ QV('duoKeyButton', duokey);
560
+ QV('2farow', twofakey || emailkey || smskey || msgkey || pushkey || duokey);
561
562
// If hardware key is an option, trigger it now
563
if (autofido && twofakey) { setTimeout(function () { useSecurityKey(1); }, 300); }
@@ -566,12 +571,14 @@
571
var smskey = otpsms && (messageid != 2) && (messageid != 4) && (messageid != 6);
572
var msgkey = otpmsg && (messageid != 2) && (messageid != 4) && (messageid != 6);
573
var pushkey = otppush && (messageid != 2) && (messageid != 4) && (messageid != 6);
574
+ var duokey = otpduo && (messageid != 2) && (messageid != 4) && (messageid != 6);
575
QV('securityKeyButton2', twofakey);
576
QV('emailKeyButton2', emailkey);
577
QV('smsKeyButton2', smskey);
578
QV('msgKeyButton2', msgkey);
573
- QV('pushKeyButton', pushkey);
574
- QV('2farow2', twofakey || emailkey || smskey || msgkey || pushkey);
579
+ QV('pushKeyButton2', pushkey);
580
+ QV('duoKeyButton2', duokey);
581
+ QV('2farow2', twofakey || emailkey || smskey || msgkey || pushkey || duokey);
582
583
// If hardware key is an option, trigger it now
584
if (autofido && twofakey) { setTimeout(function () { useSecurityKey(2); }, 300); }
@@ -723,6 +730,18 @@
730
}
731
}
732
733
+ function useDuoToken(panelAction) {
734
+ if (panelAction == 1) {
735
+ Q('hwtokenInput').value = '**duo**';
736
+ QE('tokenOkButton', true);
737
+ Q('tokenOkButton').click();
738
+ } else if (panelAction == 2) {
739
+ Q('resetHwtokenInput').value = '**duo**';
740
+ QE('resetTokenOkButton', true);
741
+ Q('resetTokenOkButton').click();
742
+ }
743
+ }
744
+
745
function showPassHint(e) {
746
messagebox("Password Hint", passhint);
747
haltEvent(e);
webserver.js
+104
-3
@@ -918,7 +918,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
918
var msg2fa = (((typeof domain.passwordrequirements != 'object') || (domain.passwordrequirements.msg2factor != false)) && (parent.msgserver != null) && (parent.msgserver.providers != 0) && (user.msghandle != null));
919
920
// Check if a 2nd factor is present
921
- return ((parent.config.settings.no2factorauth !== true) && (msg2fa || sms2fa || (user.otpsecret != null) || ((user.email != null) && (user.emailVerified == true) && (domain.mailserver != null) && (user.otpekey != null)) || ((user.otphkeys != null) && (user.otphkeys.length > 0))));
921
+ return ((parent.config.settings.no2factorauth !== true) && (msg2fa || sms2fa || (user.otpsecret != null) || ((user.email != null) && (user.emailVerified == true) && (domain.mailserver != null) && (user.otpekey != null)) || (user.otpduo != null) || ((user.otphkeys != null) && (user.otphkeys.length > 0))));
922
}
923
924
// Check the 2-step auth token
@@ -1162,6 +1162,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
1162
var sms2fa = (((typeof domain.passwordrequirements != 'object') || (domain.passwordrequirements.sms2factor != false)) && (parent.smsserver != null) && (user.phone != null));
1163
var msg2fa = (((typeof domain.passwordrequirements != 'object') || (domain.passwordrequirements.msg2factor != false)) && (parent.msgserver != null) && (parent.msgserver.providers != 0) && (user.msghandle != null));
1164
var push2fa = ((parent.firebase != null) && (user.otpdev != null));
1165
+ var duo2fa = (((typeof domain.passwordrequirements != 'object') || (typeof domain.passwordrequirements.duo2factor == 'object')) && (user.otpduo != null));
1166
1167
// Check if two factor can be skipped
1168
const twoFactorSkip = checkUserOneTimePasswordSkip(domain, user, req, loginOptions);
@@ -1211,6 +1212,24 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
1212
return;
1213
}
1214
1215
+ if ((req.body.hwtoken == '**duo**') && duo2fa) {
1216
+ // Redirect to duo here
1217
+ const duo = require('@duosecurity/duo_universal');
1218
+ const client = new duo.Client({
1219
+ clientId: domain.passwordrequirements.duo2factor.integrationkey,
1220
+ clientSecret: domain.passwordrequirements.duo2factor.secretkey,
1221
+ apiHost: domain.passwordrequirements.duo2factor.apihostname,
1222
+ redirectUrl: obj.generateBaseURL(domain, req) + 'auth-duo' + (domain.loginkey != null ? ('?key=' + domain.loginkey) : '')
1223
+ });
1224
+ // Decrypt any session data
1225
+ const sec = parent.decryptSessionData(req.session.e);
1226
+ sec.duostate = client.generateState();
1227
+ req.session.e = parent.encryptSessionData(sec);
1228
+ parent.debug('web', 'Redirecting user ' + user._id + ' to Duo');
1229
+ res.redirect(client.createAuthUrl(user._id, sec.duostate));
1230
+ return;
1231
+ }
1232
+
1233
// Handle device push notification 2FA request
1234
// We create a browser cookie, send it back and when the browser connects it's web socket, it will trigger the push notification.
1235
if ((req.body.hwtoken == '**push**') && push2fa && ((domain.passwordrequirements == null) || (domain.passwordrequirements.push2factor != false))) {
@@ -1274,6 +1293,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
1293
if ((user.phone != null) && (parent.smsserver != null)) { req.session.tsms = 1; }
1294
if ((user.msghandle != null) && (parent.msgserver != null) && (parent.msgserver.providers != 0)) { req.session.tmsg = 1; }
1295
if ((user.otpdev != null) && (parent.firebase != null)) { req.session.tpush = 1; }
1296
+ if ((user.otpduo != null)) { req.session.tduo = 1; }
1297
req.session.e = parent.encryptSessionData({ tuserid: userid, tuser: xusername, tpass: xpassword });
1298
if (direct === true) { handleRootRequestEx(req, res, domain); } else { res.redirect(domain.url + getQueryPortion(req)); }
1299
}, randomWaitTime);
@@ -3320,6 +3340,8 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
3340
// Check if we can use OTP tokens with email. We can't use email for 2FA password recovery (loginmode 5).
3341
var otpemail = (loginmode != 5) && (domain.mailserver != null) && (req.session != null) && ((req.session.temail === 1) || (typeof req.session.temail == 'string'));
3342
if ((typeof domain.passwordrequirements == 'object') && (domain.passwordrequirements.email2factor == false)) { otpemail = false; }
3343
+ var otpduo = (req.session != null) && (req.session.tduo === 1);
3344
+ if ((typeof domain.passwordrequirements == 'object') && (domain.passwordrequirements.duo2factor == false)) { otpduo = false; }
3345
var otpsms = (parent.smsserver != null) && (req.session != null) && (req.session.tsms === 1);
3346
if ((typeof domain.passwordrequirements == 'object') && (domain.passwordrequirements.sms2factor == false)) { otpsms = false; }
3347
var otpmsg = (parent.msgserver != null) && (req.session != null) && (req.session.tmsg === 1);
@@ -3402,6 +3424,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
3424
welcomePictureFullScreen: ((typeof domain.welcomepicturefullscreen == 'boolean') ? domain.welcomepicturefullscreen : false),
3425
hwstate: hwstate,
3426
otpemail: otpemail,
3427
+ otpduo: otpduo,
3428
otpsms: otpsms,
3429
otpmsg: otpmsg,
3430
otppush: otppush,
@@ -5851,6 +5874,15 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
5874
}
5875
};
5876
5877
+ // generate the server url
5878
+ obj.generateBaseURL = function (domain, req) {
5879
+ var serverName = obj.getWebServerName(domain, req);
5880
+ var httpsPort = ((args.aliasport == null) ? args.port : args.aliasport); // Use HTTPS alias port is specified
5881
+ var xdomain = (domain.dns == null) ? domain.id : '';
5882
+ if (xdomain != '') xdomain += '/';
5883
+ return ('https://' + serverName + ':' + httpsPort + '/' + xdomain);
5884
+ }
5885
+
5886
// Get the web server hostname. This may change if using a domain with a DNS name.
5887
obj.getWebServerName = function (domain, req) {
5888
if (domain.dns != null) return domain.dns;
@@ -6918,6 +6950,55 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
6950
}
6951
}
6952
6953
+ // // Setup Duo callback if needed
6954
+ if ((typeof domain.passwordrequirements == 'object') && (typeof domain.passwordrequirements.duo2factor == 'object')) {
6955
+ obj.app.get(url + 'auth-duo', function (req, res){
6956
+ var domain = getDomain(req);
6957
+ const sec = parent.decryptSessionData(req.session.e);
6958
+ if (req.query.state !== sec.duostate) {
6959
+ // the state returned from Duo IS NOT the same as what was in the session, so must fail!
6960
+ parent.debug('web', 'handleRootRequest: duo 2fa state failed!');
6961
+ req.session.loginmode = 1;
6962
+ req.session.messageid = 117; // Invalid security check
6963
+ res.redirect(domain.url + getQueryPortion(req)); // redirect back to main page
6964
+ return;
6965
+ } else {
6966
+ // User credentials are stored in session, just check again and get userid
6967
+ obj.authenticate(sec.tuser, sec.tpass, domain, function (err, userid, passhint, loginOptions) {
6968
+ if ((userid != null) && (err == null)) {
6969
+ // Login data correct, now exchange authorization code for 2fa
6970
+ const duo = require('@duosecurity/duo_universal');
6971
+ const client = new duo.Client({
6972
+ clientId: domain.passwordrequirements.duo2factor.integrationkey,
6973
+ clientSecret: domain.passwordrequirements.duo2factor.secretkey,
6974
+ apiHost: domain.passwordrequirements.duo2factor.apihostname,
6975
+ redirectUrl: obj.generateBaseURL(domain, req) + 'auth-duo' + (domain.loginkey != null ? ('?key=' + domain.loginkey) : '')
6976
+ });
6977
+ client.exchangeAuthorizationCodeFor2FAResult(req.query.duo_code, userid).then(function (data) {
6978
+ parent.debug('web', 'handleRootRequest: duo 2fa auth ok.');
6979
+ req.session.userid = userid;
6980
+ delete req.session.currentNode;
6981
+ req.session.ip = req.clientIp; // Bind this session to the IP address of the request
6982
+ setSessionRandom(req);
6983
+ obj.parent.authLog('https', 'Accepted duo authentication for ' + userid + ' from ' + req.clientIp + ' port ' + req.connection.remotePort, { useragent: req.headers['user-agent'], sessionid: req.session.x });
6984
+ res.redirect(domain.url + getQueryPortion(req));
6985
+ }).catch(function (err) {
6986
+ // Duo 2FA exchange failed, so must fail!
6987
+ console.log('err',err);
6988
+ parent.debug('web', 'handleRootRequest: duo 2fa exchange authorization code failed!.');
6989
+ req.session.loginmode = 1;
6990
+ req.session.messageid = 117; // Invalid security check
6991
+ res.redirect(domain.url + getQueryPortion(req));
6992
+ });
6993
+ } else {
6994
+ // Login failed
6995
+ handleRootRequestEx(req, res, domain, direct);
6996
+ }
6997
+ });
6998
+ }
6999
+ });
7000
+ }
7001
+
7002
// Server redirects
7003
if (parent.config.domains[i].redirects) { for (var j in parent.config.domains[i].redirects) { if (j[0] != '_') { obj.app.get(url + j, obj.handleDomainRedirect); } } }
7004
@@ -8787,6 +8868,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
8868
delete user2.otpsms;
8869
delete user2.otpmsg;
8870
if ((typeof user2.otpekey == 'object') && (user2.otpekey != null)) { user2.otpekey = 1; } // Indicates that email 2FA is enabled.
8871
+ if ((typeof user2.otpduo == 'object') && (user2.otpduo != null)) { user2.otpduo = 1; } // Indicates that duo 2FA is enabled.
8872
if ((typeof user2.otpsecret == 'string') && (user2.otpsecret != null)) { user2.otpsecret = 1; } // Indicates a time secret is present.
8873
if ((typeof user2.otpkeys == 'object') && (user2.otpkeys != null)) { user2.otpkeys = 0; if (user.otpkeys != null) { for (var i = 0; i < user.otpkeys.keys.length; i++) { if (user.otpkeys.keys[i].u == true) { user2.otpkeys = 1; } } } } // Indicates the number of one time backup codes that are active.
8874
if ((typeof user2.otphkeys == 'object') && (user2.otphkeys != null)) { user2.otphkeys = user2.otphkeys.length; } // Indicates the number of hardware keys setup
@@ -9290,8 +9372,27 @@ module.exports.CreateWebServer = function (parent, db, args, certificates, doneF
9372
} catch (ex) { return { browserStr: browser, osStr: os } }
9373
}
9374
9293
- // Return the query string portion of the URL, the ? and anything after.
9294
- function getQueryPortion(req) { var s = req.url.indexOf('?'); if (s == -1) { if (req.body && req.body.urlargs) { return req.body.urlargs; } return ''; } return req.url.substring(s); }
9375
+ // Return the query string portion of the URL, the ? and anything after BUT remove secret keys from authentication providers
9376
+ function getQueryPortion(req) {
9377
+ var removeKeys = ['duo_code', 'state']; // Keys to remove
9378
+ var s = req.url.indexOf('?');
9379
+ if (s == -1) {
9380
+ if (req.body && req.body.urlargs) {
9381
+ return req.body.urlargs;
9382
+ }
9383
+ return '';
9384
+ }
9385
+ var queryString = req.url.substring(s + 1);
9386
+ var params = queryString.split('&');
9387
+ var filteredParams = [];
9388
+ for (var i = 0; i < params.length; i++) {
9389
+ var key = params[i].split('=')[0];
9390
+ if (removeKeys.indexOf(key) === -1) {
9391
+ filteredParams.push(params[i]);
9392
+ }
9393
+ }
9394
+ return (filteredParams.length > 0 ? ('?' + filteredParams.join('&')) : '');
9395
+ }
9396
9397
// Generate a random Intel AMT password
9398
function checkAmtPassword(p) { return (p.length > 7) && (/\d/.test(p)) && (/[a-z]/.test(p)) && (/[A-Z]/.test(p)) && (/\W/.test(p)); }