Added batch user account management.

Ylian Saint-Hilaire committed Apr 9, 2020 at 22:44 UTC 692678b75b89715ef2b6c023ec444b7ef3c38812
4 files changed +376 -262
public/scripts/agent-desktop-0.0.2.js
+2
@@ -298,7 +298,9 @@ var CreateAgentRemoteDesktop = function (canvasid, scrolldiv) {
298 case 88: // MNG_KVM_MOUSE_CURSOR
299 if (cmdsize != 5) break;
300 var cursorNum = str.charCodeAt(4);
301 + console.log('MouseCursorRaw', cursorNum);
302 if (cursorNum > mouseCursors.length) { cursorNum = 0; }
303 + console.log('MouseCursorStr', mouseCursors[cursorNum]);
304 obj.CanvasId.style.cursor = mouseCursors[cursorNum];
305 break;
306 }
sample-config.json
+1 -1
@@ -1,5 +1,5 @@
1 {
2 - "__comment__" : "This is a sample configuration file, edit a section and remove the _ in front of the name. Refer to the user's guide for details.",
2 + "__comment__" : "This is a sample configuration file, all values and sections that start with underscore (_) are ignored. Edit a section and remove the _ in front of the name. Refer to the user's guide for details.",
3 "settings": {
4 "_Cert": "myserver.mydomain.com",
5 "_MongoDb": "mongodb://127.0.0.1:27017",
translate/translate.json
+297 -259
@@ -251,7 +251,7 @@
251 "zh-chs": " 用戶需要先登錄到該服務器一次,然後才能將其添加到設備組。",
252 "xloc": [
253 "default.handlebars->27->1189",
254 - "default.handlebars->27->1447"
254 + "default.handlebars->27->1458"
255 ]
256 },
257 {
@@ -664,7 +664,7 @@
664 "default-mobile.handlebars->9->247",
665 "default-mobile.handlebars->9->70",
666 "default.handlebars->27->1285",
667 - "default.handlebars->27->1536",
667 + "default.handlebars->27->1547",
668 "default.handlebars->27->700"
669 ]
670 },
@@ -714,7 +714,7 @@
714 "ru": "1 активная сессия",
715 "zh-chs": "1個活動會話",
716 "xloc": [
717 - "default.handlebars->27->1490"
717 + "default.handlebars->27->1501"
718 ]
719 },
720 {
@@ -769,7 +769,7 @@
769 "ru": "1 группа",
770 "zh-chs": "1組",
771 "xloc": [
772 - "default.handlebars->27->1472"
772 + "default.handlebars->27->1483"
773 ]
774 },
775 {
@@ -1161,7 +1161,7 @@
1161 "zh-chs": "啟用第二因素身份驗證",
1162 "xloc": [
1163 "default.handlebars->27->1356",
1164 - "default.handlebars->27->1481"
1164 + "default.handlebars->27->1492"
1165 ]
1166 },
1167 {
@@ -1908,7 +1908,7 @@
1908 "ru": "Доступ к файлам сервера",
1909 "zh-chs": "訪問服務器文件",
1910 "xloc": [
1911 - "default.handlebars->27->1453"
1911 + "default.handlebars->27->1464"
1912 ]
1913 },
1914 {
@@ -2017,7 +2017,7 @@
2017 "zh-chs": "帐户已被锁定",
2018 "xloc": [
2019 "default.handlebars->27->1357",
2020 - "default.handlebars->27->1450"
2020 + "default.handlebars->27->1461"
2021 ]
2022 },
2023 {
@@ -2288,7 +2288,7 @@
2288 "ru": "Добавить устройство",
2289 "zh-chs": "添加設備",
2290 "xloc": [
2291 - "default.handlebars->27->1506"
2291 + "default.handlebars->27->1517"
2292 ]
2293 },
2294 {
@@ -2324,8 +2324,8 @@
2324 "xloc": [
2325 "default.handlebars->27->1217",
2326 "default.handlebars->27->1219",
2327 - "default.handlebars->27->1429",
2328 - "default.handlebars->27->1512",
2327 + "default.handlebars->27->1440",
2328 + "default.handlebars->27->1523",
2329 "default.handlebars->27->189"
2330 ]
2331 },
@@ -2424,7 +2424,7 @@
2424 "ru": "Добавить участие",
2425 "zh-chs": "添加會員",
2426 "xloc": [
2427 - "default.handlebars->27->1532"
2427 + "default.handlebars->27->1543"
2428 ]
2429 },
2430 {
@@ -2513,7 +2513,7 @@
2513 "xloc": [
2514 "default.handlebars->27->1123",
2515 "default.handlebars->27->1218",
2516 - "default.handlebars->27->1518"
2516 + "default.handlebars->27->1529"
2517 ]
2518 },
2519 {
@@ -2548,7 +2548,7 @@
2548 "zh-chs": "添加用戶",
2549 "xloc": [
2550 "default.handlebars->27->1122",
2551 - "default.handlebars->27->1424"
2551 + "default.handlebars->27->1435"
2552 ]
2553 },
2554 {
@@ -2582,7 +2582,7 @@
2582 "ru": "Добавить пользователей в группу",
2583 "zh-chs": "將用戶添加到用戶組",
2584 "xloc": [
2585 - "default.handlebars->27->1449"
2585 + "default.handlebars->27->1460"
2586 ]
2587 },
2588 {
@@ -2789,7 +2789,7 @@
2789 "ru": "Области администратора",
2790 "zh-chs": "管理領域",
2791 "xloc": [
2792 - "default.handlebars->27->1476"
2792 + "default.handlebars->27->1487"
2793 ]
2794 },
2795 {
@@ -2824,7 +2824,7 @@
2824 "ru": "Административные области",
2825 "zh-chs": "行政領域",
2826 "xloc": [
2827 - "default.handlebars->27->1393"
2827 + "default.handlebars->27->1404"
2828 ]
2829 },
2830 {
@@ -2952,7 +2952,7 @@
2952 "ru": "Счетчик ошибок агента",
2953 "zh-chs": "座席錯誤計數器",
2954 "xloc": [
2955 - "default.handlebars->27->1545"
2955 + "default.handlebars->27->1556"
2956 ]
2957 },
2958 {
@@ -3020,7 +3020,7 @@
3020 "ru": "Сессии агентов",
3021 "zh-chs": "座席會議",
3022 "xloc": [
3023 - "default.handlebars->27->1561"
3023 + "default.handlebars->27->1572"
3024 ]
3025 },
3026 {
@@ -3143,7 +3143,7 @@
3143 "ru": "Агенты",
3144 "zh-chs": "代理商",
3145 "xloc": [
3146 - "default.handlebars->27->1574"
3146 + "default.handlebars->27->1585"
3147 ]
3148 },
3149 {
@@ -3233,7 +3233,7 @@
3233 "zh-chs": "允許用戶管理此設備組和該組中的設備。",
3234 "xloc": [
3235 "default.handlebars->27->1187",
3236 - "default.handlebars->27->1446"
3236 + "default.handlebars->27->1457"
3237 ]
3238 },
3239 {
@@ -3926,7 +3926,7 @@
3926 "ru": "Вы уверенны, что {0} плагин: {1}",
3927 "zh-chs": "您確定要{0}插件嗎:{1}",
3928 "xloc": [
3929 - "default.handlebars->27->1614"
3929 + "default.handlebars->27->1625"
3930 ]
3931 },
3932 {
@@ -3991,7 +3991,7 @@
3991 "ru": "Приложение аутентификации",
3992 "zh-chs": "身份驗證應用",
3993 "xloc": [
3994 - "default.handlebars->27->1477"
3994 + "default.handlebars->27->1488"
3995 ]
3996 },
3997 {
@@ -4304,7 +4304,7 @@
4304 "ru": "Резервные коды",
4305 "zh-chs": "備用碼",
4306 "xloc": [
4307 - "default.handlebars->27->1479"
4307 + "default.handlebars->27->1490"
4308 ]
4309 },
4310 {
@@ -4321,7 +4321,7 @@
4321 "ru": "Плохой ключ",
4322 "zh-chs": "錯誤的簽名",
4323 "xloc": [
4324 - "default.handlebars->27->1552"
4324 + "default.handlebars->27->1563"
4325 ]
4326 },
4327 {
@@ -4338,7 +4338,7 @@
4338 "ru": "Плохой веб-сертификат",
4339 "zh-chs": "錯誤的網絡證書",
4340 "xloc": [
4341 - "default.handlebars->27->1551"
4341 + "default.handlebars->27->1562"
4342 ]
4343 },
4344 {
@@ -4468,7 +4468,7 @@
4468 "ru": "Отправить сообщение",
4469 "zh-chs": "廣播",
4470 "xloc": [
4471 - "default.handlebars->27->1422",
4471 + "default.handlebars->27->1433",
4472 "default.handlebars->container->column_l->p4->3->1->0->3->1"
4473 ]
4474 },
@@ -4486,7 +4486,7 @@
4486 "ru": "Отправить сообщение",
4487 "zh-chs": "廣播消息",
4488 "xloc": [
4489 - "default.handlebars->27->1378"
4489 + "default.handlebars->27->1389"
4490 ]
4491 },
4492 {
@@ -4503,7 +4503,7 @@
4503 "ru": "Отправить сообщение всем подключенным пользователям.",
4504 "zh-chs": "向所有連接的用戶廣播消息。",
4505 "xloc": [
4506 - "default.handlebars->27->1377"
4506 + "default.handlebars->27->1388"
4507 ]
4508 },
4509 {
@@ -4591,7 +4591,7 @@
4591 "ru": "CIRA Сервер",
4592 "zh-chs": "CIRA服務器",
4593 "xloc": [
4594 - "default.handlebars->27->1602"
4594 + "default.handlebars->27->1613"
4595 ]
4596 },
4597 {
@@ -4608,7 +4608,7 @@
4608 "ru": "CIRA Сервер команды",
4609 "zh-chs": "CIRA服務器命令",
4610 "xloc": [
4611 - "default.handlebars->27->1603"
4611 + "default.handlebars->27->1614"
4612 ]
4613 },
4614 {
@@ -4625,7 +4625,7 @@
4625 "ru": "Загрузка CPU",
4626 "zh-chs": "CPU負載",
4627 "xloc": [
4628 - "default.handlebars->27->1566"
4628 + "default.handlebars->27->1577"
4629 ]
4630 },
4631 {
@@ -4642,7 +4642,7 @@
4642 "ru": "Загрузка CPU за последние 15 минут",
4643 "zh-chs": "最近15分鐘的CPU負載",
4644 "xloc": [
4645 - "default.handlebars->27->1569"
4645 + "default.handlebars->27->1580"
4646 ]
4647 },
4648 {
@@ -4659,7 +4659,7 @@
4659 "ru": "Загрузка CPU за последние 5 минут",
4660 "zh-chs": "最近5分鐘的CPU負載",
4661 "xloc": [
4662 - "default.handlebars->27->1568"
4662 + "default.handlebars->27->1579"
4663 ]
4664 },
4665 {
@@ -4676,7 +4676,7 @@
4676 "ru": "Загрузка CPU за последнюю минуту",
4677 "zh-chs": "最後一分鐘的CPU負載",
4678 "xloc": [
4679 - "default.handlebars->27->1567"
4679 + "default.handlebars->27->1578"
4680 ]
4681 },
4682 {
@@ -4713,7 +4713,7 @@
4713 "zh-chs": "CSV格式",
4714 "xloc": [
4715 "default.handlebars->27->1325",
4716 - "default.handlebars->27->1369",
4716 + "default.handlebars->27->1380",
4717 "default.handlebars->27->390"
4718 ]
4719 },
@@ -4731,7 +4731,7 @@
4731 "ru": "Ошибка вызова",
4732 "zh-chs": "通話錯誤",
4733 "xloc": [
4734 - "default.handlebars->27->1615"
4734 + "default.handlebars->27->1626"
4735 ]
4736 },
4737 {
@@ -4840,7 +4840,7 @@
4840 "ru": "Смена email для {0}",
4841 "zh-chs": "更改{0}的電子郵件",
4842 "xloc": [
4843 - "default.handlebars->27->1496"
4843 + "default.handlebars->27->1507"
4844 ]
4845 },
4846 {
@@ -4878,7 +4878,7 @@
4878 "xloc": [
4879 "default-mobile.handlebars->9->52",
4880 "default.handlebars->27->1052",
4881 - "default.handlebars->27->1489"
4881 + "default.handlebars->27->1500"
4882 ]
4883 },
4884 {
@@ -4895,7 +4895,7 @@
4895 "ru": "Смена пароля для {0}",
4896 "zh-chs": "更改{0}的密碼",
4897 "xloc": [
4898 - "default.handlebars->27->1503"
4898 + "default.handlebars->27->1514"
4899 ]
4900 },
4901 {
@@ -4964,7 +4964,7 @@
4964 "ru": "Изменить пароль для этого пользователя",
4965 "zh-chs": "更改該用戶的密碼",
4966 "xloc": [
4967 - "default.handlebars->27->1488"
4967 + "default.handlebars->27->1499"
4968 ]
4969 },
4970 {
@@ -5156,7 +5156,7 @@
5156 "ru": "Проверка...",
5157 "zh-chs": "檢查...",
5158 "xloc": [
5159 - "default.handlebars->27->1609",
5159 + "default.handlebars->27->1620",
5160 "default.handlebars->27->825"
5161 ]
5162 },
@@ -5397,7 +5397,7 @@
5397 "ru": "Очистить это уведомление",
5398 "zh-chs": "清除此通知",
5399 "xloc": [
5400 - "default.handlebars->27->1539"
5400 + "default.handlebars->27->1550"
5401 ]
5402 },
5403 {
@@ -5608,8 +5608,8 @@
5608 "ru": "Общие группы устройств",
5609 "zh-chs": "通用設備組",
5610 "xloc": [
5611 - "default.handlebars->27->1430",
5612 - "default.handlebars->27->1513"
5611 + "default.handlebars->27->1441",
5612 + "default.handlebars->27->1524"
5613 ]
5614 },
5615 {
@@ -5625,7 +5625,7 @@
5625 "ru": "Общие устройства",
5626 "zh-chs": "通用設備",
5627 "xloc": [
5628 - "default.handlebars->27->1507"
5628 + "default.handlebars->27->1518"
5629 ]
5630 },
5631 {
@@ -5663,7 +5663,8 @@
5663 "default-mobile.handlebars->9->224",
5664 "default-mobile.handlebars->9->291",
5665 "default.handlebars->27->1168",
5666 - "default.handlebars->27->1442",
5666 + "default.handlebars->27->1367",
5667 + "default.handlebars->27->1453",
5668 "default.handlebars->27->387",
5669 "default.handlebars->27->607",
5670 "default.handlebars->27->616"
@@ -5705,6 +5706,12 @@
5706 "default.handlebars->27->713"
5707 ]
5708 },
5709 + {
5710 + "en": "Confirm delete selected account(s)?",
5711 + "xloc": [
5712 + "default.handlebars->27->1366"
5713 + ]
5714 + },
5715 {
5716 "cs": "Potvrdit smázání vybraných zařízení?",
5717 "de": "Bestätigen Sie das Löschen der ausgewählten Geräte?",
@@ -5735,7 +5742,7 @@
5742 "ru": "Подтвердить удаление пользователя {0}?",
5743 "zh-chs": "確認刪除用戶{0}?",
5744 "xloc": [
5738 - "default.handlebars->27->1505"
5745 + "default.handlebars->27->1516"
5746 ]
5747 },
5748 {
@@ -5823,8 +5830,8 @@
5830 "ru": "Подтвердить удаление группы устройств {0}?",
5831 "zh-chs": "確認刪除設備組{0}?",
5832 "xloc": [
5826 - "default.handlebars->27->1437",
5827 - "default.handlebars->27->1534"
5833 + "default.handlebars->27->1448",
5834 + "default.handlebars->27->1545"
5835 ]
5836 },
5837 {
@@ -5837,7 +5844,7 @@
5844 "ru": "Подтвердите удаление устройства {0}?",
5845 "zh-chs": "确认移除设备{0}?",
5846 "xloc": [
5840 - "default.handlebars->27->1525"
5847 + "default.handlebars->27->1536"
5848 ]
5849 },
5850 {
@@ -5854,7 +5861,7 @@
5861 "ru": "Подтвердить удаление группы {0}?",
5862 "zh-chs": "確認刪除組{0}?",
5863 "xloc": [
5857 - "default.handlebars->27->1530"
5864 + "default.handlebars->27->1541"
5865 ]
5866 },
5867 {
@@ -5873,8 +5880,8 @@
5880 "xloc": [
5881 "default-mobile.handlebars->9->337",
5882 "default.handlebars->27->1251",
5876 - "default.handlebars->27->1445",
5877 - "default.handlebars->27->1527"
5883 + "default.handlebars->27->1456",
5884 + "default.handlebars->27->1538"
5885 ]
5886 },
5887 {
@@ -6006,7 +6013,7 @@
6013 "ru": "Подключено Intel® AMT",
6014 "zh-chs": "連接的英特爾®AMT",
6015 "xloc": [
6009 - "default.handlebars->27->1557"
6016 + "default.handlebars->27->1568"
6017 ]
6018 },
6019 {
@@ -6023,7 +6030,7 @@
6030 "ru": "Подключенные пользователи",
6031 "zh-chs": "關聯用戶",
6032 "xloc": [
6026 - "default.handlebars->27->1562"
6033 + "default.handlebars->27->1573"
6034 ]
6035 },
6036 {
@@ -6098,7 +6105,7 @@
6105 "ru": "Подключений ",
6106 "zh-chs": "連接數",
6107 "xloc": [
6101 - "default.handlebars->27->1573"
6108 + "default.handlebars->27->1584"
6109 ]
6110 },
6111 {
@@ -6115,7 +6122,7 @@
6122 "ru": "Ретранслятор подключения",
6123 "zh-chs": "連接繼電器",
6124 "xloc": [
6118 - "default.handlebars->27->1601"
6125 + "default.handlebars->27->1612"
6126 ]
6127 },
6128 {
@@ -6239,7 +6246,7 @@
6246 "ru": "Cookie-кодировщик",
6247 "zh-chs": "Cookie編碼器",
6248 "xloc": [
6242 - "default.handlebars->27->1587"
6249 + "default.handlebars->27->1598"
6250 ]
6251 },
6252 {
@@ -6532,7 +6539,7 @@
6539 "ru": "Основной сервер",
6540 "zh-chs": "核心服務器",
6541 "xloc": [
6535 - "default.handlebars->27->1586"
6542 + "default.handlebars->27->1597"
6543 ]
6544 },
6545 {
@@ -6565,7 +6572,7 @@
6572 "ru": "Создать учетную запись",
6573 "zh-chs": "創建帳號",
6574 "xloc": [
6568 - "default.handlebars->27->1389",
6575 + "default.handlebars->27->1400",
6576 "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->12->1->1",
6577 "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->12->1->1"
6578 ]
@@ -6601,7 +6608,7 @@
6608 "ru": "Создать группу пользователей",
6609 "zh-chs": "創建用戶組",
6610 "xloc": [
6604 - "default.handlebars->27->1413"
6611 + "default.handlebars->27->1424"
6612 ]
6613 },
6614 {
@@ -6652,7 +6659,7 @@
6659 "ru": "Создайте сразу несколько учетных записей, импортировав файл JSON в следующем формате:",
6660 "zh-chs": "通過導入以下格式的JSON文件一次創建多個帳戶:",
6661 "xloc": [
6655 - "default.handlebars->27->1360"
6662 + "default.handlebars->27->1371"
6663 ]
6664 },
6665 {
@@ -6687,7 +6694,7 @@
6694 "ru": "Создано",
6695 "zh-chs": "創建",
6696 "xloc": [
6690 - "default.handlebars->27->1465"
6697 + "default.handlebars->27->1476"
6698 ]
6699 },
6700 {
@@ -7046,6 +7053,12 @@
7053 "default.handlebars->27->1044"
7054 ]
7055 },
7056 + {
7057 + "en": "Delete Accounts",
7058 + "xloc": [
7059 + "default.handlebars->27->1368"
7060 + ]
7061 + },
7062 {
7063 "cs": "Smazat zařízení",
7064 "de": "Gerät löschen",
@@ -7133,7 +7146,7 @@
7146 "ru": "Удалить пользователя",
7147 "zh-chs": "刪除用戶",
7148 "xloc": [
7136 - "default.handlebars->27->1487"
7149 + "default.handlebars->27->1498"
7150 ]
7151 },
7152 {
@@ -7150,8 +7163,8 @@
7163 "ru": "Удалить группу пользователей",
7164 "zh-chs": "刪除用戶組",
7165 "xloc": [
7153 - "default.handlebars->27->1435",
7154 - "default.handlebars->27->1443"
7166 + "default.handlebars->27->1446",
7167 + "default.handlebars->27->1454"
7168 ]
7169 },
7170 {
@@ -7168,7 +7181,7 @@
7181 "ru": "Удалить пользователя {0}",
7182 "zh-chs": "刪除用戶{0}",
7183 "xloc": [
7171 - "default.handlebars->27->1504"
7184 + "default.handlebars->27->1515"
7185 ]
7186 },
7187 {
@@ -7186,6 +7199,7 @@
7199 "zh-chs": "刪除帳戶",
7200 "xloc": [
7201 "default-mobile.handlebars->container->page_content->column_l->p3->p3info->1->p3AccountActions->7->7->0",
7202 + "default.handlebars->27->1364",
7203 "default.handlebars->container->column_l->p2->p2AccountActions->3->p2AccountPassActions->7"
7204 ]
7205 },
@@ -7256,7 +7270,7 @@
7270 "ru": "Удалить группу пользователей {0}?",
7271 "zh-chs": "刪除用戶組{0}?",
7272 "xloc": [
7259 - "default.handlebars->27->1441"
7273 + "default.handlebars->27->1452"
7274 ]
7275 },
7276 {
@@ -7379,10 +7393,10 @@
7393 "default.handlebars->27->1064",
7394 "default.handlebars->27->1088",
7395 "default.handlebars->27->1171",
7382 - "default.handlebars->27->1412",
7383 - "default.handlebars->27->1417",
7384 - "default.handlebars->27->1419",
7385 - "default.handlebars->27->1439",
7396 + "default.handlebars->27->1423",
7397 + "default.handlebars->27->1428",
7398 + "default.handlebars->27->1430",
7399 + "default.handlebars->27->1450",
7400 "default.handlebars->27->457",
7401 "default.handlebars->27->458",
7402 "default.handlebars->27->649",
@@ -7577,7 +7591,7 @@
7591 "zh-chs": "設備",
7592 "xloc": [
7593 "default.handlebars->27->1195",
7580 - "default.handlebars->27->1510",
7594 + "default.handlebars->27->1521",
7595 "default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->9->devListToolbarSort->sortselect->5"
7596 ]
7597 },
@@ -7616,8 +7630,8 @@
7630 "default.handlebars->27->1191",
7631 "default.handlebars->27->1193",
7632 "default.handlebars->27->1194",
7619 - "default.handlebars->27->1433",
7620 - "default.handlebars->27->1516"
7633 + "default.handlebars->27->1444",
7634 + "default.handlebars->27->1527"
7635 ]
7636 },
7637 {
@@ -7653,10 +7667,10 @@
7667 "zh-chs": "設備組",
7668 "xloc": [
7669 "default-mobile.handlebars->container->page_content->column_l->p3->p3info->1->3",
7656 - "default.handlebars->27->1408",
7657 - "default.handlebars->27->1421",
7658 - "default.handlebars->27->1474",
7659 - "default.handlebars->27->1560",
7670 + "default.handlebars->27->1419",
7671 + "default.handlebars->27->1432",
7672 + "default.handlebars->27->1485",
7673 + "default.handlebars->27->1571",
7674 "default.handlebars->container->column_l->p2->9"
7675 ]
7676 },
@@ -8586,7 +8600,7 @@
8600 "ru": "Скачать список пользователей в одном из форматов ниже.",
8601 "zh-chs": "使用以下一種文件格式下載用戶列表。",
8602 "xloc": [
8589 - "default.handlebars->27->1368"
8603 + "default.handlebars->27->1379"
8604 ]
8605 },
8606 {
@@ -8672,7 +8686,7 @@
8686 "ru": "Скопировать агент",
8687 "zh-chs": "代理重複",
8688 "xloc": [
8675 - "default.handlebars->27->1556"
8689 + "default.handlebars->27->1567"
8690 ]
8691 },
8692 {
@@ -8706,7 +8720,7 @@
8720 "ru": "Скопировать группу пользователей",
8721 "zh-chs": "重複的用戶組",
8722 "xloc": [
8709 - "default.handlebars->27->1414"
8723 + "default.handlebars->27->1425"
8724 ]
8725 },
8726 {
@@ -9061,7 +9075,7 @@
9075 "ru": "Редактировать группу пользователей",
9076 "zh-chs": "編輯用戶組",
9077 "xloc": [
9064 - "default.handlebars->27->1440"
9078 + "default.handlebars->27->1451"
9079 ]
9080 },
9081 {
@@ -9096,10 +9110,10 @@
9110 "zh-chs": "電子郵件",
9111 "xloc": [
9112 "default-mobile.handlebars->9->40",
9099 - "default.handlebars->27->1380",
9100 - "default.handlebars->27->1461",
9101 - "default.handlebars->27->1462",
9102 - "default.handlebars->27->1492",
9113 + "default.handlebars->27->1391",
9114 + "default.handlebars->27->1472",
9115 + "default.handlebars->27->1473",
9116 + "default.handlebars->27->1503",
9117 "default.handlebars->27->270",
9118 "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->3",
9119 "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3"
@@ -9150,7 +9164,7 @@
9164 "ru": "Почтовый трафик",
9165 "zh-chs": "电子邮件流量",
9166 "xloc": [
9153 - "default.handlebars->27->1595"
9167 + "default.handlebars->27->1606"
9168 ]
9169 },
9170 {
@@ -9206,7 +9220,7 @@
9220 "zh-chs": "電子郵件已驗證",
9221 "xloc": [
9222 "default.handlebars->27->1354",
9209 - "default.handlebars->27->1458"
9223 + "default.handlebars->27->1469"
9224 ]
9225 },
9226 {
@@ -9223,7 +9237,7 @@
9237 "ru": "Email подтвержден.",
9238 "zh-chs": "電子郵件已驗證。",
9239 "xloc": [
9226 - "default.handlebars->27->1386"
9240 + "default.handlebars->27->1397"
9241 ]
9242 },
9243 {
@@ -9240,7 +9254,7 @@
9254 "ru": "Email не подтвержден",
9255 "zh-chs": "電子郵件未驗證",
9256 "xloc": [
9243 - "default.handlebars->27->1459"
9257 + "default.handlebars->27->1470"
9258 ]
9259 },
9260 {
@@ -9607,7 +9621,7 @@
9621 "ru": "Введите разделенный запятыми список имен административных областей.",
9622 "zh-chs": "輸入管理領域名稱的逗號分隔列表。",
9623 "xloc": [
9610 - "default.handlebars->27->1390"
9624 + "default.handlebars->27->1401"
9625 ]
9626 },
9627 {
@@ -9898,7 +9912,7 @@
9912 "ru": "Внешний",
9913 "zh-chs": "外部",
9914 "xloc": [
9901 - "default.handlebars->27->1580"
9915 + "default.handlebars->27->1591"
9916 ]
9917 },
9918 {
@@ -10286,8 +10300,8 @@
10300 "ru": "Принудительно сбросить пароль при следующем входе в систему.",
10301 "zh-chs": "下次登錄時強制重置密碼。",
10302 "xloc": [
10289 - "default.handlebars->27->1384",
10290 - "default.handlebars->27->1501"
10303 + "default.handlebars->27->1395",
10304 + "default.handlebars->27->1512"
10305 ]
10306 },
10307 {
@@ -10373,8 +10387,8 @@
10387 "ru": "Свободно",
10388 "zh-chs": "自由",
10389 "xloc": [
10376 - "default.handlebars->27->1541",
10377 - "default.handlebars->27->1543"
10390 + "default.handlebars->27->1552",
10391 + "default.handlebars->27->1554"
10392 ]
10393 },
10394 {
@@ -10559,7 +10573,7 @@
10573 "default-mobile.handlebars->9->67",
10574 "default.handlebars->27->1073",
10575 "default.handlebars->27->1198",
10562 - "default.handlebars->27->1396"
10576 + "default.handlebars->27->1407"
10577 ]
10578 },
10579 {
@@ -10655,7 +10669,7 @@
10669 "ru": "Администратор с полным доступом",
10670 "zh-chs": "正式管理員",
10671 "xloc": [
10658 - "default.handlebars->27->1454"
10672 + "default.handlebars->27->1465"
10673 ]
10674 },
10675 {
@@ -11047,8 +11061,10 @@
11061 "ru": "Групповое действие",
11062 "zh-chs": "集體行動",
11063 "xloc": [
11064 + "default.handlebars->27->1365",
11065 "default.handlebars->27->384",
11051 - "default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->devListToolbar"
11066 + "default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->devListToolbar",
11067 + "default.handlebars->container->column_l->p4->3->1->0->3->3"
11068 ]
11069 },
11070 {
@@ -11065,7 +11081,7 @@
11081 "ru": "Члены группы",
11082 "zh-chs": "小組成員",
11083 "xloc": [
11068 - "default.handlebars->27->1425"
11084 + "default.handlebars->27->1436"
11085 ]
11086 },
11087 {
@@ -11236,7 +11252,7 @@
11252 "ru": "Всего кучи",
11253 "zh-chs": "堆總數",
11254 "xloc": [
11239 - "default.handlebars->27->1582"
11255 + "default.handlebars->27->1593"
11256 ]
11257 },
11258 {
@@ -11253,7 +11269,7 @@
11269 "ru": "Куча используется",
11270 "zh-chs": "堆使用",
11271 "xloc": [
11256 - "default.handlebars->27->1581"
11272 + "default.handlebars->27->1592"
11273 ]
11274 },
11275 {
@@ -12017,8 +12033,8 @@
12033 "xloc": [
12034 "default.handlebars->27->1274",
12035 "default.handlebars->27->1280",
12020 - "default.handlebars->27->1578",
12021 - "default.handlebars->27->1600"
12036 + "default.handlebars->27->1589",
12037 + "default.handlebars->27->1611"
12038 ]
12039 },
12040 {
@@ -12722,7 +12738,7 @@
12738 "ru": "Некорректный тип группы устройств",
12739 "zh-chs": "無效的設備組類型",
12740 "xloc": [
12725 - "default.handlebars->27->1555"
12741 + "default.handlebars->27->1566"
12742 ]
12743 },
12744 {
@@ -12739,7 +12755,7 @@
12755 "ru": "Некорректный JSON",
12756 "zh-chs": "無效的JSON",
12757 "xloc": [
12742 - "default.handlebars->27->1549"
12758 + "default.handlebars->27->1560"
12759 ]
12760 },
12761 {
@@ -12756,8 +12772,8 @@
12772 "ru": "Некорректный формат файла JSON.",
12773 "zh-chs": "無效的JSON文件格式。",
12774 "xloc": [
12759 - "default.handlebars->27->1365",
12760 - "default.handlebars->27->1367"
12775 + "default.handlebars->27->1376",
12776 + "default.handlebars->27->1378"
12777 ]
12778 },
12779 {
@@ -12774,7 +12790,7 @@
12790 "ru": "Некорректный файл JSON: {0}.",
12791 "zh-chs": "無效的JSON文件:{0}。",
12792 "xloc": [
12777 - "default.handlebars->27->1363"
12793 + "default.handlebars->27->1374"
12794 ]
12795 },
12796 {
@@ -12791,7 +12807,7 @@
12807 "ru": "Некорректная сигнатура PKCS",
12808 "zh-chs": "無效的PKCS簽名",
12809 "xloc": [
12794 - "default.handlebars->27->1547"
12810 + "default.handlebars->27->1558"
12811 ]
12812 },
12813 {
@@ -12808,7 +12824,7 @@
12824 "ru": "Некорректная сигнатура RSA",
12825 "zh-chs": "無效的RSA密碼",
12826 "xloc": [
12811 - "default.handlebars->27->1548"
12827 + "default.handlebars->27->1559"
12828 ]
12829 },
12830 {
@@ -13112,7 +13128,7 @@
13128 "zh-chs": "JSON格式",
13129 "xloc": [
13130 "default.handlebars->27->1327",
13115 - "default.handlebars->27->1371",
13131 + "default.handlebars->27->1382",
13132 "default.handlebars->27->392"
13133 ]
13134 },
@@ -13611,7 +13627,7 @@
13627 "ru": "Последний вход в систему",
13628 "zh-chs": "上次登錄",
13629 "xloc": [
13614 - "default.handlebars->27->1466"
13630 + "default.handlebars->27->1477"
13631 ]
13632 },
13633 {
@@ -13669,7 +13685,7 @@
13685 "ru": "Последнее изменение: {0}",
13686 "zh-chs": "上次更改:{0}",
13687 "xloc": [
13672 - "default.handlebars->27->1470"
13688 + "default.handlebars->27->1481"
13689 ]
13690 },
13691 {
@@ -13862,7 +13878,7 @@
13878 "ru": "Меньше",
13879 "zh-chs": "減",
13880 "xloc": [
13865 - "default.handlebars->27->1617"
13881 + "default.handlebars->27->1628"
13882 ]
13883 },
13884 {
@@ -14397,7 +14413,13 @@
14413 "ru": "Заблокировать учетную запись",
14414 "zh-chs": "鎖定賬戶",
14415 "xloc": [
14400 - "default.handlebars->27->1402"
14416 + "default.handlebars->27->1413"
14417 + ]
14418 + },
14419 + {
14420 + "en": "Lock account",
14421 + "xloc": [
14422 + "default.handlebars->27->1362"
14423 ]
14424 },
14425 {
@@ -14431,7 +14453,7 @@
14453 "ru": "Заблокированная учетная запись",
14454 "zh-chs": "賬戶鎖定",
14455 "xloc": [
14434 - "default.handlebars->27->1451"
14456 + "default.handlebars->27->1462"
14457 ]
14458 },
14459 {
@@ -14916,7 +14938,7 @@
14938 "ru": "Сообщения главного сервера",
14939 "zh-chs": "主服務器消息",
14940 "xloc": [
14919 - "default.handlebars->27->1589"
14941 + "default.handlebars->27->1600"
14942 ]
14943 },
14944 {
@@ -15070,7 +15092,7 @@
15092 "ru": "Управление группами пользователя",
15093 "zh-chs": "管理用戶組",
15094 "xloc": [
15073 - "default.handlebars->27->1401"
15095 + "default.handlebars->27->1412"
15096 ]
15097 },
15098 {
@@ -15087,7 +15109,7 @@
15109 "ru": "Управление пользователями",
15110 "zh-chs": "管理用戶",
15111 "xloc": [
15090 - "default.handlebars->27->1400",
15112 + "default.handlebars->27->1411",
15113 "default.handlebars->27->559"
15114 ]
15115 },
@@ -15311,7 +15333,7 @@
15333 "ru": "Достигнуто максимальное число сессий",
15334 "zh-chs": "達到的會話數上限",
15335 "xloc": [
15314 - "default.handlebars->27->1553"
15336 + "default.handlebars->27->1564"
15337 ]
15338 },
15339 {
@@ -15365,7 +15387,7 @@
15387 "ru": "Мегабайт",
15388 "zh-chs": "兆字節",
15389 "xloc": [
15368 - "default.handlebars->27->1579"
15390 + "default.handlebars->27->1590"
15391 ]
15392 },
15393 {
@@ -15382,7 +15404,7 @@
15404 "ru": "ОЗУ",
15405 "zh-chs": "記憶",
15406 "xloc": [
15385 - "default.handlebars->27->1570",
15407 + "default.handlebars->27->1581",
15408 "default.handlebars->27->790",
15409 "default.handlebars->container->column_l->p40->3->1->p40type->3"
15410 ]
@@ -15518,7 +15540,7 @@
15540 "ru": "Трафик MeshAgent",
15541 "zh-chs": "MeshAgent流量",
15542 "xloc": [
15521 - "default.handlebars->27->1591"
15543 + "default.handlebars->27->1602"
15544 ]
15545 },
15546 {
@@ -15535,7 +15557,7 @@
15557 "ru": "Обновление MeshAgent",
15558 "zh-chs": "MeshAgent更新",
15559 "xloc": [
15538 - "default.handlebars->27->1592"
15560 + "default.handlebars->27->1603"
15561 ]
15562 },
15563 {
@@ -15638,7 +15660,7 @@
15660 "ru": "Соединения сервера MeshCentral",
15661 "zh-chs": "MeshCentral服務器對等",
15662 "xloc": [
15641 - "default.handlebars->27->1590"
15663 + "default.handlebars->27->1601"
15664 ]
15665 },
15666 {
@@ -15900,7 +15922,7 @@
15922 "ru": "Диспетчер сообщения",
15923 "zh-chs": "郵件調度程序",
15924 "xloc": [
15903 - "default.handlebars->27->1588"
15925 + "default.handlebars->27->1599"
15926 ]
15927 },
15928 {
@@ -16028,7 +16050,7 @@
16050 "ru": "Еще",
16051 "zh-chs": "更多",
16052 "xloc": [
16031 - "default.handlebars->27->1616"
16053 + "default.handlebars->27->1627"
16054 ]
16055 },
16056 {
@@ -16359,11 +16381,11 @@
16381 "default.handlebars->27->1087",
16382 "default.handlebars->27->1170",
16383 "default.handlebars->27->1333",
16362 - "default.handlebars->27->1407",
16363 - "default.handlebars->27->1411",
16364 - "default.handlebars->27->1416",
16384 "default.handlebars->27->1418",
16366 - "default.handlebars->27->1438",
16385 + "default.handlebars->27->1422",
16386 + "default.handlebars->27->1427",
16387 + "default.handlebars->27->1429",
16388 + "default.handlebars->27->1449",
16389 "default.handlebars->27->450",
16390 "default.handlebars->27->667",
16391 "default.handlebars->27->740",
@@ -16405,7 +16427,7 @@
16427 "ru": "Имя1, Имя2, Имя3",
16428 "zh-chs": "名稱1,名稱2,名稱3",
16429 "xloc": [
16408 - "default.handlebars->27->1392"
16430 + "default.handlebars->27->1403"
16431 ]
16432 },
16433 {
@@ -16753,7 +16775,7 @@
16775 "zh-chs": "找不到活動",
16776 "xloc": [
16777 "default.handlebars->27->1323",
16756 - "default.handlebars->27->1535",
16778 + "default.handlebars->27->1546",
16779 "default.handlebars->27->738"
16780 ]
16781 },
@@ -16894,7 +16916,7 @@
16916 "ru": "Нет членов",
16917 "zh-chs": "沒有會員",
16918 "xloc": [
16897 - "default.handlebars->27->1428"
16919 + "default.handlebars->27->1439"
16920 ]
16921 },
16922 {
@@ -16911,7 +16933,7 @@
16933 "ru": "Запретить создание групп устройств",
16934 "zh-chs": "沒有新的設備組",
16935 "xloc": [
16914 - "default.handlebars->27->1403"
16936 + "default.handlebars->27->1414"
16937 ]
16938 },
16939 {
@@ -17026,7 +17048,7 @@
17048 "ru": "Нет инструментов (MeshCmd/Router)",
17049 "zh-chs": "沒有工具(MeshCmd /路由器)",
17050 "xloc": [
17029 - "default.handlebars->27->1404"
17051 + "default.handlebars->27->1415"
17052 ]
17053 },
17054 {
@@ -17043,8 +17065,8 @@
17065 "ru": "Нет общих групп устройств",
17066 "zh-chs": "沒有共同的設備組",
17067 "xloc": [
17046 - "default.handlebars->27->1434",
17047 - "default.handlebars->27->1517"
17068 + "default.handlebars->27->1445",
17069 + "default.handlebars->27->1528"
17070 ]
17071 },
17072 {
@@ -17130,7 +17152,7 @@
17152 "ru": "Нет общих устройств",
17153 "zh-chs": "沒有共同的設備",
17154 "xloc": [
17133 - "default.handlebars->27->1511"
17155 + "default.handlebars->27->1522"
17156 ]
17157 },
17158 {
@@ -17216,7 +17238,7 @@
17238 "ru": "Группы не найдены.",
17239 "zh-chs": "找不到群組。",
17240 "xloc": [
17219 - "default.handlebars->27->1406"
17241 + "default.handlebars->27->1417"
17242 ]
17243 },
17244 {
@@ -17318,7 +17340,7 @@
17340 "ru": "Нет серверных прав",
17341 "zh-chs": "沒有服務器權限",
17342 "xloc": [
17321 - "default.handlebars->27->1452"
17343 + "default.handlebars->27->1463"
17344 ]
17345 },
17346 {
@@ -17335,7 +17357,7 @@
17357 "ru": "Нет членства в группах пользователей",
17358 "zh-chs": "沒有用戶組成員身份",
17359 "xloc": [
17338 - "default.handlebars->27->1523"
17360 + "default.handlebars->27->1534"
17361 ]
17362 },
17363 {
@@ -17432,9 +17454,9 @@
17454 "default.handlebars->27->1110",
17455 "default.handlebars->27->1112",
17456 "default.handlebars->27->1293",
17435 - "default.handlebars->27->1415",
17436 - "default.handlebars->27->1471",
17437 - "default.handlebars->27->1475",
17457 + "default.handlebars->27->1426",
17458 + "default.handlebars->27->1482",
17459 + "default.handlebars->27->1486",
17460 "default.handlebars->27->149",
17461 "default.handlebars->27->165",
17462 "default.handlebars->27->166",
@@ -17595,7 +17617,7 @@
17617 "ru": "Не задано",
17618 "zh-chs": "沒有設置",
17619 "xloc": [
17598 - "default.handlebars->27->1457"
17620 + "default.handlebars->27->1468"
17621 ]
17622 },
17623 {
@@ -17611,7 +17633,7 @@
17633 "ru": "не подтверждено",
17634 "zh-chs": "未經審核的",
17635 "xloc": [
17614 - "default.handlebars->27->1494"
17636 + "default.handlebars->27->1505"
17637 ]
17638 },
17639 {
@@ -17629,7 +17651,7 @@
17651 "zh-chs": "筆記",
17652 "xloc": [
17653 "default.handlebars->27->1120",
17632 - "default.handlebars->27->1482",
17654 + "default.handlebars->27->1493",
17655 "default.handlebars->27->503",
17656 "default.handlebars->27->552",
17657 "default.handlebars->27->571",
@@ -17737,7 +17759,7 @@
17759 "ru": "Уведомить",
17760 "zh-chs": "通知",
17761 "xloc": [
17740 - "default.handlebars->27->1484"
17762 + "default.handlebars->27->1495"
17763 ]
17764 },
17765 {
@@ -17773,7 +17795,7 @@
17795 "ru": "Уведомить {0}",
17796 "zh-chs": "通知{0}",
17797 "xloc": [
17776 - "default.handlebars->27->1358"
17798 + "default.handlebars->27->1369"
17799 ]
17800 },
17801 {
@@ -17848,7 +17870,7 @@
17870 "ru": "Произошло в {0}",
17871 "zh-chs": "發生在{0}",
17872 "xloc": [
17851 - "default.handlebars->27->1538"
17873 + "default.handlebars->27->1549"
17874 ]
17875 },
17876 {
@@ -18061,6 +18083,7 @@
18083 "zh-chs": "運作方式",
18084 "xloc": [
18085 "default-mobile.handlebars->9->214",
18086 + "default.handlebars->27->1361",
18087 "default.handlebars->27->376",
18088 "default.handlebars->27->589"
18089 ]
@@ -18295,7 +18318,7 @@
18318 "ru": "Частичные права",
18319 "zh-chs": "部分權利",
18320 "xloc": [
18298 - "default.handlebars->27->1455"
18321 + "default.handlebars->27->1466"
18322 ]
18323 },
18324 {
@@ -18330,12 +18353,12 @@
18353 "zh-chs": "密碼",
18354 "xloc": [
18355 "default-mobile.handlebars->9->217",
18333 - "default.handlebars->27->1381",
18334 - "default.handlebars->27->1382",
18335 - "default.handlebars->27->1467",
18336 - "default.handlebars->27->1469",
18337 - "default.handlebars->27->1497",
18338 - "default.handlebars->27->1498",
18356 + "default.handlebars->27->1392",
18357 + "default.handlebars->27->1393",
18358 + "default.handlebars->27->1478",
18359 + "default.handlebars->27->1480",
18360 + "default.handlebars->27->1508",
18361 + "default.handlebars->27->1509",
18362 "default.handlebars->27->227",
18363 "default.handlebars->27->256",
18364 "default.handlebars->27->595"
@@ -18431,7 +18454,7 @@
18454 "ru": "Подсказка пароля",
18455 "zh-chs": "密碼提示",
18456 "xloc": [
18434 - "default.handlebars->27->1499"
18457 + "default.handlebars->27->1510"
18458 ]
18459 },
18460 {
@@ -18872,7 +18895,7 @@
18895 "zh-chs": "插件動作",
18896 "xloc": [
18897 "default.handlebars->27->160",
18875 - "default.handlebars->27->1613"
18898 + "default.handlebars->27->1624"
18899 ]
18900 },
18901 {
@@ -19580,7 +19603,7 @@
19603 "ru": "RSS",
19604 "zh-chs": "的RSS",
19605 "xloc": [
19583 - "default.handlebars->27->1583"
19606 + "default.handlebars->27->1594"
19607 ]
19608 },
19609 {
@@ -19597,7 +19620,7 @@
19620 "ru": "Случайный пароль.",
19621 "zh-chs": "隨機化密碼。",
19622 "xloc": [
19600 - "default.handlebars->27->1383"
19623 + "default.handlebars->27->1394"
19624 ]
19625 },
19626 {
@@ -19648,7 +19671,7 @@
19671 "ru": "Области",
19672 "zh-chs": "境界",
19673 "xloc": [
19651 - "default.handlebars->27->1391"
19674 + "default.handlebars->27->1402"
19675 ]
19676 },
19677 {
@@ -19764,7 +19787,7 @@
19787 "ru": "Число ретрансляций",
19788 "zh-chs": "中繼計數",
19789 "xloc": [
19767 - "default.handlebars->27->1565"
19790 + "default.handlebars->27->1576"
19791 ]
19792 },
19793 {
@@ -19781,7 +19804,7 @@
19804 "ru": "Ошибки ретранслятора",
19805 "zh-chs": "中繼錯誤",
19806 "xloc": [
19784 - "default.handlebars->27->1558"
19807 + "default.handlebars->27->1569"
19808 ]
19809 },
19810 {
@@ -19798,8 +19821,8 @@
19821 "ru": "Сессии ретранслятора",
19822 "zh-chs": "接力會議",
19823 "xloc": [
19801 - "default.handlebars->27->1564",
19802 - "default.handlebars->27->1577"
19824 + "default.handlebars->27->1575",
19825 + "default.handlebars->27->1588"
19826 ]
19827 },
19828 {
@@ -19989,7 +20012,7 @@
20012 "ru": "Удаленный пользователь",
20013 "zh-chs": "遠程用戶",
20014 "xloc": [
19992 - "default.handlebars->27->1444"
20015 + "default.handlebars->27->1455"
20016 ]
20017 },
20018 {
@@ -20074,7 +20097,7 @@
20097 "ru": "Удалить устройство",
20098 "zh-chs": "删除设备",
20099 "xloc": [
20077 - "default.handlebars->27->1524"
20100 + "default.handlebars->27->1535"
20101 ]
20102 },
20103 {
@@ -20091,8 +20114,8 @@
20114 "ru": "Удалить группу устройств.",
20115 "zh-chs": "刪除設備組",
20116 "xloc": [
20094 - "default.handlebars->27->1436",
20095 - "default.handlebars->27->1533"
20117 + "default.handlebars->27->1447",
20118 + "default.handlebars->27->1544"
20119 ]
20120 },
20121 {
@@ -20109,8 +20132,8 @@
20132 "ru": "Удалить пользователя",
20133 "zh-chs": "刪除用戶",
20134 "xloc": [
20112 - "default.handlebars->27->1526",
20113 - "default.handlebars->27->1529"
20135 + "default.handlebars->27->1537",
20136 + "default.handlebars->27->1540"
20137 ]
20138 },
20139 {
@@ -20127,7 +20150,7 @@
20150 "ru": "Удалить все двухфакторные аутентификации.",
20151 "zh-chs": "刪除所有第二因素驗證。",
20152 "xloc": [
20130 - "default.handlebars->27->1502"
20153 + "default.handlebars->27->1513"
20154 ]
20155 },
20156 {
@@ -20144,7 +20167,7 @@
20167 "ru": "Удалить все прошлые события для этого userid.",
20168 "zh-chs": "刪除此用戶標識的所有先前事件。",
20169 "xloc": [
20147 - "default.handlebars->27->1385"
20170 + "default.handlebars->27->1396"
20171 ]
20172 },
20173 {
@@ -20208,7 +20231,7 @@
20231 "ru": "Удалить этого пользователя",
20232 "zh-chs": "删除该用户",
20233 "xloc": [
20211 - "default.handlebars->27->1486"
20234 + "default.handlebars->27->1497"
20235 ]
20236 },
20237 {
@@ -20225,7 +20248,7 @@
20248 "ru": "Удалить членство пользователя в группе",
20249 "zh-chs": "刪除用戶組成員身份",
20250 "xloc": [
20228 - "default.handlebars->27->1521"
20251 + "default.handlebars->27->1532"
20252 ]
20253 },
20254 {
@@ -20242,7 +20265,7 @@
20265 "ru": "Удалить права группы пользователей для этой группы устройств",
20266 "zh-chs": "刪除該設備組的用戶組權限",
20267 "xloc": [
20245 - "default.handlebars->27->1432"
20268 + "default.handlebars->27->1443"
20269 ]
20270 },
20271 {
@@ -20260,9 +20283,9 @@
20283 "zh-chs": "刪除此設備組的用戶權限",
20284 "xloc": [
20285 "default.handlebars->27->1137",
20263 - "default.handlebars->27->1426",
20264 - "default.handlebars->27->1509",
20265 - "default.handlebars->27->1515",
20286 + "default.handlebars->27->1437",
20287 + "default.handlebars->27->1520",
20288 + "default.handlebars->27->1526",
20289 "default.handlebars->27->538"
20290 ]
20291 },
@@ -20324,8 +20347,8 @@
20347 "zh-chs": "要求:{0}。",
20348 "xloc": [
20349 "default-mobile.handlebars->9->51",
20327 - "default.handlebars->27->1388",
20328 - "default.handlebars->27->1500"
20350 + "default.handlebars->27->1399",
20351 + "default.handlebars->27->1511"
20352 ]
20353 },
20354 {
@@ -20553,7 +20576,7 @@
20576 "ru": "Ограничения",
20577 "zh-chs": "限制條件",
20578 "xloc": [
20556 - "default.handlebars->27->1456"
20579 + "default.handlebars->27->1467"
20580 ]
20581 },
20582 {
@@ -21099,7 +21122,7 @@
21122 "zh-chs": "安全",
21123 "xloc": [
21124 "default-mobile.handlebars->9->218",
21102 - "default.handlebars->27->1480",
21125 + "default.handlebars->27->1491",
21126 "default.handlebars->27->228",
21127 "default.handlebars->27->596",
21128 "default.handlebars->27->771"
@@ -21119,7 +21142,7 @@
21142 "ru": "Ключ безопасности",
21143 "zh-chs": "安全密鑰",
21144 "xloc": [
21122 - "default.handlebars->27->1478"
21145 + "default.handlebars->27->1489"
21146 ]
21147 },
21148 {
@@ -21153,11 +21176,13 @@
21176 "zh-chs": "全選",
21177 "xloc": [
21178 "default.handlebars->27->1303",
21179 + "default.handlebars->27->1359",
21180 "default.handlebars->27->372",
21181 "default.handlebars->27->701",
21182 "default.handlebars->27->703",
21183 "default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->devListToolbar",
21184 "default.handlebars->container->column_l->p13->p13toolbar->1->2->1->3",
21185 + "default.handlebars->container->column_l->p4->3->1->0->3->3",
21186 "default.handlebars->container->column_l->p5->p5toolbar->1->0->p5filehead->3",
21187 "default.handlebars->meshContextMenu->cxselectall"
21188 ]
@@ -21177,6 +21202,7 @@
21202 "zh-chs": "選擇無",
21203 "xloc": [
21204 "default.handlebars->27->1302",
21205 + "default.handlebars->27->1358",
21206 "default.handlebars->27->371",
21207 "default.handlebars->27->702",
21208 "default.handlebars->meshContextMenu->cxselectnone"
@@ -21250,6 +21276,12 @@
21276 "default.handlebars->27->375"
21277 ]
21278 },
21279 + {
21280 + "en": "Select an operation to perform on all selected users.",
21281 + "xloc": [
21282 + "default.handlebars->27->1360"
21283 + ]
21284 + },
21285 {
21286 "cs": "Vyberte operaci na tomto zařízení.",
21287 "de": "Wählen Sie eine Operation für die Durchführung auf diesem Gerät.",
@@ -21372,7 +21404,7 @@
21404 "ru": "Отправить уведомление всем пользователям этой группы.",
21405 "zh-chs": "向該組中的所有用戶發送通知。",
21406 "xloc": [
21375 - "default.handlebars->27->1423"
21407 + "default.handlebars->27->1434"
21408 ]
21409 },
21410 {
@@ -21389,7 +21421,7 @@
21421 "ru": "Отправить текстовое уведомление этому пользователю.",
21422 "zh-chs": "向該用戶發送文本通知。",
21423 "xloc": [
21392 - "default.handlebars->27->1359"
21424 + "default.handlebars->27->1370"
21425 ]
21426 },
21427 {
@@ -21436,7 +21468,7 @@
21468 "ru": "Отправить приглашение по email.",
21469 "zh-chs": "發送邀請電子郵件。",
21470 "xloc": [
21439 - "default.handlebars->27->1387"
21471 + "default.handlebars->27->1398"
21472 ]
21473 },
21474 {
@@ -21487,7 +21519,7 @@
21519 "ru": "Отправить уведомление пользователю",
21520 "zh-chs": "發送用戶通知",
21521 "xloc": [
21490 - "default.handlebars->27->1485"
21522 + "default.handlebars->27->1496"
21523 ]
21524 },
21525 {
@@ -21537,7 +21569,7 @@
21569 "ru": "Резервное копирование сервера",
21570 "zh-chs": "服務器備份",
21571 "xloc": [
21540 - "default.handlebars->27->1397"
21572 + "default.handlebars->27->1408"
21573 ]
21574 },
21575 {
@@ -21554,7 +21586,7 @@
21586 "ru": "Сертификат сервера",
21587 "zh-chs": "服務器證書",
21588 "xloc": [
21557 - "default.handlebars->27->1593"
21589 + "default.handlebars->27->1604"
21590 ]
21591 },
21592 {
@@ -21570,7 +21602,7 @@
21602 "ru": "База данных сервера",
21603 "zh-chs": "服務器數據庫",
21604 "xloc": [
21573 - "default.handlebars->27->1594"
21605 + "default.handlebars->27->1605"
21606 ]
21607 },
21608 {
@@ -21591,7 +21623,7 @@
21623 "default-mobile.handlebars->9->320",
21624 "default.handlebars->27->1210",
21625 "default.handlebars->27->1232",
21594 - "default.handlebars->27->1394",
21626 + "default.handlebars->27->1405",
21627 "default.handlebars->27->550",
21628 "default.handlebars->27->569"
21629 ]
@@ -21611,7 +21643,7 @@
21643 "zh-chs": "服務器權限",
21644 "xloc": [
21645 "default.handlebars->27->1347",
21614 - "default.handlebars->27->1405"
21646 + "default.handlebars->27->1416"
21647 ]
21648 },
21649 {
@@ -21628,7 +21660,7 @@
21660 "ru": "Квота сервера",
21661 "zh-chs": "服務器配額",
21662 "xloc": [
21631 - "default.handlebars->27->1464"
21663 + "default.handlebars->27->1475"
21664 ]
21665 },
21666 {
@@ -21645,7 +21677,7 @@
21677 "ru": "Восстановление сервера",
21678 "zh-chs": "服務器還原",
21679 "xloc": [
21648 - "default.handlebars->27->1398"
21680 + "default.handlebars->27->1409"
21681 ]
21682 },
21683 {
@@ -21662,7 +21694,7 @@
21694 "ru": "Права",
21695 "zh-chs": "服務器權限",
21696 "xloc": [
21665 - "default.handlebars->27->1463"
21697 + "default.handlebars->27->1474"
21698 ]
21699 },
21700 {
@@ -21679,7 +21711,7 @@
21711 "ru": "Состояние сервера",
21712 "zh-chs": "服務器狀態",
21713 "xloc": [
21682 - "default.handlebars->27->1544"
21714 + "default.handlebars->27->1555"
21715 ]
21716 },
21717 {
@@ -21713,7 +21745,7 @@
21745 "ru": "Трассировка сервера",
21746 "zh-chs": "服務器跟踪",
21747 "xloc": [
21716 - "default.handlebars->27->1604"
21748 + "default.handlebars->27->1615"
21749 ]
21750 },
21751 {
@@ -21730,7 +21762,7 @@
21762 "ru": "Обновление сервера",
21763 "zh-chs": "服務器更新",
21764 "xloc": [
21733 - "default.handlebars->27->1399"
21765 + "default.handlebars->27->1410"
21766 ]
21767 },
21768 {
@@ -21852,7 +21884,7 @@
21884 "ru": "ServerStats.csv",
21885 "zh-chs": "ServerStats.csv",
21886 "xloc": [
21855 - "default.handlebars->27->1585"
21887 + "default.handlebars->27->1596"
21888 ]
21889 },
21890 {
@@ -23164,7 +23196,7 @@
23196 "ru": "Статус",
23197 "zh-chs": "狀態",
23198 "xloc": [
23167 - "default.handlebars->27->1493",
23199 + "default.handlebars->27->1504",
23200 "default.handlebars->container->column_l->p42->p42tbl->1->0->7"
23201 ]
23202 },
@@ -23874,7 +23906,7 @@
23906 "ru": "На данный момент уведомлений нет",
23907 "zh-chs": "目前沒有任何通知",
23908 "xloc": [
23877 - "default.handlebars->27->1537"
23909 + "default.handlebars->27->1548"
23910 ]
23911 },
23912 {
@@ -25072,7 +25104,7 @@
25104 "default-mobile.handlebars->9->175",
25105 "default-mobile.handlebars->9->176",
25106 "default.handlebars->27->13",
25075 - "default.handlebars->27->1528",
25107 + "default.handlebars->27->1539",
25108 "default.handlebars->27->370",
25109 "default.handlebars->27->41",
25110 "default.handlebars->27->42",
@@ -25114,7 +25146,7 @@
25146 "ru": "Неизвестное действие",
25147 "zh-chs": "未知動作",
25148 "xloc": [
25117 - "default.handlebars->27->1550"
25149 + "default.handlebars->27->1561"
25150 ]
25151 },
25152 {
@@ -25130,7 +25162,7 @@
25162 "ru": "Неизвестное устройство",
25163 "zh-chs": "未知設備",
25164 "xloc": [
25133 - "default.handlebars->27->1508"
25165 + "default.handlebars->27->1519"
25166 ]
25167 },
25168 {
@@ -25147,9 +25179,9 @@
25179 "ru": "Неизвестная группа устройств",
25180 "zh-chs": "未知設備組",
25181 "xloc": [
25150 - "default.handlebars->27->1431",
25151 - "default.handlebars->27->1514",
25152 - "default.handlebars->27->1554"
25182 + "default.handlebars->27->1442",
25183 + "default.handlebars->27->1525",
25184 + "default.handlebars->27->1565"
25185 ]
25186 },
25187 {
@@ -25166,7 +25198,7 @@
25198 "ru": "Неизвестная группа",
25199 "zh-chs": "未知群組",
25200 "xloc": [
25169 - "default.handlebars->27->1546"
25201 + "default.handlebars->27->1557"
25202 ]
25203 },
25204 {
@@ -25201,7 +25233,7 @@
25233 "ru": "Неизвестная группа пользователей",
25234 "zh-chs": "未知用戶組",
25235 "xloc": [
25204 - "default.handlebars->27->1520"
25236 + "default.handlebars->27->1531"
25237 ]
25238 },
25239 {
@@ -25241,6 +25273,12 @@
25273 "default.handlebars->27->298"
25274 ]
25275 },
25276 + {
25277 + "en": "Unlock account",
25278 + "xloc": [
25279 + "default.handlebars->27->1363"
25280 + ]
25281 + },
25282 {
25283 "cs": "Nahoru",
25284 "de": "Hoch",
@@ -25276,7 +25314,7 @@
25314 "ru": "Актуально",
25315 "zh-chs": "最新",
25316 "xloc": [
25279 - "default.handlebars->27->1611"
25317 + "default.handlebars->27->1622"
25318 ]
25319 },
25320 {
@@ -25523,8 +25561,8 @@
25561 "ru": "Использовано",
25562 "zh-chs": "用過的",
25563 "xloc": [
25526 - "default.handlebars->27->1540",
25527 - "default.handlebars->27->1542"
25564 + "default.handlebars->27->1551",
25565 + "default.handlebars->27->1553"
25566 ]
25567 },
25568 {
@@ -25544,7 +25582,7 @@
25582 "default-mobile.handlebars->9->332",
25583 "default.handlebars->27->1138",
25584 "default.handlebars->27->1348",
25547 - "default.handlebars->27->1427",
25585 + "default.handlebars->27->1438",
25586 "default.handlebars->27->184",
25587 "default.handlebars->27->539"
25588 ]
@@ -25580,10 +25618,10 @@
25618 "ru": "Импорт учетной записи пользователя",
25619 "zh-chs": "用戶帳戶導入",
25620 "xloc": [
25583 - "default.handlebars->27->1361",
25584 - "default.handlebars->27->1362",
25585 - "default.handlebars->27->1364",
25586 - "default.handlebars->27->1366"
25621 + "default.handlebars->27->1372",
25622 + "default.handlebars->27->1373",
25623 + "default.handlebars->27->1375",
25624 + "default.handlebars->27->1377"
25625 ]
25626 },
25627 {
@@ -25600,7 +25638,7 @@
25638 "ru": "Учетные записи пользователей",
25639 "zh-chs": "用戶帳號",
25640 "xloc": [
25603 - "default.handlebars->27->1559"
25641 + "default.handlebars->27->1570"
25642 ]
25643 },
25644 {
@@ -25654,9 +25692,9 @@
25692 "zh-chs": "用戶組",
25693 "xloc": [
25694 "default.handlebars->27->1192",
25657 - "default.handlebars->27->1410",
25658 - "default.handlebars->27->1522",
25659 - "default.handlebars->27->1531"
25695 + "default.handlebars->27->1421",
25696 + "default.handlebars->27->1533",
25697 + "default.handlebars->27->1542"
25698 ]
25699 },
25700 {
@@ -25690,7 +25728,7 @@
25728 "ru": "Членство в группах пользователей",
25729 "zh-chs": "用戶組成員資格",
25730 "xloc": [
25693 - "default.handlebars->27->1519"
25731 + "default.handlebars->27->1530"
25732 ]
25733 },
25734 {
@@ -25708,7 +25746,7 @@
25746 "zh-chs": "用戶標識",
25747 "xloc": [
25748 "default.handlebars->27->1246",
25711 - "default.handlebars->27->1460"
25749 + "default.handlebars->27->1471"
25750 ]
25751 },
25752 {
@@ -25725,7 +25763,7 @@
25763 "ru": "Экспортировать список пользователей",
25764 "zh-chs": "用戶列表導出",
25765 "xloc": [
25728 - "default.handlebars->27->1373"
25766 + "default.handlebars->27->1384"
25767 ]
25768 },
25769 {
@@ -25760,7 +25798,7 @@
25798 "zh-chs": "用戶名",
25799 "xloc": [
25800 "default.handlebars->27->1190",
25763 - "default.handlebars->27->1448"
25801 + "default.handlebars->27->1459"
25802 ]
25803 },
25804 {
@@ -25805,7 +25843,7 @@
25843 "ru": "Сессии пользователя",
25844 "zh-chs": "用戶會話",
25845 "xloc": [
25808 - "default.handlebars->27->1576"
25846 + "default.handlebars->27->1587"
25847 ]
25848 },
25849 {
@@ -25926,7 +25964,7 @@
25964 "zh-chs": "用戶名",
25965 "xloc": [
25966 "default-mobile.handlebars->9->216",
25929 - "default.handlebars->27->1379",
25967 + "default.handlebars->27->1390",
25968 "default.handlebars->27->225",
25969 "default.handlebars->27->255",
25970 "default.handlebars->27->594",
@@ -25986,9 +26024,9 @@
26024 "ru": "Пользователи",
26025 "zh-chs": "用戶數",
26026 "xloc": [
25989 - "default.handlebars->27->1409",
26027 "default.handlebars->27->1420",
25991 - "default.handlebars->27->1575",
26028 + "default.handlebars->27->1431",
26029 + "default.handlebars->27->1586",
26030 "default.handlebars->container->topbar->1->1->UsersSubMenuSpan->UsersSubMenu->1->0->UsersGeneral"
26031 ]
26032 },
@@ -26006,7 +26044,7 @@
26044 "ru": "Сессии пользователей",
26045 "zh-chs": "用戶會話",
26046 "xloc": [
26009 - "default.handlebars->27->1563"
26047 + "default.handlebars->27->1574"
26048 ]
26049 },
26050 {
@@ -26073,7 +26111,7 @@
26111 "ru": "Проверенный",
26112 "zh-chs": "已驗證",
26113 "xloc": [
26076 - "default.handlebars->27->1495"
26114 + "default.handlebars->27->1506"
26115 ]
26116 },
26117 {
@@ -26142,7 +26180,7 @@
26180 "ru": "Версия несовместима, пожалуйста, сначала обновите установку MeshCentral",
26181 "zh-chs": "版本不兼容,请先升级您的MeshCentral安装",
26182 "xloc": [
26145 - "default.handlebars->27->1607"
26183 + "default.handlebars->27->1618"
26184 ]
26185 },
26186 {
@@ -26207,8 +26245,8 @@
26245 "ru": "Просмотр журнала изменений",
26246 "zh-chs": "查看变更日志",
26247 "xloc": [
26210 - "default.handlebars->27->1610",
26211 - "default.handlebars->27->1612"
26248 + "default.handlebars->27->1621",
26249 + "default.handlebars->27->1623"
26250 ]
26251 },
26252 {
@@ -26259,7 +26297,7 @@
26297 "ru": "Посмотреть примечания об этом пользователе",
26298 "zh-chs": "查看有關此用戶的註釋",
26299 "xloc": [
26262 - "default.handlebars->27->1483"
26300 + "default.handlebars->27->1494"
26301 ]
26302 },
26303 {
@@ -26448,8 +26486,8 @@
26486 "ru": "Веб-сервер",
26487 "zh-chs": "網絡服務器",
26488 "xloc": [
26451 - "default.handlebars->27->1596",
26452 - "default.handlebars->27->1597"
26489 + "default.handlebars->27->1607",
26490 + "default.handlebars->27->1608"
26491 ]
26492 },
26493 {
@@ -26466,7 +26504,7 @@
26504 "ru": "Запросы веб-сервера",
26505 "zh-chs": "Web服務器請求",
26506 "xloc": [
26469 - "default.handlebars->27->1598"
26507 + "default.handlebars->27->1609"
26508 ]
26509 },
26510 {
@@ -26483,7 +26521,7 @@
26521 "ru": "Ретранслятор Web Socket",
26522 "zh-chs": "Web套接字中繼",
26523 "xloc": [
26486 - "default.handlebars->27->1599"
26524 + "default.handlebars->27->1610"
26525 ]
26526 },
26527 {
@@ -26585,7 +26623,7 @@
26623 "ru": "Будет изменено при следующем входе в систему.",
26624 "zh-chs": "下次登錄時將更改。",
26625 "xloc": [
26588 - "default.handlebars->27->1468"
26626 + "default.handlebars->27->1479"
26627 ]
26628 },
26629 {
@@ -27519,7 +27557,7 @@
27557 "ru": "\\\\'",
27558 "zh-chs": "\\\\'",
27559 "xloc": [
27522 - "default.handlebars->27->1608"
27560 + "default.handlebars->27->1619"
27561 ]
27562 },
27563 {
@@ -27787,7 +27825,7 @@
27825 "ru": "свободно",
27826 "zh-chs": "自由",
27827 "xloc": [
27790 - "default.handlebars->27->1571"
27828 + "default.handlebars->27->1582"
27829 ]
27830 },
27831 {
@@ -27968,7 +28006,7 @@
28006 "ru": "id, name, email, creation, lastlogin, groups, authfactors",
28007 "zh-chs": "id,名稱,電子郵件,創建,lastlogin,組,authfactors",
28008 "xloc": [
27971 - "default.handlebars->27->1374"
28009 + "default.handlebars->27->1385"
28010 ]
28011 },
28012 {
@@ -28054,7 +28092,7 @@
28092 "ru": "k max, пусто по умолчанию",
28093 "zh-chs": "k max,默认为空白",
28094 "xloc": [
28057 - "default.handlebars->27->1395"
28095 + "default.handlebars->27->1406"
28096 ]
28097 },
28098 {
@@ -28138,7 +28176,7 @@
28176 "ru": "servertrace.csv",
28177 "zh-chs": "servertrace.csv",
28178 "xloc": [
28141 - "default.handlebars->27->1606"
28179 + "default.handlebars->27->1617"
28180 ]
28181 },
28182 {
@@ -28190,7 +28228,7 @@
28228 "ru": "time, conn.agent, conn.users, conn.usersessions, conn.relaysession, conn.intelamt, mem.external, mem.heapused, mem.heaptotal, mem.rss",
28229 "zh-chs": "時間,conn.agent,conn.users,conn.usersessions,conn.relaysession,conn.intelamt,mem.external,mem.heapused,mem.heaptotal,mem.rss",
28230 "xloc": [
28193 - "default.handlebars->27->1584"
28231 + "default.handlebars->27->1595"
28232 ]
28233 },
28234 {
@@ -28207,7 +28245,7 @@
28245 "ru": "time, source, message",
28246 "zh-chs": "時間,來源,訊息",
28247 "xloc": [
28210 - "default.handlebars->27->1605"
28248 + "default.handlebars->27->1616"
28249 ]
28250 },
28251 {
@@ -28238,7 +28276,7 @@
28276 "ru": "всего",
28277 "zh-chs": "總",
28278 "xloc": [
28241 - "default.handlebars->27->1572"
28279 + "default.handlebars->27->1583"
28280 ]
28281 },
28282 {
@@ -28304,8 +28342,8 @@
28342 "ru": "userlist.csv",
28343 "zh-chs": "userlist.csv",
28344 "xloc": [
28307 - "default.handlebars->27->1370",
28308 - "default.handlebars->27->1375"
28345 + "default.handlebars->27->1381",
28346 + "default.handlebars->27->1386"
28347 ]
28348 },
28349 {
@@ -28322,8 +28360,8 @@
28360 "ru": "userlist.json",
28361 "zh-chs": "userlist.json",
28362 "xloc": [
28325 - "default.handlebars->27->1372",
28326 - "default.handlebars->27->1376"
28363 + "default.handlebars->27->1383",
28364 + "default.handlebars->27->1387"
28365 ]
28366 },
28367 {
@@ -28440,7 +28478,7 @@
28478 "ru": "{0} активных сессий",
28479 "zh-chs": "{0}個活動會話",
28480 "xloc": [
28443 - "default.handlebars->27->1491"
28481 + "default.handlebars->27->1502"
28482 ]
28483 },
28484 {
@@ -28526,7 +28564,7 @@
28564 "ru": "{0} групп",
28565 "zh-chs": "{0}個群組",
28566 "xloc": [
28529 - "default.handlebars->27->1473"
28567 + "default.handlebars->27->1484"
28568 ]
28569 },
28570 {
views/default.handlebars
+76 -2
@@ -362,7 +362,9 @@
362 <a href=# onclick=p4batchAccountCreate()><img id=p4UserBatchCreate style="cursor:pointer;display:none" title="Batch create many user accounts" src="images/link6.png" /></a>
363 </div>
364 <div>
365 - <input id=UserNewAccountButton type=button style=margin-left:6px onclick=showCreateNewAccountDialog() value="New Account..." />
365 + <input type=button id=UsersSelectAllButton onclick="p3usersSelectallButtonFunction()" value="Select All" />
366 + <input type=button id=UsersGroupActionButton disabled="disabled" value="Group Action" onclick=p3usersGroupActionFunction() />
367 + <input id=UserNewAccountButton type=button onclick=showCreateNewAccountDialog() value="New Account..." />
368 <input id=UserSearchInput type=text style=width:120px;margin-left:6px placeholder=Filter onchange=onUserSearchInputChanged() onkeyup=onUserSearchInputChanged() autocomplete=off onfocus=onUserSearchFocus(1) onblur=onUserSearchFocus(0) />
369 </div>
370 </td>
@@ -9491,6 +9493,10 @@
9493 var x = '<table class=p3usersTable cellpadding=0 cellspacing=0>', addHeader = true;
9494 x += '<th>' + "Name" + '<th style=width:80px>' + "Groups" + '<th style=width:120px>' + nobreak("Last Access") + '<th style=width:120px>' + "Permissions";
9495
9496 + // Save the list of currently checked users
9497 + var checkedUserids = [], elements = document.getElementsByClassName('UserCheckbox');
9498 + for (var i=0;i<elements.length;i++) { if (elements[i].checked) { checkedUserids.push(elements[i].value); } }
9499 +
9500 // Online users
9501 for (var i in sortedUserIds) {
9502 var user = users[sortedUserIds[i]], sessions = null;
@@ -9532,6 +9538,12 @@
9538 if (maxUsers == 100) { x += '<br />' + "No users found." + '<br />'; }
9539 QH('p3users', x);
9540
9541 + // Re-check userid's
9542 + elements = document.getElementsByClassName('UserCheckbox');
9543 + var eself = encodeURIComponent(userinfo._id);
9544 + for (var i=0;i<elements.length;i++) { elements[i].checked = ((checkedUserids.indexOf(elements[i].value) >= 0) && (elements[i].value != eself)); }
9545 + p3updateInfo();
9546 +
9547 // Update current user panel if needed
9548 if ((currentUser != null) && (xxcurrentView == 30)) { gotoUser(encodeURIComponent(currentUser._id),true); }
9549 }
@@ -9589,13 +9601,75 @@
9601
9602 x += '<tr tabindex=0 onmouseover=userMouseHover(this,1) onmouseout=userMouseHover(this,0) onkeypress="if (event.key==\'Enter\') gotoUser(\'' + encodeURIComponent(user._id) + '\')"><td>';
9603 x += '<div class=bar>';
9592 - x += '<div class=baricon><input type=checkbox></div><div style=cursor:pointer onclick=gotoUser(\"' + encodeURIComponent(user._id) + '\")>';
9604 + x += '<div class=baricon><input class=UserCheckbox value=' + encodeURIComponent(user._id) + ' onclick=p3updateInfo() type=checkbox' + ((user._id == userinfo._id)?' disabled':'') + '></div><div style=cursor:pointer onclick=gotoUser(\"' + encodeURIComponent(user._id) + '\")>';
9605 x += '<div class=baricon><div class="' + icon + gray + '"></div></div>';
9606 x += '<div class=g1></div><div class=g2></div><div>';
9607 x += '<div><span>' + username + '</span>' + msg + '</div></div><td style=text-align:center>' + groups + '<td style=text-align:center>' + lastAccess + '<td style=text-align:center>' + permissions;
9608 return x;
9609 }
9610
9611 + // Called when a user checkbox is clicked
9612 + function p3updateInfo() {
9613 + var elements = document.getElementsByClassName('UserCheckbox'), checkcount = 0;
9614 + for (var i=0;i<elements.length;i++) { if (elements[i].checked === true) checkcount++; }
9615 + QE('UsersGroupActionButton', checkcount > 0);
9616 + Q('UsersSelectAllButton').value = (checkcount > 0)?"Select None":"Select All";
9617 + }
9618 +
9619 + // Called to select all or unselect all users
9620 + function p3usersSelectallButtonFunction() {
9621 + var eself = encodeURIComponent(userinfo._id);
9622 + var elements = document.getElementsByClassName('UserCheckbox'), checkcount = 0;
9623 + for (var i=0;i<elements.length;i++) { if (elements[i].checked === true) checkcount++; }
9624 + for (var i=0;i<elements.length;i++) { elements[i].checked = (checkcount == 0) && (elements[i].value != eself); }
9625 + p3updateInfo();
9626 + }
9627 +
9628 + // Called to perform a group action on many users
9629 + function p3usersGroupActionFunction() {
9630 + var elements = document.getElementsByClassName('UserCheckbox'), checkcount = 0;
9631 + for (var i=0;i<elements.length;i++) { if (elements[i].checked === true) checkcount++; }
9632 + if (checkcount == 0) return;
9633 +
9634 + var x = "Select an operation to perform on all selected users." + '<br /><br />';
9635 + x += addHtmlValue("Operation", '<select style=width:240px id=d3groupop><option value=1>' + "Lock account" + '</option><option value=2>' + "Unlock account" + '</option><option value=3>' + "Delete account" + '</option></select>');
9636 + setDialogMode(2, "Group Action", 3, p3usersGroupActionFunctionEx, x);
9637 + }
9638 +
9639 + function p3usersGroupActionFunctionEx() {
9640 + var elements = document.getElementsByClassName('UserCheckbox'), userids = [];
9641 + for (var i=0;i<elements.length;i++) { if (elements[i].checked === true) { userids.push(decodeURIComponent(elements[i].value)); } }
9642 + var op = Q('d3groupop').value;
9643 + if (op == 1) {
9644 + // Lock accounts
9645 + for (var i in userids) {
9646 + var user = users[userids[i]], siteadmin = (user.siteadmin == null)?0:user.siteadmin;
9647 + if ((siteadmin & 32) == 0) { siteadmin += 32; meshserver.send({ action: 'edituser', id: user._id, siteadmin: siteadmin }); }
9648 + }
9649 + } else if (op == 2) {
9650 + // Unlock accounts
9651 + for (var i in userids) {
9652 + var user = users[userids[i]], siteadmin = (user.siteadmin == null)?0:user.siteadmin;
9653 + if ((siteadmin & 32) != 0) { siteadmin -= 32; meshserver.send({ action: 'edituser', id: user._id, siteadmin: siteadmin }); }
9654 + }
9655 + } else if (op == 3) {
9656 + // Delete accounts, ask for confirmation
9657 + var x = "Confirm delete selected account(s)?" + '<br /><br />';
9658 + x += '<label><input id=d3check type=checkbox onchange=p3usersGroupActionFunctionDelEx() />' + "Confirm" + '</label>';
9659 + setDialogMode(2, "Delete Accounts", 3, groupActionFunctionDelEx, x);
9660 + QE('idx_dlgOkButton', false);
9661 + }
9662 + }
9663 +
9664 + function p3usersGroupActionFunctionDelEx() { QE('idx_dlgOkButton', Q('d3check').checked); }
9665 +
9666 + // Delete a batch of user accounts
9667 + function groupActionFunctionDelEx(b) {
9668 + var elements = document.getElementsByClassName('UserCheckbox'), userids = [];
9669 + for (var i=0;i<elements.length;i++) { if (elements[i].checked === true) { userids.push(decodeURIComponent(elements[i].value)); } }
9670 + for (var i in userids) { var user = users[userids[i]]; meshserver.send({ action: 'deleteuser', userid: user._id, username: user.name }); }
9671 + }
9672 +
9673 // Highlights the user being hovered
9674 function userMouseHover(element, over) {
9675 var e = element.children[0].children[0].children[1];