First MeshCentral with multi-language emails.

Ylian Saint-Hilaire committed Apr 4, 2020 at 19:29 UTC 3ee9a4352a97802edba438b2093152e7d4494633
141 files changed +2071 -1806
MeshCentralServer.njsproj
+177
@@ -182,6 +182,181 @@
182 <Content Include="public\clickonce\minirouter\publish.htm" />
183 <Content Include="public\commander.htm" />
184 <Content Include="public\compress.wcc" />
185 + <Content Include="public\email\account-check.html" />
186 + <Content Include="public\email\account-check.txt" />
187 + <Content Include="public\email\account-invite.html" />
188 + <Content Include="public\email\account-invite.txt" />
189 + <Content Include="public\email\account-login.html" />
190 + <Content Include="public\email\account-login.txt" />
191 + <Content Include="public\email\account-reset.html" />
192 + <Content Include="public\email\account-reset.txt" />
193 + <Content Include="public\email\mesh-invite.html" />
194 + <Content Include="public\email\mesh-invite.txt" />
195 + <Content Include="public\email\translations\account-check-min_cs.html" />
196 + <Content Include="public\email\translations\account-check-min_de.html" />
197 + <Content Include="public\email\translations\account-check-min_es.html" />
198 + <Content Include="public\email\translations\account-check-min_fr.html" />
199 + <Content Include="public\email\translations\account-check-min_hi.html" />
200 + <Content Include="public\email\translations\account-check-min_ja.html" />
201 + <Content Include="public\email\translations\account-check-min_ko.html" />
202 + <Content Include="public\email\translations\account-check-min_nl.html" />
203 + <Content Include="public\email\translations\account-check-min_pt.html" />
204 + <Content Include="public\email\translations\account-check-min_ru.html" />
205 + <Content Include="public\email\translations\account-check-min_zh-chs.html" />
206 + <Content Include="public\email\translations\account-check_cs.html" />
207 + <Content Include="public\email\translations\account-check_cs.txt" />
208 + <Content Include="public\email\translations\account-check_de.html" />
209 + <Content Include="public\email\translations\account-check_de.txt" />
210 + <Content Include="public\email\translations\account-check_es.html" />
211 + <Content Include="public\email\translations\account-check_es.txt" />
212 + <Content Include="public\email\translations\account-check_fr.html" />
213 + <Content Include="public\email\translations\account-check_fr.txt" />
214 + <Content Include="public\email\translations\account-check_hi.html" />
215 + <Content Include="public\email\translations\account-check_hi.txt" />
216 + <Content Include="public\email\translations\account-check_ja.html" />
217 + <Content Include="public\email\translations\account-check_ja.txt" />
218 + <Content Include="public\email\translations\account-check_ko.html" />
219 + <Content Include="public\email\translations\account-check_ko.txt" />
220 + <Content Include="public\email\translations\account-check_nl.html" />
221 + <Content Include="public\email\translations\account-check_nl.txt" />
222 + <Content Include="public\email\translations\account-check_pt.html" />
223 + <Content Include="public\email\translations\account-check_pt.txt" />
224 + <Content Include="public\email\translations\account-check_ru.html" />
225 + <Content Include="public\email\translations\account-check_ru.txt" />
226 + <Content Include="public\email\translations\account-check_zh-chs.html" />
227 + <Content Include="public\email\translations\account-check_zh-chs.txt" />
228 + <Content Include="public\email\translations\account-invite-min_cs.html" />
229 + <Content Include="public\email\translations\account-invite-min_de.html" />
230 + <Content Include="public\email\translations\account-invite-min_es.html" />
231 + <Content Include="public\email\translations\account-invite-min_fr.html" />
232 + <Content Include="public\email\translations\account-invite-min_hi.html" />
233 + <Content Include="public\email\translations\account-invite-min_ja.html" />
234 + <Content Include="public\email\translations\account-invite-min_ko.html" />
235 + <Content Include="public\email\translations\account-invite-min_nl.html" />
236 + <Content Include="public\email\translations\account-invite-min_pt.html" />
237 + <Content Include="public\email\translations\account-invite-min_ru.html" />
238 + <Content Include="public\email\translations\account-invite-min_zh-chs.html" />
239 + <Content Include="public\email\translations\account-invite_cs.html" />
240 + <Content Include="public\email\translations\account-invite_cs.txt" />
241 + <Content Include="public\email\translations\account-invite_de.html" />
242 + <Content Include="public\email\translations\account-invite_de.txt" />
243 + <Content Include="public\email\translations\account-invite_es.html" />
244 + <Content Include="public\email\translations\account-invite_es.txt" />
245 + <Content Include="public\email\translations\account-invite_fr.html" />
246 + <Content Include="public\email\translations\account-invite_fr.txt" />
247 + <Content Include="public\email\translations\account-invite_hi.html" />
248 + <Content Include="public\email\translations\account-invite_hi.txt" />
249 + <Content Include="public\email\translations\account-invite_ja.html" />
250 + <Content Include="public\email\translations\account-invite_ja.txt" />
251 + <Content Include="public\email\translations\account-invite_ko.html" />
252 + <Content Include="public\email\translations\account-invite_ko.txt" />
253 + <Content Include="public\email\translations\account-invite_nl.html" />
254 + <Content Include="public\email\translations\account-invite_nl.txt" />
255 + <Content Include="public\email\translations\account-invite_pt.html" />
256 + <Content Include="public\email\translations\account-invite_pt.txt" />
257 + <Content Include="public\email\translations\account-invite_ru.html" />
258 + <Content Include="public\email\translations\account-invite_ru.txt" />
259 + <Content Include="public\email\translations\account-invite_zh-chs.html" />
260 + <Content Include="public\email\translations\account-invite_zh-chs.txt" />
261 + <Content Include="public\email\translations\account-login-min_cs.html" />
262 + <Content Include="public\email\translations\account-login-min_de.html" />
263 + <Content Include="public\email\translations\account-login-min_es.html" />
264 + <Content Include="public\email\translations\account-login-min_fr.html" />
265 + <Content Include="public\email\translations\account-login-min_hi.html" />
266 + <Content Include="public\email\translations\account-login-min_ja.html" />
267 + <Content Include="public\email\translations\account-login-min_ko.html" />
268 + <Content Include="public\email\translations\account-login-min_nl.html" />
269 + <Content Include="public\email\translations\account-login-min_pt.html" />
270 + <Content Include="public\email\translations\account-login-min_ru.html" />
271 + <Content Include="public\email\translations\account-login-min_zh-chs.html" />
272 + <Content Include="public\email\translations\account-login_cs.html" />
273 + <Content Include="public\email\translations\account-login_cs.txt" />
274 + <Content Include="public\email\translations\account-login_de.html" />
275 + <Content Include="public\email\translations\account-login_de.txt" />
276 + <Content Include="public\email\translations\account-login_es.html" />
277 + <Content Include="public\email\translations\account-login_es.txt" />
278 + <Content Include="public\email\translations\account-login_fr.html" />
279 + <Content Include="public\email\translations\account-login_fr.txt" />
280 + <Content Include="public\email\translations\account-login_hi.html" />
281 + <Content Include="public\email\translations\account-login_hi.txt" />
282 + <Content Include="public\email\translations\account-login_ja.html" />
283 + <Content Include="public\email\translations\account-login_ja.txt" />
284 + <Content Include="public\email\translations\account-login_ko.html" />
285 + <Content Include="public\email\translations\account-login_ko.txt" />
286 + <Content Include="public\email\translations\account-login_nl.html" />
287 + <Content Include="public\email\translations\account-login_nl.txt" />
288 + <Content Include="public\email\translations\account-login_pt.html" />
289 + <Content Include="public\email\translations\account-login_pt.txt" />
290 + <Content Include="public\email\translations\account-login_ru.html" />
291 + <Content Include="public\email\translations\account-login_ru.txt" />
292 + <Content Include="public\email\translations\account-login_zh-chs.html" />
293 + <Content Include="public\email\translations\account-login_zh-chs.txt" />
294 + <Content Include="public\email\translations\account-reset-min_cs.html" />
295 + <Content Include="public\email\translations\account-reset-min_de.html" />
296 + <Content Include="public\email\translations\account-reset-min_es.html" />
297 + <Content Include="public\email\translations\account-reset-min_fr.html" />
298 + <Content Include="public\email\translations\account-reset-min_hi.html" />
299 + <Content Include="public\email\translations\account-reset-min_ja.html" />
300 + <Content Include="public\email\translations\account-reset-min_ko.html" />
301 + <Content Include="public\email\translations\account-reset-min_nl.html" />
302 + <Content Include="public\email\translations\account-reset-min_pt.html" />
303 + <Content Include="public\email\translations\account-reset-min_ru.html" />
304 + <Content Include="public\email\translations\account-reset-min_zh-chs.html" />
305 + <Content Include="public\email\translations\account-reset_cs.html" />
306 + <Content Include="public\email\translations\account-reset_cs.txt" />
307 + <Content Include="public\email\translations\account-reset_de.html" />
308 + <Content Include="public\email\translations\account-reset_de.txt" />
309 + <Content Include="public\email\translations\account-reset_es.html" />
310 + <Content Include="public\email\translations\account-reset_es.txt" />
311 + <Content Include="public\email\translations\account-reset_fr.html" />
312 + <Content Include="public\email\translations\account-reset_fr.txt" />
313 + <Content Include="public\email\translations\account-reset_hi.html" />
314 + <Content Include="public\email\translations\account-reset_hi.txt" />
315 + <Content Include="public\email\translations\account-reset_ja.html" />
316 + <Content Include="public\email\translations\account-reset_ja.txt" />
317 + <Content Include="public\email\translations\account-reset_ko.html" />
318 + <Content Include="public\email\translations\account-reset_ko.txt" />
319 + <Content Include="public\email\translations\account-reset_nl.html" />
320 + <Content Include="public\email\translations\account-reset_nl.txt" />
321 + <Content Include="public\email\translations\account-reset_pt.html" />
322 + <Content Include="public\email\translations\account-reset_pt.txt" />
323 + <Content Include="public\email\translations\account-reset_ru.html" />
324 + <Content Include="public\email\translations\account-reset_ru.txt" />
325 + <Content Include="public\email\translations\account-reset_zh-chs.html" />
326 + <Content Include="public\email\translations\account-reset_zh-chs.txt" />
327 + <Content Include="public\email\translations\mesh-invite-min_cs.html" />
328 + <Content Include="public\email\translations\mesh-invite-min_de.html" />
329 + <Content Include="public\email\translations\mesh-invite-min_es.html" />
330 + <Content Include="public\email\translations\mesh-invite-min_fr.html" />
331 + <Content Include="public\email\translations\mesh-invite-min_hi.html" />
332 + <Content Include="public\email\translations\mesh-invite-min_ja.html" />
333 + <Content Include="public\email\translations\mesh-invite-min_ko.html" />
334 + <Content Include="public\email\translations\mesh-invite-min_nl.html" />
335 + <Content Include="public\email\translations\mesh-invite-min_pt.html" />
336 + <Content Include="public\email\translations\mesh-invite-min_ru.html" />
337 + <Content Include="public\email\translations\mesh-invite-min_zh-chs.html" />
338 + <Content Include="public\email\translations\mesh-invite_cs.html" />
339 + <Content Include="public\email\translations\mesh-invite_cs.txt" />
340 + <Content Include="public\email\translations\mesh-invite_de.html" />
341 + <Content Include="public\email\translations\mesh-invite_de.txt" />
342 + <Content Include="public\email\translations\mesh-invite_es.html" />
343 + <Content Include="public\email\translations\mesh-invite_es.txt" />
344 + <Content Include="public\email\translations\mesh-invite_fr.html" />
345 + <Content Include="public\email\translations\mesh-invite_fr.txt" />
346 + <Content Include="public\email\translations\mesh-invite_hi.html" />
347 + <Content Include="public\email\translations\mesh-invite_hi.txt" />
348 + <Content Include="public\email\translations\mesh-invite_ja.html" />
349 + <Content Include="public\email\translations\mesh-invite_ja.txt" />
350 + <Content Include="public\email\translations\mesh-invite_ko.html" />
351 + <Content Include="public\email\translations\mesh-invite_ko.txt" />
352 + <Content Include="public\email\translations\mesh-invite_nl.html" />
353 + <Content Include="public\email\translations\mesh-invite_nl.txt" />
354 + <Content Include="public\email\translations\mesh-invite_pt.html" />
355 + <Content Include="public\email\translations\mesh-invite_pt.txt" />
356 + <Content Include="public\email\translations\mesh-invite_ru.html" />
357 + <Content Include="public\email\translations\mesh-invite_ru.txt" />
358 + <Content Include="public\email\translations\mesh-invite_zh-chs.html" />
359 + <Content Include="public\email\translations\mesh-invite_zh-chs.txt" />
360 <Content Include="public\favicon.ico" />
361 <Content Include="public\images-isdu\ComputerIcon.png" />
362 <Content Include="public\images-isdu\ComputerIcon2.png" />
@@ -303,6 +478,8 @@
478 <Folder Include="public\clickonce\minirouter\" />
479 <Folder Include="public\clickonce\minirouter\Application Files\" />
480 <Folder Include="public\clickonce\minirouter\Application Files\MeshMiniRouter_1_0_0_70\" />
481 + <Folder Include="public\email\" />
482 + <Folder Include="public\email\translations\" />
483 <Folder Include="public\images-isdu" />
484 <Folder Include="public\images\" />
485 <Folder Include="public\scripts\" />
emails/account-check.html renamed
+1 -1
@@ -1,4 +1,4 @@
1 -<title>[[[SERVERNAME]]] - Email Verification</title>
1 +<div>[[[SERVERNAME]]] - Email Verification</div>
2 <div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8>
4 <tr>
emails/account-check.txt renamed
emails/account-invite.html renamed
+1 -1
@@ -1,4 +1,4 @@
1 -<title>[[[SERVERNAME]]] - Account Invitation</title>
1 +<div>[[[SERVERNAME]]] - Account Invitation</div>
2 <div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8>
4 <tr>
emails/account-invite.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Account Invitation
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +Best regards,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/account-login.html renamed
+1 -1
@@ -1,4 +1,4 @@
1 -<title>[[[SERVERNAME]]] - Account Login</title>
1 +<div>[[[SERVERNAME]]] - Account Login</div>
2 <div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8>
4 <tr>
emails/account-login.txt renamed
emails/account-reset.html renamed
+1 -1
@@ -1,4 +1,4 @@
1 -<title>[[[SERVERNAME]]] - Account Reset</title>
1 +<div>[[[SERVERNAME]]] - Account Reset</div>
2 <div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8>
4 <tr>
emails/account-reset.txt renamed
emails/mesh-invite.html renamed
+1 -1
@@ -1,4 +1,4 @@
1 -<title>[[[SERVERNAME]]] - Invitation</title>
1 +<div>[[[SERVERNAME]]] - Invitation</div>
2 <div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8>
4 <tr>
emails/mesh-invite.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Invitation
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Hello [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 User [[[USERNAME]]] on server [[[SERVERNAME]]] ([[[SERVERURL]]]/) is requesting you install software to start the remote control session.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Message: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 For Windows, nagivate to the following link to complete the process:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 For Apple OSX, nagivate to the following link to complete the process:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 For Linux, cut & paste the following in a terminal to install the agent:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 To install the software, navigate to [[[SERVERURL]]][[[LINKURL]]] and follow the instructions.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 If you did not initiate this request, please ignore this mail.
33 ~
34 Best regards,
emails/translations/account-check_cs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Ověření e-mailem</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_cs.txt renamed
emails/translations/account-check_de.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - E-Mail-Überprüfung</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_de.txt renamed
emails/translations/account-check_es.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Email Verification</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_es.txt renamed
emails/translations/account-check_fr.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Vérification E-mail</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_fr.txt renamed
+1 -1
@@ -1,4 +1,4 @@
1 -[[[SERVERNAME]]] - Vérification des e-mails
1 +[[[SERVERNAME]]] - Vérification E-mail
2 Bonjour [[[USERNAME]]], [[[SERVERNAME]]] ([[[SERVERURL]]]) effectue une vérification par e-mail. Accédez au lien suivant pour terminer le processus:
3 ~
4 ~[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]]
emails/translations/account-check_hi.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Email Verification</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_hi.txt renamed
emails/translations/account-check_ja.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-メールの確認</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_ja.txt renamed
emails/translations/account-check_ko.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Email Verification</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_ko.txt renamed
emails/translations/account-check_nl.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Email Verification</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_nl.txt renamed
emails/translations/account-check_pt.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Email Verification</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_pt.txt renamed
emails/translations/account-check_ru.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - подтверждение по электронной почте</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_ru.txt renamed
emails/translations/account-check_zh-chs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Email Verification</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-电子邮件验证</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-check_zh-chs.txt renamed
emails/translations/account-invite_cs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Pozvánka na účet</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_cs.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Pozvánka na účet
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +S pozdravem,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_de.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Kontoeinladung</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_de.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Kontoeinladung
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +Freundliche Grüße,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_es.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_es.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Account Invitation
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +Best regards,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_fr.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Invitation au compte</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_fr.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Invitation au compte
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +Meilleures salutations,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_hi.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_hi.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Account Invitation
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +Best regards,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_ja.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-アカウントの招待</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_ja.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]]-アカウントの招待
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +宜しくお願いします、
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_ko.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_ko.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Account Invitation
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +Best regards,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_nl.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account uitnodiging</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_nl.txt renamed
+1 -1
@@ -1,5 +1,5 @@
1 [[[SERVERNAME]]] - Account uitnodiging
2 -An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 ~
4 Vriendelijke groeten,
5 ~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_pt.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_pt.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - Account Invitation
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +Best regards,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_ru.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - приглашение в аккаунт</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_ru.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]] - приглашение в аккаунт
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +С уважением,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-invite_zh-chs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-帐户邀请</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-invite_zh-chs.txt new
+5
@@ -0,0 +1,5 @@
1 +[[[SERVERNAME]]]-帐户邀请
2 +An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username "[[[ACCOUNTNAME]]]" and password "[[[PASSWORD]]]".
3 +~
4 +最好的祝福,
5 +~[[[USERNAME]]]
\ No newline at end of file
emails/translations/account-login_cs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Přihlášení k účtu</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_cs.txt renamed
emails/translations/account-login_de.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Konto-Login</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_de.txt renamed
emails/translations/account-login_es.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Login</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_es.txt renamed
emails/translations/account-login_fr.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Connexion au compte</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_fr.txt renamed
emails/translations/account-login_hi.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Login</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_hi.txt renamed
emails/translations/account-login_ja.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-アカウントログイン</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_ja.txt renamed
emails/translations/account-login_ko.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Login</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_ko.txt renamed
emails/translations/account-login_nl.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Inloggen account</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_nl.txt renamed
emails/translations/account-login_pt.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Login</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_pt.txt renamed
emails/translations/account-login_ru.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Вход в аккаунт</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_ru.txt renamed
emails/translations/account-login_zh-chs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Login</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-帐户登录</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-login_zh-chs.txt renamed
emails/translations/account-reset_cs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Reset účtu</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_cs.txt renamed
emails/translations/account-reset_de.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Zurücksetzen des Kontos</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_de.txt renamed
emails/translations/account-reset_es.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Reset</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_es.txt renamed
emails/translations/account-reset_fr.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Réinitialisation du compte</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_fr.txt renamed
emails/translations/account-reset_hi.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Reset</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_hi.txt renamed
emails/translations/account-reset_ja.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-アカウントのリセット</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_ja.txt renamed
emails/translations/account-reset_ko.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Reset</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_ko.txt renamed
emails/translations/account-reset_nl.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Reset</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_nl.txt renamed
emails/translations/account-reset_pt.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Account Reset</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_pt.txt renamed
emails/translations/account-reset_ru.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Сброс учетной записи</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_ru.txt renamed
emails/translations/account-reset_zh-chs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Account Reset</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-帐户重置</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/account-reset_zh-chs.txt renamed
emails/translations/mesh-invite_cs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Pozvánka</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_cs.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Pozvánka
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Dobrý den, [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 Uživatel [[[USERNAME]]] na serveru [[[SERVERNAME]]] ([[[SERVERURL]]]/) požaduje instalaci softwaru k zahájení relace vzdáleného řízení.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Zpráva: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 V případě systému Windows dokončete proces pomocí následujícího odkazu:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 V případě systému Apple OSX dokončete proces pomocí následujícího odkazu:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 V případě systému Linux vyjměte a vložte do terminálu a nainstalujte agenta:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 Chcete-li nainstalovat software, přejděte na [[[SERVERURL]]][[[LINKURL]]] a postupujte podle pokynů.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 Pokud jste tento požadavek nezačali, ignorujte tento e-mail.
33 ~
34 S pozdravem,
emails/translations/mesh-invite_de.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Einladung</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_de.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Einladung
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Hallo [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 Benutzer [[[USERNAME]]] auf dem Server [[[SERVERNAME]]] ([[[SERVERURL]]]/) fordert Sie auf, Software zu installieren, um die Fernsteuerungssitzung zu starten.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Nachricht: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 Nagivieren Sie unter Windows den folgenden Link, um den Vorgang abzuschließen:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 Nagivieren Sie unter Apple OSX den folgenden Link, um den Vorgang abzuschließen:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 Schneiden Sie unter Linux Folgendes aus und fügen Sie es in ein Terminal ein, um den Agenten zu installieren:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 Navigieren Sie zum Installieren der Software zu [[[SERVERURL]]][[[LINKURL]]] und befolgen Sie die Anweisungen.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 Wenn Sie diese Anfrage nicht initiiert haben, ignorieren Sie diese Mail bitte.
33 ~
34 Freundliche Grüße,
emails/translations/mesh-invite_es.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_es.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Invitation
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Hello [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 User [[[USERNAME]]] on server [[[SERVERNAME]]] ([[[SERVERURL]]]/) is requesting you install software to start the remote control session.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Message: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 For Windows, nagivate to the following link to complete the process:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 For Apple OSX, nagivate to the following link to complete the process:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 For Linux, cut & paste the following in a terminal to install the agent:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 To install the software, navigate to [[[SERVERURL]]][[[LINKURL]]] and follow the instructions.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 If you did not initiate this request, please ignore this mail.
33 ~
34 Best regards,
emails/translations/mesh-invite_fr.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_fr.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Invitation
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Bonjour [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 L'utilisateur [[[USERNAME]]] sur le serveur [[[SERVERNAME]]] ([[[SERVERURL]]]/) vous demande d'installer un logiciel pour démarrer la session de contrôle à distance.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Message: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 Pour Windows, accédez au lien suivant pour terminer le processus:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 Pour Apple OSX, accédez au lien suivant pour terminer le processus:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 Pour Linux, copiez et collez les éléments suivants dans un terminal pour installer l'agent:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 Pour installer le logiciel, accédez à [[[SERVERURL]]][[[LINKURL]]] et suivez les instructions.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 Si vous n'avez pas initié cette demande, veuillez ignorer ce courrier.
33 ~
34 Meilleures salutations,
emails/translations/mesh-invite_hi.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_hi.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Invitation
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Hello [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 User [[[USERNAME]]] on server [[[SERVERNAME]]] ([[[SERVERURL]]]/) is requesting you install software to start the remote control session.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Message: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 For Windows, nagivate to the following link to complete the process:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 For Apple OSX, nagivate to the following link to complete the process:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 For Linux, cut & paste the following in a terminal to install the agent:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 To install the software, navigate to [[[SERVERURL]]][[[LINKURL]]] and follow the instructions.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 If you did not initiate this request, please ignore this mail.
33 ~
34 Best regards,
emails/translations/mesh-invite_ja.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-招待</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_ja.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]]-招待
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 [[[NAME]]]様
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 サーバー[[[SERVERNAME]]]([[[SERVERURL]]]/)のユーザー[[[USERNAME]]]が、リモートコントロールセッションを開始するためのソフトウェアのインストールを要求しています。
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 メッセージ:[[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 Windowsの場合、次のリンクに移動してプロセスを完了します。
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 Apple OSXの場合、次のリンクに移動してプロセスを完了します。
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 Linuxの場合は、ターミナルで以下をカットアンドペーストしてエージェントをインストールします。
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 ソフトウェアをインストールするには、[[[SERVERURL]]][[[LINKURL]]]に移動し、指示に従います。
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 このリクエストを開始していない場合は、このメールを無視してください。
33 ~
34 宜しくお願いします、
emails/translations/mesh-invite_ko.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_ko.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Invitation
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Hello [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 User [[[USERNAME]]] on server [[[SERVERNAME]]] ([[[SERVERURL]]]/) is requesting you install software to start the remote control session.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Message: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 For Windows, nagivate to the following link to complete the process:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 For Apple OSX, nagivate to the following link to complete the process:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 For Linux, cut & paste the following in a terminal to install the agent:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 To install the software, navigate to [[[SERVERURL]]][[[LINKURL]]] and follow the instructions.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 If you did not initiate this request, please ignore this mail.
33 ~
34 Best regards,
emails/translations/mesh-invite_nl.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_nl.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Invitation
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Hallo [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 User [[[USERNAME]]] on server [[[SERVERNAME]]] ([[[SERVERURL]]]/) is requesting you install software to start the remote control session.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Message: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 For Windows, nagivate to the following link to complete the process:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 For Apple OSX, nagivate to the following link to complete the process:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 Voor Linux, knip het volgende en plak dit in een terminal om de agent te installeren:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 To install the software, navigate to [[[SERVERURL]]][[[LINKURL]]] and follow the instructions.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 Als u dit verzoek niet heeft ingediend, dan kunt u deze e-mail negeren.
33 ~
34 Vriendelijke groeten,
emails/translations/mesh-invite_pt.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Invitation</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_pt.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Invitation
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Hello [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 User [[[USERNAME]]] on server [[[SERVERNAME]]] ([[[SERVERURL]]]/) is requesting you install software to start the remote control session.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Message: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 For Windows, nagivate to the following link to complete the process:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 For Apple OSX, nagivate to the following link to complete the process:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 For Linux, cut & paste the following in a terminal to install the agent:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 To install the software, navigate to [[[SERVERURL]]][[[LINKURL]]] and follow the instructions.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 If you did not initiate this request, please ignore this mail.
33 ~
34 Best regards,
emails/translations/mesh-invite_ru.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]] - Приглашение</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_ru.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]] - Приглашение
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 Здравствуйте, [[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 Пользователь [[[USERNAME]]] на сервере [[[SERVERNAME]]] ([[[SERVERURL]]]/) запрашивает установку программного обеспечения для запуска сеанса удаленного управления.
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 Сообщение: [[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 Для Windows откройте следующую ссылку, чтобы завершить процесс:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 Для Apple OSX перейдите по следующей ссылке, чтобы завершить процесс:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 Для Linux вырезайте и вставляйте в терминал следующее, чтобы установить агент:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 Для установки программного обеспечения перейдите к [[[SERVERURL]]][[[LINKURL]]] и следуйте инструкциям.
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 Если вы не инициировали этот запрос, игнорируйте это письмо.
33 ~
34 С уважением,
emails/translations/mesh-invite_zh-chs.html renamed
+2 -2
@@ -1,5 +1,5 @@
1 -<html><head><title>[[[SERVERNAME]]] - Invitation</title>
2 -</head><body><div style="font-family:Arial,Helvetica,sans-serif">
1 +<html><head></head><body><div>[[[SERVERNAME]]]-邀请</div>
2 +<div style="font-family:Arial,Helvetica,sans-serif">
3 <table style="background-color:#003366;color:lightgray;width:100%" cellpadding="8">
4 <tbody><tr>
5 <td>
emails/translations/mesh-invite_zh-chs.txt renamed
+13 -13
@@ -1,34 +1,34 @@
1 [[[SERVERNAME]]]-邀请
2 -~[[[AREA-NAME]]]
2 +~<area-name>
3 您好[[[NAME]]],
4 -~[[[/AREA-NAME]]]
4 +~</area-name>
5 服务器[[[SERVERNAME]]]([[[SERVERURL]]]/)上的用户[[[USERNAME]]]请求您安装软件以启动远程控制会话。
6 -~[[[AREA-MSG]]]
6 +~<area-msg>
7 ~
8 讯息:[[[MSG]]]
9 ~
10 -~[[[/AREA-MSG]]]
11 -~[[[AREA-WINDOWS]]]
10 +~</area-msg>
11 +~<area-windows>
12 对于Windows,请导航至以下链接以完成该过程:
13 ~
14 ~[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
15 ~
16 -~[[[/AREA-WINDOWS]]]
17 -~[[[AREA-OSX]]]
16 +~</area-windows>
17 +~<area-osx>
18 对于Apple OSX,请导航至以下链接以完成该过程:
19 ~
20 ~[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]
21 ~
22 -~[[[/AREA-OSX]]]
23 -~[[[AREA-LINUX]]]
22 +~</area-osx>
23 +~<area-linux>
24 对于Linux,将以下内容剪切并粘贴到终端中以安装代理程序:
25 ~
26 -~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'
26 +~wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] '[[[MESHIDHEX]]]'
27 ~
28 -~[[[/AREA-LINUX]]]
29 -~[[[AREA-LINK]]]
28 +~</area-linux>
29 +~<area-link>
30 要安装软件,请导航至[[[SERVERURL]]][[[LINKURL]]],然后按照说明进行操作。
31 -~[[[/AREA-LINK]]]
31 +~</area-link>
32 如果您没有发起此请求,请忽略此邮件。
33 ~
34 最好的祝福,
meshcentral.js
+8 -2
@@ -84,20 +84,24 @@ function CreateMeshCentralServer(config, args) {
84 obj.filespath = obj.path.join(__dirname, '../../meshcentral-files');
85 obj.backuppath = obj.path.join(__dirname, '../../meshcentral-backup');
86 obj.recordpath = obj.path.join(__dirname, '../../meshcentral-recordings');
87 - obj.webPublicPath = obj.path.join(__dirname, 'public');
87 obj.webViewsPath = obj.path.join(__dirname, 'views');
88 + obj.webPublicPath = obj.path.join(__dirname, 'public');
89 + obj.webEmailsPath = obj.path.join(__dirname, 'emails');
90 if (obj.fs.existsSync(obj.path.join(__dirname, '../../meshcentral-web/views'))) { obj.webViewsOverridePath = obj.path.join(__dirname, '../../meshcentral-web/views'); }
91 if (obj.fs.existsSync(obj.path.join(__dirname, '../../meshcentral-web/public'))) { obj.webPublicOverridePath = obj.path.join(__dirname, '../../meshcentral-web/public'); }
92 + if (obj.fs.existsSync(obj.path.join(__dirname, '../../meshcentral-web/emails'))) { obj.webEmailsOverridePath = obj.path.join(__dirname, '../../meshcentral-web/emails'); }
93 } else {
94 obj.parentpath = __dirname;
95 obj.datapath = obj.path.join(__dirname, '../meshcentral-data');
96 obj.filespath = obj.path.join(__dirname, '../meshcentral-files');
97 obj.backuppath = obj.path.join(__dirname, '../meshcentral-backups');
98 obj.recordpath = obj.path.join(__dirname, '../meshcentral-recordings');
97 - obj.webPublicPath = obj.path.join(__dirname, 'public');
99 obj.webViewsPath = obj.path.join(__dirname, 'views');
100 + obj.webPublicPath = obj.path.join(__dirname, 'public');
101 + obj.webEmailsPath = obj.path.join(__dirname, 'emails');
102 if (obj.fs.existsSync(obj.path.join(__dirname, '../meshcentral-web/views'))) { obj.webViewsOverridePath = obj.path.join(__dirname, '../meshcentral-web/views'); }
103 if (obj.fs.existsSync(obj.path.join(__dirname, '../meshcentral-web/public'))) { obj.webPublicOverridePath = obj.path.join(__dirname, '../meshcentral-web/public'); }
104 + if (obj.fs.existsSync(obj.path.join(__dirname, '../meshcentral-web/emails'))) { obj.webEmailsOverridePath = obj.path.join(__dirname, '../meshcentral-web/emails'); }
105 }
106
107 // Look to see if data and/or file path is specified
@@ -978,9 +982,11 @@ function CreateMeshCentralServer(config, args) {
982 if ((__dirname.endsWith('/node_modules/meshcentral')) || (__dirname.endsWith('\\node_modules\\meshcentral')) || (__dirname.endsWith('/node_modules/meshcentral/')) || (__dirname.endsWith('\\node_modules\\meshcentral\\'))) {
983 if ((obj.config.domains[i].webviewspath == null) && (obj.fs.existsSync(obj.path.join(__dirname, '../../meshcentral-web-' + i + '/views')))) { obj.config.domains[i].webviewspath = obj.path.join(__dirname, '../../meshcentral-web-' + i + '/views'); }
984 if ((obj.config.domains[i].webpublicpath == null) && (obj.fs.existsSync(obj.path.join(__dirname, '../../meshcentral-web-' + i + '/public')))) { obj.config.domains[i].webpublicpath = obj.path.join(__dirname, '../../meshcentral-web-' + i + '/public'); }
985 + if ((obj.config.domains[i].webemailspath == null) && (obj.fs.existsSync(obj.path.join(__dirname, '../../meshcentral-web-' + i + '/emails')))) { obj.config.domains[i].webemailspath = obj.path.join(__dirname, '../../meshcentral-web-' + i + '/emails'); }
986 } else {
987 if ((obj.config.domains[i].webviewspath == null) && (obj.fs.existsSync(obj.path.join(__dirname, '../meshcentral-web-' + i + '/views')))) { obj.config.domains[i].webviewspath = obj.path.join(__dirname, '../meshcentral-web-' + i + '/views'); }
988 if ((obj.config.domains[i].webpublicpath == null) && (obj.fs.existsSync(obj.path.join(__dirname, '../meshcentral-web-' + i + '/public')))) { obj.config.domains[i].webpublicpath = obj.path.join(__dirname, '../meshcentral-web-' + i + '/public'); }
989 + if ((obj.config.domains[i].webemailspath == null) && (obj.fs.existsSync(obj.path.join(__dirname, '../meshcentral-web-' + i + '/emails')))) { obj.config.domains[i].webemailspath = obj.path.join(__dirname, '../meshcentral-web-' + i + '/emails'); }
990 }
991 }
992
meshmail.js
+75 -61
@@ -24,7 +24,7 @@ module.exports.CreateMeshMail = function (parent) {
24 obj.retry = 0;
25 obj.sendingMail = false;
26 obj.mailCookieEncryptionKey = null;
27 - obj.mailTemplates = {};
27 + //obj.mailTemplates = {};
28 const constants = (obj.parent.crypto.constants ? obj.parent.crypto.constants : require('constants')); // require('constants') is deprecated in Node 11.10, use require('crypto').constants instead.
29 const nodemailer = require('nodemailer');
30
@@ -40,53 +40,56 @@ module.exports.CreateMeshMail = function (parent) {
40 if ((parent.config.smtp.user != null) && (parent.config.smtp.pass != null)) { options.auth = { user: parent.config.smtp.user, pass: parent.config.smtp.pass }; }
41 obj.smtpServer = nodemailer.createTransport(options);
42
43 - // Set default mail templates
44 - // You can override these by placing a file with the same name in "meshcentral-data/mail"
45 - // If the server hash many domains, just add the domainid to the file like this: 'account-check-customer1.html', 'mesh-invite-customer1.txt'.
46 - obj.mailTemplates['account-login.html'] = '<title>[[[SERVERNAME]]] - Account Login</title>\r\n<div style="font-family:Arial,Helvetica,sans-serif"><table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8><tr><td><b style="font-size:20px;font-family:Arial,Helvetica,sans-serif">[[[SERVERNAME]]] - Account Login</b></td></tr></table><p>Your login token is: [[[TOKEN]]]</p><p>This token can only be used once and is valid for 5 minutes.</p></div>';
47 - obj.mailTemplates['account-invite.html'] = '<title>[[[SERVERNAME]]] - Account Invitation</title>\r\n<div style="font-family:Arial,Helvetica,sans-serif"><table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8><tr><td><b style="font-size:20px;font-family:Arial,Helvetica,sans-serif">[[[SERVERNAME]]] - Account Invitation</b></td></tr></table><p>An account was created for you on server <a href="[[[SERVERURL]]]">[[[SERVERNAME]]]</a>, you can access it now with:</p><p>&nbsp;&nbsp;&nbsp;Username: <b>[[[ACCOUNTNAME]]]</b><br />&nbsp;&nbsp;&nbsp;Password: <b>[[[PASSWORD]]]</b></p>Best regards,<br>[[[USERNAME]]]<br></div>';
48 - obj.mailTemplates['account-check.html'] = '<title>[[[SERVERNAME]]] - Email Verification</title>\r\n<div style="font-family:Arial,Helvetica,sans-serif"><table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8><tr><td><b style="font-size:20px;font-family:Arial,Helvetica,sans-serif">[[[SERVERNAME]]] - Verification</b></td></tr></table><p>Hi [[[USERNAME]]], <a href="[[[SERVERURL]]]">[[[SERVERNAME]]]</a> is requesting email verification, click on the following link to complete the process.</p><p style="margin-left:30px"><a href="[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]]">Click here to verify your e-mail address.</a></p>If you did not initiate this request, please ignore this mail.</div>';
49 - obj.mailTemplates['account-reset.html'] = '<title>[[[SERVERNAME]]] - Account Reset</title>\r\n<div style="font-family:Arial,Helvetica,sans-serif"><table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8><tr><td><b style="font-size:20px;font-family:Arial,Helvetica,sans-serif">[[[SERVERNAME]]] - Verification</b></td></tr></table><p>Hi [[[USERNAME]]], <a href="[[[SERVERURL]]]">[[[SERVERNAME]]]</a> is requesting an account password reset, click on the following link to complete the process.</p><p style="margin-left:30px"><a href="[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]]">Click here to reset your account password.</a></p>If you did not initiate this request, please ignore this mail.</div>';
50 - obj.mailTemplates['mesh-invite.html'] = '<title>[[[SERVERNAME]]] - Invitation</title>\r\n<div style="font-family:Arial,Helvetica,sans-serif"><table style="background-color:#003366;color:lightgray;width:100%" cellpadding=8><tr><td><b style="font-size:20px;font-family:Arial,Helvetica,sans-serif">[[[SERVERNAME]]] - Agent Installation</b></td></tr></table>[[[AREA-NAME]]]<p>Hello [[[NAME]]],</p>[[[/AREA-NAME]]]<p>User [[[USERNAME]]] on server <a href="[[[SERVERURL]]]">[[[SERVERNAME]]]</a> is requesting you to install software to start a remote control session.</p>[[[AREA-MSG]]]<p>Message: <b>[[[MSG]]]</b></p>[[[/AREA-MSG]]][[[AREA-WINDOWS]]]<p style="margin-left:30px"><a href="[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]">Click here to download the MeshAgent for Windows.</a></p>[[[/AREA-WINDOWS]]][[[AREA-OSX]]]<p style="margin-left:30px"><a href="[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]">Click here to download the MeshAgent for Apple OSX.</a></p>[[[/AREA-OSX]]][[[AREA-LINUX]]]<p>For Linux, cut & paste the following in a terminal to install the agent:<br /><pre style="margin-left:30px">wget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'</pre></p>[[[/AREA-LINUX]]][[[AREA-LINK]]]<p>To install the software, <a href="[[[SERVERURL]]][[[LINKURL]]]">click here</a> and follow the instructions.</p>[[[/AREA-LINK]]]<p>If you did not initiate this request, please ignore this mail.</p>Best regards,<br>[[[USERNAME]]]<br></div>';
51 -
52 - obj.mailTemplates['account-login.txt'] = '[[[SERVERNAME]]] - Account Login\r\nYour login token is: [[[TOKEN]]]\r\n\r\nThis token can only be used once and is valid for 5 minutes.';
53 - obj.mailTemplates['account-invite.txt'] = '[[[SERVERNAME]]] - Account Invitation\r\nAn account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".\r\n\r\nBest regards,\r\n[[[USERNAME]]]';
54 - obj.mailTemplates['account-check.txt'] = '[[[SERVERNAME]]] - Email Verification\r\nHi [[[USERNAME]]], [[[SERVERNAME]]] ([[[SERVERURL]]]) is performing an e-mail verification. Nagivate to the following link to complete the process:\r\n\r\n[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]]\r\n\r\nIf you did not initiate this request, please ignore this mail.\r\n';
55 - obj.mailTemplates['account-reset.txt'] = '[[[SERVERNAME]]] - Account Reset\r\nHi [[[USERNAME]]], [[[SERVERNAME]]] ([[[SERVERURL]]]) is requesting an account password reset. Nagivate to the following link to complete the process:\r\n\r\n[[[SERVERURL]]]/checkmail?c=[[[COOKIE]]]\r\n\r\nIf you did not initiate this request, please ignore this mail.';
56 - obj.mailTemplates['mesh-invite.txt'] = '[[[SERVERNAME]]] - Invitation\r\n[[[AREA-NAME]]]Hello [[[NAME]]],\r\n\r\n[[[/AREA-NAME]]]User [[[USERNAME]]] on server [[[SERVERNAME]]] ([[[SERVERURL]]]/) is requesting you install software to start the remote control session.[[[AREA-MSG]]]\r\n\r\nMessage: [[[MSG]]]\r\n\r\n[[[/AREA-MSG]]][[[AREA-WINDOWS]]]For Windows, nagivate to the following link to complete the process:\r\n\r\n[[[SERVERURL]]]/meshagents?id=3&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]\r\n\r\n[[[/AREA-WINDOWS]]][[[AREA-OSX]]]For Apple OSX, nagivate to the following link to complete the process:\r\n\r\n[[[SERVERURL]]]/meshagents?id=16&meshid=[[[MESHIDHEX]]]&tag=mailto:[[[EMAIL]]]&installflags=[[[INSTALLFLAGS]]]\r\n\r\n[[[/AREA-OSX]]][[[AREA-LINUX]]]For Linux, cut & paste the following in a terminal to install the agent:\r\n\r\nwget -q "[[[SERVERURL]]]/meshagents?script=1" --no-check-certificate -O ./meshinstall.sh && chmod 755 ./meshinstall.sh && sudo ./meshinstall.sh [[[SERVERURL]]] \'[[[MESHIDHEX]]]\'\r\n\r\n[[[/AREA-LINUX]]][[[AREA-LINK]]]To install the software, navigate to [[[SERVERURL]]][[[LINKURL]]] and follow the instructions.\r\n\r\n[[[/AREA-LINK]]]If you did not initiate this request, please ignore this mail.\r\n\r\nBest regards,\r\n[[[USERNAME]]]';
57 -
58 - // Load all of the mail templates if present
59 - if (obj.parent.fs.existsSync(obj.parent.path.join(obj.parent.datapath, 'mail-templates'))) {
60 - var mailDir = null;
61 - try { mailDir = obj.parent.fs.readdirSync(obj.parent.path.join(obj.parent.datapath, 'mail-templates')); } catch (e) { }
62 - if (mailDir != null) {
63 - // Load all mail templates
64 - for (var i in mailDir) {
65 - var templateName = mailDir[i].toLowerCase();
66 - if (templateName.endsWith('.html') || templateName.endsWith('.txt')) { obj.mailTemplates[templateName] = obj.parent.fs.readFileSync(obj.parent.path.join(obj.parent.datapath, 'mail-templates', mailDir[i])).toString(); }
43 + // Get the correct mail template object
44 + function getTemplate(name, domain, lang) {
45 + if (Array.isArray(lang)) { lang = lang[0]; } // TODO: For now, we only use the first language given.
46 +
47 + var r = {}, emailsPath = null;
48 + if ((domain != null) && (domain.webemailspath != null)) { emailsPath = domain.webemailspath; }
49 + else if (obj.parent.webEmailsOverridePath != null) { emailsPath = obj.parent.webEmailsOverridePath; }
50 + else if (obj.parent.webEmailsPath != null) { emailsPath = obj.parent.webEmailsPath; }
51 + if ((emailsPath == null) || (obj.parent.fs.existsSync(emailsPath) == false)) { return null }
52 +
53 + // Get the non-english email if needed
54 + var htmlfile = null, txtfile = null;
55 + if ((lang != null) && (lang != 'en')) {
56 + var translationsPath = obj.parent.path.join(emailsPath, 'translations');
57 + var translationsPathHtml = obj.parent.path.join(emailsPath, 'translations', name + '_' + lang + '.html');
58 + var translationsPathTxt = obj.parent.path.join(emailsPath, 'translations', name + '_' + lang + '.txt');
59 + if (obj.parent.fs.existsSync(translationsPath) && obj.parent.fs.existsSync(translationsPathHtml) && obj.parent.fs.existsSync(translationsPathTxt)) {
60 + htmlfile = obj.parent.fs.readFileSync(translationsPathHtml).toString();
61 + txtfile = obj.parent.fs.readFileSync(translationsPathTxt).toString();
62 }
63 }
69 - } else {
70 - // Save the default templates
71 - try {
72 - obj.parent.fs.mkdirSync(obj.parent.path.join(obj.parent.datapath, 'mail-templates'));
73 - for (var i in obj.mailTemplates) { obj.parent.fs.writeFileSync(obj.parent.path.join(obj.parent.datapath, 'mail-templates', i), obj.mailTemplates[i], 'utf8'); }
74 - } catch (e) { console.error(e); }
75 - }
64
77 - // Get the correct mail template
78 - function getTemplate(name, domain, html) {
79 - if (domain != null) { var r = obj.mailTemplates[name + '-' + domain.id + (html ? '.html' : '.txt')]; if (r) return r; }
80 - return obj.mailTemplates[name + (html ? '.html' : '.txt')];
81 - }
65 + // Get the english email
66 + if (htmlfile == null) {
67 + var pathHtml = obj.parent.path.join(emailsPath, name + '.html');
68 + var pathTxt = obj.parent.path.join(emailsPath, name + '.txt');
69 + if (obj.parent.fs.existsSync(pathHtml) && obj.parent.fs.existsSync(pathTxt)) {
70 + htmlfile = obj.parent.fs.readFileSync(pathHtml).toString();
71 + txtfile = obj.parent.fs.readFileSync(pathTxt).toString();
72 + }
73 + }
74 +
75 + // No email templates
76 + if ((htmlfile == null) || (txtfile == null)) { return null; }
77 +
78 + // Decode the HTML file
79 + htmlfile = htmlfile.split('<html>').join('').split('</html>').join('').split('<head>').join('').split('</head>').join('').split('<body>').join('').split('</body>').join('').split(' notrans="1"').join('');
80 + var lines = htmlfile.split('\r\n').join('\n').split('\n');
81 + r.htmlSubject = lines.shift();
82 + if (r.htmlSubject.startsWith('<div>')) { r.htmlSubject = r.htmlSubject.substring(5); }
83 + if (r.htmlSubject.endsWith('</div>')) { r.htmlSubject = r.htmlSubject.substring(0, r.htmlSubject.length - 6); }
84 + r.html = lines.join('\r\n');
85 +
86 + // Decode the TXT file
87 + lines = txtfile.split('\r\n').join('\n').split('\n');
88 + r.txtSubject = lines.shift();
89 + var txtbody = [];
90 + for (var i in lines) { var line = lines[i]; if ((line.length > 0) && (line[0] == '~')) { txtbody.push(line.substring(1)); } else { txtbody.push(line); } }
91 + r.txt = txtbody.join('\r\n');
92
83 - // Get the correct mail template object
84 - function getTemplateEx(name, domain) {
85 - var r = {}, txt = getTemplate(name, domain, 0), html = getTemplate(name, domain, 1);
86 - r.txtSubject = txt.split('\r\n')[0];
87 - r.htmlSubject = getStrBetween(html, '<title>', '</title>\r\n');
88 - r.txt = txt.substring(txt.indexOf('\r\n') + 2);
89 - r.html = html.substring(html.indexOf('\r\n') + 2);
93 return r;
94 }
95
@@ -104,11 +107,19 @@ module.exports.CreateMeshMail = function (parent) {
107 return str.substring(0, si) + str.substring(ei + end.length);
108 }
109
107 - // Keep or remove the string between two markers
110 + // Keep or remove all lines between two lines with markers
111 function strZone(str, marker, keep) {
109 - marker = marker.toUpperCase();
110 - if (keep) { return str.split('[[[AREA-' + marker + ']]]').join('').split('[[[/AREA-' + marker + ']]]').join(''); }
111 - return removeStrBetween(str, '[[[AREA-' + marker + ']]]', '[[[/AREA-' + marker + ']]]');
112 + var lines = str.split('\r\n'), linesEx = [], removing = false;
113 + const startMarker = '<area-' + marker + '>', endMarker = '</area-' + marker + '>';
114 + for (var i in lines) {
115 + var line = lines[i];
116 + if (removing) {
117 + if (line.indexOf(endMarker) >= 0) { removing = false; } else { if (keep) { linesEx.push(line); } }
118 + } else {
119 + if (line.indexOf(startMarker) >= 0) { removing = true; } else { linesEx.push(line); }
120 + }
121 + }
122 + return linesEx.join('\r\n');
123 }
124
125 // Perform all e-mail substitution
@@ -123,25 +134,25 @@ module.exports.CreateMeshMail = function (parent) {
134 }
135 if (options.serverurl.endsWith('/')) { options.serverurl = options.serverurl.substring(0, options.serverurl.length - 1); } // Remove the ending / if present
136 for (var i in options) {
126 - text = strZone(text, i.toUpperCase(), options[i]); // Adjust this text area
137 + text = strZone(text, i.toLowerCase(), options[i]); // Adjust this text area
138 text = text.split('[[[' + i.toUpperCase() + ']]]').join(options[i]); // Replace this value
139 }
140 return text;
141 }
142
132 - // Send a mail
143 + // Send a generic email
144 obj.sendMail = function (to, subject, text, html) {
145 obj.pendingMails.push({ to: to, from: parent.config.smtp.from, subject: subject, text: text, html: html });
146 sendNextMail();
147 };
148
149 // Send account login mail / 2 factor token
139 - obj.sendAccountLoginMail = function (domain, email, token) {
150 + obj.sendAccountLoginMail = function (domain, email, token, language) {
151 obj.checkEmail(email, function (checked) {
152 if (checked) {
153 parent.debug('email', "Sending login token to " + email);
154
144 - var template = getTemplateEx('account-login', domain);
155 + var template = getTemplate('account-login', domain, language);
156 if ((template == null) || (template.htmlSubject == null) || (template.txtSubject == null) || (parent.certificates == null) || (parent.certificates.CommonName == null) || (parent.certificates.CommonName.indexOf('.') == -1)) return; // If the server name is not set, invitation not possible.
157
158 // Set all the options.
@@ -155,12 +166,12 @@ module.exports.CreateMeshMail = function (parent) {
166 };
167
168 // Send account invitation mail
158 - obj.sendAccountInviteMail = function (domain, username, accountname, email, password) {
169 + obj.sendAccountInviteMail = function (domain, username, accountname, email, password, language) {
170 obj.checkEmail(email, function (checked) {
171 if (checked) {
172 parent.debug('email', "Sending account invitation to " + email);
173
163 - var template = getTemplateEx('account-invite', domain);
174 + var template = getTemplate('account-invite', domain, language);
175 if ((template == null) || (template.htmlSubject == null) || (template.txtSubject == null) || (parent.certificates == null) || (parent.certificates.CommonName == null) || (parent.certificates.CommonName.indexOf('.') == -1)) return; // If the server name is not set, invitation not possible.
176
177 // Set all the options.
@@ -174,12 +185,12 @@ module.exports.CreateMeshMail = function (parent) {
185 };
186
187 // Send account check mail
177 - obj.sendAccountCheckMail = function (domain, username, email) {
188 + obj.sendAccountCheckMail = function (domain, username, email, language) {
189 obj.checkEmail(email, function (checked) {
190 if (checked) {
191 parent.debug('email', "Sending email verification to " + email);
192
182 - var template = getTemplateEx('account-check', domain);
193 + var template = getTemplate('account-check', domain, language);
194 if ((template == null) || (template.htmlSubject == null) || (template.txtSubject == null) || (parent.certificates == null) || (parent.certificates.CommonName == null) || (parent.certificates.CommonName.indexOf('.') == -1)) return; // If the server name is not set, no reset possible.
195
196 // Set all the options.
@@ -194,12 +205,12 @@ module.exports.CreateMeshMail = function (parent) {
205 };
206
207 // Send account reset mail
197 - obj.sendAccountResetMail = function (domain, username, email) {
208 + obj.sendAccountResetMail = function (domain, username, email, language) {
209 obj.checkEmail(email, function (checked) {
210 if (checked) {
211 parent.debug('email', "Sending account password reset to " + email);
212
202 - var template = getTemplateEx('account-reset', domain);
213 + var template = getTemplate('account-reset', domain, language);
214 if ((template == null) || (template.htmlSubject == null) || (template.txtSubject == null) || (parent.certificates == null) || (parent.certificates.CommonName == null) || (parent.certificates.CommonName.indexOf('.') == -1)) return; // If the server name is not set, don't validate the email address.
215
216 // Set all the options.
@@ -214,12 +225,15 @@ module.exports.CreateMeshMail = function (parent) {
225 };
226
227 // Send agent invite mail
217 - obj.sendAgentInviteMail = function (domain, username, email, meshid, name, os, msg, flags, expirehours) {
228 + obj.sendAgentInviteMail = function (domain, username, email, meshid, name, os, msg, flags, expirehours, language) {
229 obj.checkEmail(email, function (checked) {
230 if (checked) {
231 parent.debug('email', "Sending agent install invitation to " + email);
221 - var template = getTemplateEx('mesh-invite', domain);
222 - if ((template == null) || (template.htmlSubject == null) || (template.txtSubject == null) || (parent.certificates == null) || (parent.certificates.CommonName == null) || (parent.certificates.CommonName.indexOf('.') == -1)) return; // If the server name is not set, don't validate the email address.
232 + var template = getTemplate('mesh-invite', domain, language);
233 + if ((template == null) || (template.htmlSubject == null) || (template.txtSubject == null) || (parent.certificates == null) || (parent.certificates.CommonName == null) || (parent.certificates.CommonName.indexOf('.') == -1)) {
234 + parent.debug('email', "Failed to get email template for " + email);
235 + return; // If the server name is not set, don't validate the email address.
236 + }
237
238 // Set all the template replacement options and generate the final email text (both in txt and html formats).
239 var options = { username: username, name: name, email: email, installflags: flags, msg: msg, meshid: meshid, meshidhex: meshid.split('/')[2], servername: domain.title ? domain.title : 'MeshCentral' };
meshuser.js
+4 -4
@@ -1207,7 +1207,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
1207 parent.parent.DispatchEvent(targets, obj, message);
1208
1209 // Send the verification email
1210 - if (parent.parent.mailserver != null) { parent.parent.mailserver.sendAccountCheckMail(domain, user.name, user.email); }
1210 + if (parent.parent.mailserver != null) { parent.parent.mailserver.sendAccountCheckMail(domain, user.name, user.email, parent.getLanguageCodes(req)); }
1211 }
1212 });
1213 }
@@ -1224,7 +1224,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
1224
1225 if ((parent.parent.mailserver != null) && (obj.user.email.toLowerCase() == command.email)) {
1226 // Send the verification email
1227 - parent.parent.mailserver.sendAccountCheckMail(domain, user.name, user.email);
1227 + parent.parent.mailserver.sendAccountCheckMail(domain, user.name, user.email, parent.getLanguageCodes(req));
1228 }
1229 break;
1230 }
@@ -1545,7 +1545,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
1545
1546 // Perform email invitation
1547 if ((command.emailInvitation == true) && (command.emailVerified == true) && command.email && parent.parent.mailserver) {
1548 - parent.parent.mailserver.sendAccountInviteMail(domain, user.name, newusername, command.email.toLowerCase(), command.pass);
1548 + parent.parent.mailserver.sendAccountInviteMail(domain, user.name, newusername, command.email.toLowerCase(), command.pass, parent.getLanguageCodes(req));
1549 }
1550
1551 // OK Response
@@ -3147,7 +3147,7 @@ module.exports.CreateMeshUser = function (parent, db, ws, req, args, domain, use
3147 }
3148
3149 // Perform email invitation
3150 - parent.parent.mailserver.sendAgentInviteMail(domain, user.name, command.email.toLowerCase(), command.meshid, command.name, command.os, command.msg, command.flags, command.expire);
3150 + parent.parent.mailserver.sendAgentInviteMail(domain, user.name, command.email.toLowerCase(), command.meshid, command.name, command.os, command.msg, command.flags, command.expire, parent.getLanguageCodes(req));
3151
3152 // Send a response if needed
3153 if (command.responseid != null) { try { ws.send(JSON.stringify({ action: 'inviteAgent', responseid: command.responseid, result: 'ok' })); } catch (ex) { } }
package.json
+1 -1
@@ -1,6 +1,6 @@
1 {
2 "name": "meshcentral",
3 - "version": "0.5.1-d",
3 + "version": "0.5.1-e",
4 "keywords": [
5 "Remote Management",
6 "Intel AMT",
public/email/account-invite.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Account Invitation
2 -An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".
3 -~
4 -Best regards,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_cs.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Pozvánka na účet
2 -Účet byl pro vás vytvořen na serveru [[[SERVERNAME]]] ([[[SERVERURL]]]/), nyní k němu máte přístup pomocí uživatelského jména \"[[[ACCOUNTNAME]]]\" a hesla \"[[[PASSWORD]]]\".
3 -~
4 -S pozdravem,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_de.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Kontoeinladung
2 -Auf dem Server [[[SERVERNAME]]] ([[[SERVERURL]]]/) wurde ein Konto für Sie erstellt. Sie können jetzt mit dem Benutzernamen \"[[[ACCOUNTNAME]]]\" und dem Passwort \"[[[PASSWORD]]]\".
3 -~
4 -Freundliche Grüße,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_es.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Account Invitation
2 -An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".
3 -~
4 -Best regards,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_fr.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Invitation au compte
2 -Un compte a été créé pour vous sur le serveur [[[SERVERNAME]]] ([[[SERVERURL]]]/), vous pouvez y accéder maintenant avec le nom d'utilisateur \"[[[ACCOUNTNAME]]]\" et le mot de passe \"[[[PASSWORD]]]\".
3 -~
4 -Meilleures salutations,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_hi.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Account Invitation
2 -An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".
3 -~
4 -Best regards,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_ja.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]]-アカウントの招待
2 -サーバー[[[SERVERNAME]]]([[[SERVERURL]]]/)にアカウントが作成されました。ユーザー名 \"[[[ACCOUNTNAME]]]\" とパスワード \"[[[PASSWORD]]]\"。
3 -~
4 -宜しくお願いします、
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_ko.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Account Invitation
2 -An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".
3 -~
4 -Best regards,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_pt.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - Account Invitation
2 -An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".
3 -~
4 -Best regards,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_ru.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]] - приглашение в аккаунт
2 -Для вас была создана учетная запись на сервере [[[SERVERNAME]]] ([[[SERVERURL]]]/), теперь вы можете получить к ней доступ с помощью имени пользователя \"[[[ACCOUNTNAME]]]\" и пароля \"[[[PASSWORD]]]\".
3 -~
4 -С уважением,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/email/translations/account-invite_zh-chs.txt deleted
-5
@@ -1,5 +0,0 @@
1 -[[[SERVERNAME]]]-帐户邀请
2 -已在服务器[[[SERVERNAME]]]([[[SERVERURL]]]/ 上为您创建了一个帐户,您现在可以使用用户名\“ [[[ACCOUNTNAME]]] 和密码 \"[[[PASSWORD]]]\"。
3 -~
4 -最好的祝福,
5 -~[[[USERNAME]]]
\ No newline at end of file
public/translate.bat
+1 -1
@@ -3,4 +3,4 @@ CD ..\translate
3 %LOCALAPPDATA%\..\Roaming\nvm\v12.13.0\node translate.js minifyall
4 %LOCALAPPDATA%\..\Roaming\nvm\v12.13.0\node translate.js translateall
5 %LOCALAPPDATA%\..\Roaming\nvm\v12.13.0\node translate.js extractall
6 -DEL ..\public\email\translations\*-min_*
\ No newline at end of file
6 +DEL ..\emails\translations\*-min_*
\ No newline at end of file
translate/translate.js
+10 -10
@@ -32,16 +32,16 @@ var meshCentralSourceFiles = [
32 "../views/message.handlebars",
33 "../views/messenger.handlebars",
34 "../views/player.handlebars",
35 - "../public/email/account-check.html",
36 - "../public/email/account-invite.html",
37 - "../public/email/account-login.html",
38 - "../public/email/account-reset.html",
39 - "../public/email/mesh-invite.html",
40 - "../public/email/account-check.txt",
41 - "../public/email/account-invite.txt",
42 - "../public/email/account-login.txt",
43 - "../public/email/account-reset.txt",
44 - "../public/email/mesh-invite.txt"
35 + "../emails/account-check.html",
36 + "../emails/account-invite.html",
37 + "../emails/account-login.html",
38 + "../emails/account-reset.html",
39 + "../emails/mesh-invite.html",
40 + "../emails/account-check.txt",
41 + "../emails/account-invite.txt",
42 + "../emails/account-login.txt",
43 + "../emails/account-reset.txt",
44 + "../emails/mesh-invite.txt"
45 ];
46
47 var minifyMeshCentralSourceFiles = [
translate/translate.json
+1392 -1372
@@ -14,8 +14,8 @@
14 "ru": " + CIRA",
15 "zh-chs": " + CIRA",
16 "xloc": [
17 - "default.handlebars->27->1114",
18 - "default.handlebars->27->1116"
17 + "default.handlebars->27->1116",
18 + "default.handlebars->27->1118"
19 ]
20 },
21 {
@@ -233,7 +233,7 @@
233 "ru": " Может быть использована подсказка пароля, но не рекоммендуется.",
234 "zh-chs": " 可以使用密碼提示,但不建議使用。",
235 "xloc": [
236 - "default.handlebars->27->1044"
236 + "default.handlebars->27->1046"
237 ]
238 },
239 {
@@ -250,8 +250,8 @@
250 "ru": " Для добавления в группу устройств, пользователь должен зайти на сервер хотя бы один раз.",
251 "zh-chs": " 用戶需要先登錄到該服務器一次,然後才能將其添加到設備組。",
252 "xloc": [
253 - "default.handlebars->27->1187",
254 - "default.handlebars->27->1444"
253 + "default.handlebars->27->1189",
254 + "default.handlebars->27->1446"
255 ]
256 },
257 {
@@ -385,7 +385,7 @@
385 "ru": "(необязательно)",
386 "zh-chs": "(可選的)",
387 "xloc": [
388 - "default.handlebars->27->288"
388 + "default.handlebars->27->290"
389 ]
390 },
391 {
@@ -417,7 +417,7 @@
417 "ru": "* Для BSD сначала запустите \\\"pkg install wget sudo bash\\\".",
418 "zh-chs": "*對於BSD,首先運行 “pkg install wget sudo bash”。",
419 "xloc": [
420 - "default.handlebars->27->321"
420 + "default.handlebars->27->323"
421 ]
422 },
423 {
@@ -434,7 +434,7 @@
434 "ru": "* Оставьте пустым для установления случайного пароля каждому устройству.",
435 "zh-chs": "*保留空白以為每個設備分配一個隨機密碼。",
436 "xloc": [
437 - "default.handlebars->27->1161"
437 + "default.handlebars->27->1163"
438 ]
439 },
440 {
@@ -467,7 +467,7 @@
467 "zh-chs": ",",
468 "xloc": [
469 "default-mobile.handlebars->9->334",
470 - "default.handlebars->27->1246"
470 + "default.handlebars->27->1248"
471 ]
472 },
473 {
@@ -502,7 +502,7 @@
502 "ru": ", MQTT онлайн",
503 "zh-chs": ",MQTT在線",
504 "xloc": [
505 - "default.handlebars->27->793"
505 + "default.handlebars->27->795"
506 ]
507 },
508 {
@@ -519,7 +519,7 @@
519 "ru": ", Soft-KVM",
520 "zh-chs": ",軟KVM",
521 "xloc": [
522 - "default.handlebars->27->652"
522 + "default.handlebars->27->654"
523 ]
524 },
525 {
@@ -538,9 +538,9 @@
538 "xloc": [
539 "default-mobile.handlebars->9->232",
540 "default-mobile.handlebars->9->242",
541 - "default.handlebars->27->653",
542 - "default.handlebars->27->684",
543 - "default.handlebars->27->696",
541 + "default.handlebars->27->655",
542 + "default.handlebars->27->686",
543 + "default.handlebars->27->698",
544 "xterm.handlebars->9->6"
545 ]
546 },
@@ -607,7 +607,7 @@
607 "ru": "Вы можете получить к нему доступ сейчас:",
608 "zh-chs": ",您现在可以通过以下方式访问它:",
609 "xloc": [
610 - "account-invite.html->0->3"
610 + "account-invite.html->2->3"
611 ]
612 },
613 {
@@ -663,9 +663,9 @@
663 "xloc": [
664 "default-mobile.handlebars->9->247",
665 "default-mobile.handlebars->9->70",
666 - "default.handlebars->27->1283",
667 - "default.handlebars->27->1533",
668 - "default.handlebars->27->698"
666 + "default.handlebars->27->1285",
667 + "default.handlebars->27->1535",
668 + "default.handlebars->27->700"
669 ]
670 },
671 {
@@ -714,7 +714,7 @@
714 "ru": "1 активная сессия",
715 "zh-chs": "1個活動會話",
716 "xloc": [
717 - "default.handlebars->27->1487"
717 + "default.handlebars->27->1489"
718 ]
719 },
720 {
@@ -733,7 +733,7 @@
733 "xloc": [
734 "default-mobile.handlebars->9->338",
735 "default-mobile.handlebars->9->80",
736 - "default.handlebars->27->1301"
736 + "default.handlebars->27->1303"
737 ]
738 },
739 {
@@ -751,8 +751,8 @@
751 "zh-chs": "1天",
752 "xloc": [
753 "default.handlebars->27->153",
754 - "default.handlebars->27->279",
755 - "default.handlebars->27->293"
754 + "default.handlebars->27->281",
755 + "default.handlebars->27->295"
756 ]
757 },
758 {
@@ -769,7 +769,7 @@
769 "ru": "1 группа",
770 "zh-chs": "1組",
771 "xloc": [
772 - "default.handlebars->27->1469"
772 + "default.handlebars->27->1471"
773 ]
774 },
775 {
@@ -787,8 +787,8 @@
787 "zh-chs": "1小時",
788 "xloc": [
789 "default.handlebars->27->151",
790 - "default.handlebars->27->277",
791 - "default.handlebars->27->291"
790 + "default.handlebars->27->279",
791 + "default.handlebars->27->293"
792 ]
793 },
794 {
@@ -823,8 +823,8 @@
823 "zh-chs": "1個月",
824 "xloc": [
825 "default.handlebars->27->155",
826 - "default.handlebars->27->281",
827 - "default.handlebars->27->295"
826 + "default.handlebars->27->283",
827 + "default.handlebars->27->297"
828 ]
829 },
830 {
@@ -841,7 +841,7 @@
841 "ru": "Еще 1 пользователь не показан, используйте поиск чтобы найти пользователей...",
842 "zh-chs": "未再顯示1個用戶,請使用搜索框查找用戶...",
843 "xloc": [
844 - "default.handlebars->27->1336"
844 + "default.handlebars->27->1338"
845 ]
846 },
847 {
@@ -858,7 +858,7 @@
858 "ru": "1 устройство",
859 "zh-chs": "1個節點",
860 "xloc": [
861 - "default.handlebars->27->335"
861 + "default.handlebars->27->337"
862 ]
863 },
864 {
@@ -892,7 +892,7 @@
892 "ru": "1 сессия",
893 "zh-chs": "1節",
894 "xloc": [
895 - "default.handlebars->27->1340"
895 + "default.handlebars->27->1342"
896 ]
897 },
898 {
@@ -910,8 +910,8 @@
910 "zh-chs": "1週",
911 "xloc": [
912 "default.handlebars->27->154",
913 - "default.handlebars->27->280",
914 - "default.handlebars->27->294"
913 + "default.handlebars->27->282",
914 + "default.handlebars->27->296"
915 ]
916 },
917 {
@@ -1160,8 +1160,8 @@
1160 "ru": "двухфакторная аутентификация включена",
1161 "zh-chs": "啟用第二因素身份驗證",
1162 "xloc": [
1163 - "default.handlebars->27->1353",
1164 - "default.handlebars->27->1478"
1163 + "default.handlebars->27->1355",
1164 + "default.handlebars->27->1480"
1165 ]
1166 },
1167 {
@@ -1263,8 +1263,8 @@
1263 "ru": "32-разрядная версия MeshAgent",
1264 "zh-chs": "MeshAgent的32位版本",
1265 "xloc": [
1266 - "default.handlebars->27->311",
1267 - "default.handlebars->27->328"
1266 + "default.handlebars->27->313",
1267 + "default.handlebars->27->330"
1268 ]
1269 },
1270 {
@@ -1477,7 +1477,7 @@
1477 "ru": "64-битная версия MacOS Mesh Agent",
1478 "zh-chs": "64位版本的MacOS Mesh Agent",
1479 "xloc": [
1480 - "default.handlebars->27->324"
1480 + "default.handlebars->27->326"
1481 ]
1482 },
1483 {
@@ -1494,8 +1494,8 @@
1494 "ru": "64-разрядная версия MeshAgent",
1495 "zh-chs": "MeshAgent的64位版本",
1496 "xloc": [
1497 - "default.handlebars->27->315",
1498 - "default.handlebars->27->331"
1497 + "default.handlebars->27->317",
1498 + "default.handlebars->27->333"
1499 ]
1500 },
1501 {
@@ -1526,7 +1526,7 @@
1526 "ru": "7-дневная статистика работы",
1527 "zh-chs": "7天電源狀態",
1528 "xloc": [
1529 - "default.handlebars->27->591"
1529 + "default.handlebars->27->593"
1530 ]
1531 },
1532 {
@@ -1579,8 +1579,8 @@
1579 "ru": "8 часов",
1580 "zh-chs": "8小時",
1581 "xloc": [
1582 - "default.handlebars->27->278",
1583 - "default.handlebars->27->292"
1582 + "default.handlebars->27->280",
1583 + "default.handlebars->27->294"
1584 ]
1585 },
1586 {
@@ -1766,7 +1766,7 @@
1766 "zh-chs": "ACM",
1767 "xloc": [
1768 "default-mobile.handlebars->9->186",
1769 - "default.handlebars->27->467"
1769 + "default.handlebars->27->469"
1770 ]
1771 },
1772 {
@@ -1784,7 +1784,7 @@
1784 "zh-chs": "AMT",
1785 "xloc": [
1786 "default.handlebars->27->172",
1787 - "default.handlebars->27->363"
1787 + "default.handlebars->27->365"
1788 ]
1789 },
1790 {
@@ -1873,7 +1873,7 @@
1873 "ru": "Отказано в доступе",
1874 "zh-chs": "拒絕訪問",
1875 "xloc": [
1876 - "default.handlebars->27->794"
1876 + "default.handlebars->27->796"
1877 ]
1878 },
1879 {
@@ -1908,7 +1908,7 @@
1908 "ru": "Доступ к файлам сервера",
1909 "zh-chs": "訪問服務器文件",
1910 "xloc": [
1911 - "default.handlebars->27->1450"
1911 + "default.handlebars->27->1452"
1912 ]
1913 },
1914 {
@@ -1983,10 +1983,10 @@
1983 "default-mobile.handlebars->9->55",
1984 "default-mobile.handlebars->9->57",
1985 "default-mobile.handlebars->container->page_content->column_l->p3->p3info->1->p3AccountActions->1->0",
1986 - "default.handlebars->27->1053",
1986 "default.handlebars->27->1055",
1988 - "default.handlebars->27->437",
1989 - "default.handlebars->27->439"
1987 + "default.handlebars->27->1057",
1988 + "default.handlebars->27->439",
1989 + "default.handlebars->27->441"
1990 ]
1991 },
1992 {
@@ -2016,8 +2016,8 @@
2016 "ru": "Аккаунт заблокирован",
2017 "zh-chs": "帐户已被锁定",
2018 "xloc": [
2019 - "default.handlebars->27->1354",
2020 - "default.handlebars->27->1447"
2019 + "default.handlebars->27->1356",
2020 + "default.handlebars->27->1449"
2021 ]
2022 },
2023 {
@@ -2105,7 +2105,7 @@
2105 "ru": "Действиe",
2106 "zh-chs": "行動",
2107 "xloc": [
2108 - "default.handlebars->27->799",
2108 + "default.handlebars->27->801",
2109 "default.handlebars->container->column_l->p42->p42tbl->1->0->8"
2110 ]
2111 },
@@ -2123,8 +2123,8 @@
2123 "ru": "Файл действий",
2124 "zh-chs": "動作文件",
2125 "xloc": [
2126 - "default.handlebars->27->632",
2127 - "default.handlebars->27->634"
2126 + "default.handlebars->27->634",
2127 + "default.handlebars->27->636"
2128 ]
2129 },
2130 {
@@ -2143,7 +2143,7 @@
2143 "xloc": [
2144 "default-mobile.handlebars->container->page_content->column_l->p10->p10desktop->deskarea4->1->3",
2145 "default-mobile.handlebars->container->page_content->column_l->p10->p10files->p13toolbar->1->0->1->1",
2146 - "default.handlebars->27->499",
2146 + "default.handlebars->27->501",
2147 "default.handlebars->container->column_l->p11->deskarea0->deskarea1->1",
2148 "default.handlebars->container->column_l->p12->termTable->1->1->0->1->1",
2149 "default.handlebars->container->column_l->p13->p13toolbar->1->0->1->1"
@@ -2199,9 +2199,9 @@
2199 "xloc": [
2200 "default-mobile.handlebars->9->181",
2201 "default-mobile.handlebars->9->183",
2202 - "default.handlebars->27->460",
2202 "default.handlebars->27->462",
2204 - "default.handlebars->27->764"
2203 + "default.handlebars->27->464",
2204 + "default.handlebars->27->766"
2205 ]
2206 },
2207 {
@@ -2218,8 +2218,8 @@
2218 "ru": "Активация",
2219 "zh-chs": "激活",
2220 "xloc": [
2221 - "default.handlebars->27->1127",
2221 "default.handlebars->27->1129",
2222 + "default.handlebars->27->1131",
2223 "default.handlebars->27->214",
2224 "default.handlebars->27->216"
2225 ]
@@ -2238,7 +2238,7 @@
2238 "ru": "Активный пользователь",
2239 "zh-chs": "活動用戶{0}",
2240 "xloc": [
2241 - "default.handlebars->27->486"
2241 + "default.handlebars->27->488"
2242 ]
2243 },
2244 {
@@ -2288,7 +2288,7 @@
2288 "ru": "Добавить устройство",
2289 "zh-chs": "添加設備",
2290 "xloc": [
2291 - "default.handlebars->27->1503"
2291 + "default.handlebars->27->1505"
2292 ]
2293 },
2294 {
@@ -2305,7 +2305,7 @@
2305 "ru": "Добавить событие к устройству",
2306 "zh-chs": "添加設備事件",
2307 "xloc": [
2308 - "default.handlebars->27->574"
2308 + "default.handlebars->27->576"
2309 ]
2310 },
2311 {
@@ -2322,10 +2322,10 @@
2322 "ru": "Добавить группу устройств",
2323 "zh-chs": "添加設備組",
2324 "xloc": [
2325 - "default.handlebars->27->1215",
2325 "default.handlebars->27->1217",
2327 - "default.handlebars->27->1426",
2328 - "default.handlebars->27->1509",
2326 + "default.handlebars->27->1219",
2327 + "default.handlebars->27->1428",
2328 + "default.handlebars->27->1511",
2329 "default.handlebars->27->189"
2330 ]
2331 },
@@ -2339,7 +2339,7 @@
2339 "ru": "Добавить разрешения для устройства",
2340 "zh-chs": "添加设备权限",
2341 "xloc": [
2342 - "default.handlebars->27->1218"
2342 + "default.handlebars->27->1220"
2343 ]
2344 },
2345 {
@@ -2424,7 +2424,7 @@
2424 "ru": "Добавить участие",
2425 "zh-chs": "添加會員",
2426 "xloc": [
2427 - "default.handlebars->27->1529"
2427 + "default.handlebars->27->1531"
2428 ]
2429 },
2430 {
@@ -2441,7 +2441,7 @@
2441 "ru": "Добавить Mesh Agent",
2442 "zh-chs": "添加網格代理",
2443 "xloc": [
2444 - "default.handlebars->27->334"
2444 + "default.handlebars->27->336"
2445 ]
2446 },
2447 {
@@ -2462,8 +2462,8 @@
2462 "default.handlebars->27->131",
2463 "default.handlebars->27->134",
2464 "default.handlebars->27->135",
2465 - "default.handlebars->27->821",
2466 - "default.handlebars->27->822"
2465 + "default.handlebars->27->823",
2466 + "default.handlebars->27->824"
2467 ]
2468 },
2469 {
@@ -2481,7 +2481,7 @@
2481 "zh-chs": "添加用戶",
2482 "xloc": [
2483 "default-mobile.handlebars->9->284",
2484 - "default.handlebars->27->534"
2484 + "default.handlebars->27->536"
2485 ]
2486 },
2487 {
@@ -2494,7 +2494,7 @@
2494 "ru": "Добавить разрешения для пользовательских устройств",
2495 "zh-chs": "添加用户设备权限",
2496 "xloc": [
2497 - "default.handlebars->27->1221"
2497 + "default.handlebars->27->1223"
2498 ]
2499 },
2500 {
@@ -2511,9 +2511,9 @@
2511 "ru": "Добавить группу пользователей",
2512 "zh-chs": "添加用戶組",
2513 "xloc": [
2514 - "default.handlebars->27->1121",
2515 - "default.handlebars->27->1216",
2516 - "default.handlebars->27->1515"
2514 + "default.handlebars->27->1123",
2515 + "default.handlebars->27->1218",
2516 + "default.handlebars->27->1517"
2517 ]
2518 },
2519 {
@@ -2547,8 +2547,8 @@
2547 "ru": "Добавить пользователей",
2548 "zh-chs": "添加用戶",
2549 "xloc": [
2550 - "default.handlebars->27->1120",
2551 - "default.handlebars->27->1421"
2550 + "default.handlebars->27->1122",
2551 + "default.handlebars->27->1423"
2552 ]
2553 },
2554 {
@@ -2565,7 +2565,7 @@
2565 "ru": "Добавить пользователей в группу устройств",
2566 "zh-chs": "將用戶添加到設備組",
2567 "xloc": [
2568 - "default.handlebars->27->1214"
2568 + "default.handlebars->27->1216"
2569 ]
2570 },
2571 {
@@ -2582,7 +2582,7 @@
2582 "ru": "Добавить пользователей в группу",
2583 "zh-chs": "將用戶添加到用戶組",
2584 "xloc": [
2585 - "default.handlebars->27->1446"
2585 + "default.handlebars->27->1448"
2586 ]
2587 },
2588 {
@@ -2633,7 +2633,7 @@
2633 "ru": "Добавить новый Intel&reg; AMT компьютер, находящийся в интернете.",
2634 "zh-chs": "添加位於互聯網上的新英特爾&reg;AMT計算機。",
2635 "xloc": [
2636 - "default.handlebars->27->1122",
2636 + "default.handlebars->27->1124",
2637 "default.handlebars->27->207"
2638 ]
2639 },
@@ -2651,7 +2651,7 @@
2651 "ru": "Добавить новый Intel&reg; AMT компьютер, находящийся в локальной сети.",
2652 "zh-chs": "添加位於本地網絡上的新英特爾&reg;AMT計算機。",
2653 "xloc": [
2654 - "default.handlebars->27->1124",
2654 + "default.handlebars->27->1126",
2655 "default.handlebars->27->209"
2656 ]
2657 },
@@ -2686,7 +2686,7 @@
2686 "ru": "Добавить новый компьютер к этой сети установкой Mesh Agent.",
2687 "zh-chs": "通過安裝網格代理將新計算機添加到該網格。",
2688 "xloc": [
2689 - "default.handlebars->27->1130",
2689 + "default.handlebars->27->1132",
2690 "default.handlebars->27->217"
2691 ]
2692 },
@@ -2738,7 +2738,7 @@
2738 "ru": "Режим управления администратора (ACM)",
2739 "zh-chs": "管理員控制模式(ACM)",
2740 "xloc": [
2741 - "default.handlebars->27->766"
2741 + "default.handlebars->27->768"
2742 ]
2743 },
2744 {
@@ -2754,7 +2754,7 @@
2754 "ru": "Учетные данные администратора",
2755 "zh-chs": "管理員憑證",
2756 "xloc": [
2757 - "default.handlebars->27->772"
2757 + "default.handlebars->27->774"
2758 ]
2759 },
2760 {
@@ -2789,7 +2789,7 @@
2789 "ru": "Области администратора",
2790 "zh-chs": "管理領域",
2791 "xloc": [
2792 - "default.handlebars->27->1473"
2792 + "default.handlebars->27->1475"
2793 ]
2794 },
2795 {
@@ -2824,7 +2824,7 @@
2824 "ru": "Административные области",
2825 "zh-chs": "行政領域",
2826 "xloc": [
2827 - "default.handlebars->27->1390"
2827 + "default.handlebars->27->1392"
2828 ]
2829 },
2830 {
@@ -2841,7 +2841,7 @@
2841 "ru": "Администратор",
2842 "zh-chs": "管理員",
2843 "xloc": [
2844 - "default.handlebars->27->1347"
2844 + "default.handlebars->27->1349"
2845 ]
2846 },
2847 {
@@ -2858,7 +2858,7 @@
2858 "ru": "Африканский",
2859 "zh-chs": "南非語",
2860 "xloc": [
2861 - "default.handlebars->27->824"
2861 + "default.handlebars->27->826"
2862 ]
2863 },
2864 {
@@ -2878,10 +2878,10 @@
2878 "default-mobile.handlebars->9->125",
2879 "default-mobile.handlebars->9->178",
2880 "default-mobile.handlebars->9->194",
2881 - "default.handlebars->27->1271",
2882 - "default.handlebars->27->1277",
2881 + "default.handlebars->27->1273",
2882 + "default.handlebars->27->1279",
2883 "default.handlebars->27->168",
2884 - "default.handlebars->27->359",
2884 + "default.handlebars->27->361",
2885 "default.handlebars->container->column_l->p15->consoleTable->1->6->1->1->1->0->p15outputselecttd->p15outputselect->1"
2886 ]
2887 },
@@ -2899,8 +2899,8 @@
2899 "ru": "Агент + Intel AMT",
2900 "zh-chs": "代理+英特爾AMT",
2901 "xloc": [
2902 - "default.handlebars->27->1273",
2903 - "default.handlebars->27->1279"
2902 + "default.handlebars->27->1275",
2903 + "default.handlebars->27->1281"
2904 ]
2905 },
2906 {
@@ -2935,7 +2935,7 @@
2935 "zh-chs": "代理控制台",
2936 "xloc": [
2937 "default-mobile.handlebars->9->319",
2938 - "default.handlebars->27->1229"
2938 + "default.handlebars->27->1231"
2939 ]
2940 },
2941 {
@@ -2952,7 +2952,7 @@
2952 "ru": "Счетчик ошибок агента",
2953 "zh-chs": "座席錯誤計數器",
2954 "xloc": [
2955 - "default.handlebars->27->1542"
2955 + "default.handlebars->27->1544"
2956 ]
2957 },
2958 {
@@ -3020,7 +3020,7 @@
3020 "ru": "Сессии агентов",
3021 "zh-chs": "座席會議",
3022 "xloc": [
3023 - "default.handlebars->27->1558"
3023 + "default.handlebars->27->1560"
3024 ]
3025 },
3026 {
@@ -3038,7 +3038,7 @@
3038 "zh-chs": "代理商標籤",
3039 "xloc": [
3040 "default-mobile.handlebars->9->193",
3041 - "default.handlebars->27->479"
3041 + "default.handlebars->27->481"
3042 ]
3043 },
3044 {
@@ -3055,7 +3055,7 @@
3055 "ru": "Типы агента",
3056 "zh-chs": "代理類型",
3057 "xloc": [
3058 - "default.handlebars->27->1275",
3058 + "default.handlebars->27->1277",
3059 "default.handlebars->container->column_l->p21->3->1->meshOsChartDiv->1"
3060 ]
3061 },
@@ -3074,8 +3074,8 @@
3074 "zh-chs": "代理已連接",
3075 "xloc": [
3076 "default.handlebars->27->137",
3077 - "default.handlebars->27->525",
3078 - "default.handlebars->27->526"
3077 + "default.handlebars->27->527",
3078 + "default.handlebars->27->528"
3079 ]
3080 },
3081 {
@@ -3109,7 +3109,7 @@
3109 "ru": "Агент оффлайн",
3110 "zh-chs": "代理離線",
3111 "xloc": [
3112 - "default.handlebars->27->792"
3112 + "default.handlebars->27->794"
3113 ]
3114 },
3115 {
@@ -3126,7 +3126,7 @@
3126 "ru": "Агент онлайн",
3127 "zh-chs": "代理在線",
3128 "xloc": [
3129 - "default.handlebars->27->791"
3129 + "default.handlebars->27->793"
3130 ]
3131 },
3132 {
@@ -3143,7 +3143,7 @@
3143 "ru": "Агенты",
3144 "zh-chs": "代理商",
3145 "xloc": [
3146 - "default.handlebars->27->1571"
3146 + "default.handlebars->27->1573"
3147 ]
3148 },
3149 {
@@ -3160,7 +3160,7 @@
3160 "ru": "Албанский",
3161 "zh-chs": "阿爾巴尼亞語",
3162 "xloc": [
3163 - "default.handlebars->27->825"
3163 + "default.handlebars->27->827"
3164 ]
3165 },
3166 {
@@ -3213,9 +3213,9 @@
3213 "ru": "Фокусирование всех",
3214 "zh-chs": "全部聚焦",
3215 "xloc": [
3216 - "default.handlebars->27->654",
3216 "default.handlebars->27->656",
3218 - "default.handlebars->27->657"
3217 + "default.handlebars->27->658",
3218 + "default.handlebars->27->659"
3219 ]
3220 },
3221 {
@@ -3232,8 +3232,8 @@
3232 "ru": "Разрешить пользователям управлять этой группой и устройствами этой группы.",
3233 "zh-chs": "允許用戶管理此設備組和該組中的設備。",
3234 "xloc": [
3235 - "default.handlebars->27->1185",
3236 - "default.handlebars->27->1443"
3235 + "default.handlebars->27->1187",
3236 + "default.handlebars->27->1445"
3237 ]
3238 },
3239 {
@@ -3246,7 +3246,7 @@
3246 "ru": "Разрешить пользователям управлять этим устройством.",
3247 "zh-chs": "允许用户管理此设备。",
3248 "xloc": [
3249 - "default.handlebars->27->1186"
3249 + "default.handlebars->27->1188"
3250 ]
3251 },
3252 {
@@ -3299,7 +3299,7 @@
3299 "ru": "Поменять (F10 = ESC+0)",
3300 "zh-chs": "備用(F10 = ESC + 0)",
3301 "xloc": [
3302 - "default.handlebars->27->689"
3302 + "default.handlebars->27->691"
3303 ]
3304 },
3305 {
@@ -3332,7 +3332,7 @@
3332 "ru": "Всегда уведомлять",
3333 "zh-chs": "始終通知",
3334 "xloc": [
3335 - "default.handlebars->27->1101"
3335 + "default.handlebars->27->1103"
3336 ]
3337 },
3338 {
@@ -3349,7 +3349,7 @@
3349 "ru": "Всегда запрашивать",
3350 "zh-chs": "總是提示",
3351 "xloc": [
3352 - "default.handlebars->27->1102"
3352 + "default.handlebars->27->1104"
3353 ]
3354 },
3355 {
@@ -3362,7 +3362,13 @@
3362 "ru": "Учетная запись была создана для вас на сервере",
3363 "zh-chs": "在服务器上为您创建了一个帐户",
3364 "xloc": [
3365 - "account-invite.html->0->3"
3365 + "account-invite.html->2->3"
3366 + ]
3367 + },
3368 + {
3369 + "en": "An account was created for you on server [[[SERVERNAME]]] ([[[SERVERURL]]]/), you can access it now with username \"[[[ACCOUNTNAME]]]\" and password \"[[[PASSWORD]]]\".",
3370 + "xloc": [
3371 + "account-invite.txt"
3372 ]
3373 },
3374 {
@@ -3372,10 +3378,7 @@
3378 "fr": "Un compte a été créé pour vous sur le serveur [[[SERVERNAME]]] ([[[SERVERURL]]]/), vous pouvez y accéder maintenant avec le nom d'utilisateur \\\"[[[ACCOUNTNAME]]]\\\" et le mot de passe \\\"[[[PASSWORD]]]\\\".",
3379 "ja": "サーバー[[[SERVERNAME]]]([[[SERVERURL]]]/)にアカウントが作成されました。ユーザー名 \\\"[[[ACCOUNTNAME]]]\\\" とパスワード \\\"[[[PASSWORD]]]\\\"。",
3380 "ru": "Для вас была создана учетная запись на сервере [[[SERVERNAME]]] ([[[SERVERURL]]]/), теперь вы можете получить к ней доступ с помощью имени пользователя \\\"[[[ACCOUNTNAME]]]\\\" и пароля \\\"[[[PASSWORD]]]\\\".",
3375 - "zh-chs": "已在服务器[[[SERVERNAME]]]([[[SERVERURL]]]/ 上为您创建了一个帐户,您现在可以使用用户名\\“ [[[ACCOUNTNAME]]] 和密码 \\\"[[[PASSWORD]]]\\\"。",
3376 - "xloc": [
3377 - "account-invite.txt"
3378 - ]
3381 + "zh-chs": "已在服务器[[[SERVERNAME]]]([[[SERVERURL]]]/ 上为您创建了一个帐户,您现在可以使用用户名\\“ [[[ACCOUNTNAME]]] 和密码 \\\"[[[PASSWORD]]]\\\"。"
3382 },
3383 {
3384 "cs": "Android APK",
@@ -3445,7 +3448,7 @@
3448 "ru": "Антивирус",
3449 "zh-chs": "防毒軟件",
3450 "xloc": [
3448 - "default.handlebars->27->485"
3451 + "default.handlebars->27->487"
3452 ]
3453 },
3454 {
@@ -3462,7 +3465,7 @@
3465 "ru": "Любые поддерживаемые",
3466 "zh-chs": "任何支持",
3467 "xloc": [
3465 - "default.handlebars->27->272"
3468 + "default.handlebars->27->274"
3469 ]
3470 },
3471 {
@@ -3479,7 +3482,7 @@
3482 "ru": "Apple MacOS",
3483 "zh-chs": "蘋果MacOS",
3484 "xloc": [
3482 - "default.handlebars->27->302"
3485 + "default.handlebars->27->304"
3486 ]
3487 },
3488 {
@@ -3496,7 +3499,7 @@
3499 "ru": "Только Apple MacOS",
3500 "zh-chs": "僅限Apple MacOS",
3501 "xloc": [
3499 - "default.handlebars->27->274"
3502 + "default.handlebars->27->276"
3503 ]
3504 },
3505 {
@@ -3529,7 +3532,7 @@
3532 "ru": "Арабский (Алжир)",
3533 "zh-chs": "阿拉伯文(阿爾及利亞)",
3534 "xloc": [
3532 - "default.handlebars->27->827"
3535 + "default.handlebars->27->829"
3536 ]
3537 },
3538 {
@@ -3545,7 +3548,7 @@
3548 "ru": "Арабский (Бахрейн)",
3549 "zh-chs": "阿拉伯文(巴林)",
3550 "xloc": [
3548 - "default.handlebars->27->828"
3551 + "default.handlebars->27->830"
3552 ]
3553 },
3554 {
@@ -3561,7 +3564,7 @@
3564 "ru": "Арабский (Египет)",
3565 "zh-chs": "阿拉伯文(埃及)",
3566 "xloc": [
3564 - "default.handlebars->27->829"
3567 + "default.handlebars->27->831"
3568 ]
3569 },
3570 {
@@ -3577,7 +3580,7 @@
3580 "ru": "Арабский (Ирак)",
3581 "zh-chs": "阿拉伯文(伊拉克)",
3582 "xloc": [
3580 - "default.handlebars->27->830"
3583 + "default.handlebars->27->832"
3584 ]
3585 },
3586 {
@@ -3593,7 +3596,7 @@
3596 "ru": "Арабский (Иордания)",
3597 "zh-chs": "阿拉伯語(約旦)",
3598 "xloc": [
3596 - "default.handlebars->27->831"
3599 + "default.handlebars->27->833"
3600 ]
3601 },
3602 {
@@ -3609,7 +3612,7 @@
3612 "ru": "Арабский (Кувейт)",
3613 "zh-chs": "阿拉伯文(科威特)",
3614 "xloc": [
3612 - "default.handlebars->27->832"
3615 + "default.handlebars->27->834"
3616 ]
3617 },
3618 {
@@ -3625,7 +3628,7 @@
3628 "ru": "Арабский (Ливан)",
3629 "zh-chs": "阿拉伯語(黎巴嫩)",
3630 "xloc": [
3628 - "default.handlebars->27->833"
3631 + "default.handlebars->27->835"
3632 ]
3633 },
3634 {
@@ -3641,7 +3644,7 @@
3644 "ru": "Арабский (Ливия)",
3645 "zh-chs": "阿拉伯文(利比亞)",
3646 "xloc": [
3644 - "default.handlebars->27->834"
3647 + "default.handlebars->27->836"
3648 ]
3649 },
3650 {
@@ -3657,7 +3660,7 @@
3660 "ru": "Арабский (Марокко)",
3661 "zh-chs": "阿拉伯文(摩洛哥)",
3662 "xloc": [
3660 - "default.handlebars->27->835"
3663 + "default.handlebars->27->837"
3664 ]
3665 },
3666 {
@@ -3673,7 +3676,7 @@
3676 "ru": "Арабский (Оман)",
3677 "zh-chs": "阿拉伯文(阿曼)",
3678 "xloc": [
3676 - "default.handlebars->27->836"
3679 + "default.handlebars->27->838"
3680 ]
3681 },
3682 {
@@ -3689,7 +3692,7 @@
3692 "ru": "Арабский (Катар)",
3693 "zh-chs": "阿拉伯語(卡塔爾)",
3694 "xloc": [
3692 - "default.handlebars->27->837"
3695 + "default.handlebars->27->839"
3696 ]
3697 },
3698 {
@@ -3705,7 +3708,7 @@
3708 "ru": "Арабский (Саудовская Аравия)",
3709 "zh-chs": "阿拉伯語(沙特阿拉伯)",
3710 "xloc": [
3708 - "default.handlebars->27->838"
3711 + "default.handlebars->27->840"
3712 ]
3713 },
3714 {
@@ -3721,7 +3724,7 @@
3724 "ru": "Арабский (стандартный)",
3725 "zh-chs": "阿拉伯語(標準)",
3726 "xloc": [
3724 - "default.handlebars->27->826"
3727 + "default.handlebars->27->828"
3728 ]
3729 },
3730 {
@@ -3737,7 +3740,7 @@
3740 "ru": "Арабский (Сирия)",
3741 "zh-chs": "阿拉伯語(敘利亞)",
3742 "xloc": [
3740 - "default.handlebars->27->839"
3743 + "default.handlebars->27->841"
3744 ]
3745 },
3746 {
@@ -3753,7 +3756,7 @@
3756 "ru": "Арабский (Тунис)",
3757 "zh-chs": "阿拉伯文(突尼斯)",
3758 "xloc": [
3756 - "default.handlebars->27->840"
3759 + "default.handlebars->27->842"
3760 ]
3761 },
3762 {
@@ -3769,7 +3772,7 @@
3772 "ru": "Арабский (О.А.Э.)",
3773 "zh-chs": "阿拉伯文(阿聯酋)",
3774 "xloc": [
3772 - "default.handlebars->27->841"
3775 + "default.handlebars->27->843"
3776 ]
3777 },
3778 {
@@ -3785,7 +3788,7 @@
3788 "ru": "Арабский (Йемен)",
3789 "zh-chs": "阿拉伯文(也門)",
3790 "xloc": [
3788 - "default.handlebars->27->842"
3791 + "default.handlebars->27->844"
3792 ]
3793 },
3794 {
@@ -3801,7 +3804,7 @@
3804 "ru": "Арагонский",
3805 "zh-chs": "阿拉貢人",
3806 "xloc": [
3804 - "default.handlebars->27->843"
3807 + "default.handlebars->27->845"
3808 ]
3809 },
3810 {
@@ -3818,7 +3821,7 @@
3821 "ru": "Архитектура",
3822 "zh-chs": "建築",
3823 "xloc": [
3821 - "default.handlebars->27->740"
3824 + "default.handlebars->27->742"
3825 ]
3826 },
3827 {
@@ -3853,7 +3856,7 @@
3856 "zh-chs": "您確定要刪除組{0}嗎?刪除設備組還將刪除該組中有關設備的所有信息。",
3857 "xloc": [
3858 "default-mobile.handlebars->9->290",
3856 - "default.handlebars->27->1165"
3859 + "default.handlebars->27->1167"
3860 ]
3861 },
3862 {
@@ -3870,7 +3873,7 @@
3873 "ru": "Вы действительно хотите удалить устройство \\\"{0}\\\"?",
3874 "zh-chs": "您確定要刪除節點{0}嗎?",
3875 "xloc": [
3873 - "default.handlebars->27->613"
3876 + "default.handlebars->27->615"
3877 ]
3878 },
3879 {
@@ -3887,7 +3890,7 @@
3890 "ru": "Вы действительно хотите деинсталировать выбранного агента?",
3891 "zh-chs": "您確定要卸載所選代理嗎?",
3892 "xloc": [
3890 - "default.handlebars->27->602"
3893 + "default.handlebars->27->604"
3894 ]
3895 },
3896 {
@@ -3904,7 +3907,7 @@
3907 "ru": "Вы действительно хотите деинсталлировать выбранных {0} агентов?",
3908 "zh-chs": "您確定要卸載所選的{0}代理嗎?",
3909 "xloc": [
3907 - "default.handlebars->27->601"
3910 + "default.handlebars->27->603"
3911 ]
3912 },
3913 {
@@ -3921,7 +3924,7 @@
3924 "ru": "Вы уверенны, что {0} плагин: {1}",
3925 "zh-chs": "您確定要{0}插件嗎:{1}",
3926 "xloc": [
3924 - "default.handlebars->27->1611"
3927 + "default.handlebars->27->1613"
3928 ]
3929 },
3930 {
@@ -3937,7 +3940,7 @@
3940 "ru": "Армянский",
3941 "zh-chs": "亞美尼亞人",
3942 "xloc": [
3940 - "default.handlebars->27->844"
3943 + "default.handlebars->27->846"
3944 ]
3945 },
3946 {
@@ -3953,7 +3956,7 @@
3956 "ru": "Ассамский",
3957 "zh-chs": "阿薩姆語",
3958 "xloc": [
3956 - "default.handlebars->27->845"
3959 + "default.handlebars->27->847"
3960 ]
3961 },
3962 {
@@ -3969,7 +3972,7 @@
3972 "ru": "Астурии",
3973 "zh-chs": "阿斯圖里亞斯人",
3974 "xloc": [
3972 - "default.handlebars->27->846"
3975 + "default.handlebars->27->848"
3976 ]
3977 },
3978 {
@@ -3986,7 +3989,7 @@
3989 "ru": "Приложение аутентификации",
3990 "zh-chs": "身份驗證應用",
3991 "xloc": [
3989 - "default.handlebars->27->1474"
3992 + "default.handlebars->27->1476"
3993 ]
3994 },
3995 {
@@ -4009,8 +4012,8 @@
4012 "default-mobile.handlebars->9->35",
4013 "default.handlebars->27->105",
4014 "default.handlebars->27->110",
4012 - "default.handlebars->27->810",
4013 - "default.handlebars->27->812"
4015 + "default.handlebars->27->812",
4016 + "default.handlebars->27->814"
4017 ]
4018 },
4019 {
@@ -4078,7 +4081,7 @@
4081 "ru": "Автоудаление",
4082 "zh-chs": "自動刪除",
4083 "xloc": [
4081 - "default.handlebars->27->1089"
4084 + "default.handlebars->27->1091"
4085 ]
4086 },
4087 {
@@ -4131,7 +4134,7 @@
4134 "ru": "Азербайджанский",
4135 "zh-chs": "阿塞拜疆",
4136 "xloc": [
4134 - "default.handlebars->27->847"
4137 + "default.handlebars->27->849"
4138 ]
4139 },
4140 {
@@ -4148,7 +4151,7 @@
4151 "ru": "BIOS",
4152 "zh-chs": "的BIOS",
4153 "xloc": [
4151 - "default.handlebars->27->778"
4154 + "default.handlebars->27->780"
4155 ]
4156 },
4157 {
@@ -4226,7 +4229,7 @@
4229 "ru": "Фоновый и интерактивный",
4230 "zh-chs": "背景與互動",
4231 "xloc": [
4229 - "default.handlebars->27->306"
4232 + "default.handlebars->27->308"
4233 ]
4234 },
4235 {
@@ -4243,9 +4246,9 @@
4246 "ru": "Фоновый и интерактивный",
4247 "zh-chs": "背景與互動",
4248 "xloc": [
4246 - "default.handlebars->27->1254",
4247 - "default.handlebars->27->1261",
4248 - "default.handlebars->27->284"
4249 + "default.handlebars->27->1256",
4250 + "default.handlebars->27->1263",
4251 + "default.handlebars->27->286"
4252 ]
4253 },
4254 {
@@ -4262,10 +4265,10 @@
4265 "ru": "Только фоновый",
4266 "zh-chs": "僅背景",
4267 "xloc": [
4265 - "default.handlebars->27->1255",
4266 - "default.handlebars->27->1262",
4267 - "default.handlebars->27->285",
4268 - "default.handlebars->27->307"
4268 + "default.handlebars->27->1257",
4269 + "default.handlebars->27->1264",
4270 + "default.handlebars->27->287",
4271 + "default.handlebars->27->309"
4272 ]
4273 },
4274 {
@@ -4299,7 +4302,7 @@
4302 "ru": "Резервные коды",
4303 "zh-chs": "備用碼",
4304 "xloc": [
4302 - "default.handlebars->27->1476"
4305 + "default.handlebars->27->1478"
4306 ]
4307 },
4308 {
@@ -4316,7 +4319,7 @@
4319 "ru": "Плохой ключ",
4320 "zh-chs": "錯誤的簽名",
4321 "xloc": [
4319 - "default.handlebars->27->1549"
4322 + "default.handlebars->27->1551"
4323 ]
4324 },
4325 {
@@ -4333,7 +4336,7 @@
4336 "ru": "Плохой веб-сертификат",
4337 "zh-chs": "錯誤的網絡證書",
4338 "xloc": [
4336 - "default.handlebars->27->1548"
4339 + "default.handlebars->27->1550"
4340 ]
4341 },
4342 {
@@ -4349,7 +4352,7 @@
4352 "ru": "Баскский",
4353 "zh-chs": "巴斯克",
4354 "xloc": [
4352 - "default.handlebars->27->848"
4355 + "default.handlebars->27->850"
4356 ]
4357 },
4358 {
@@ -4382,7 +4385,7 @@
4385 "ru": "Белорусский",
4386 "zh-chs": "白俄羅斯語",
4387 "xloc": [
4385 - "default.handlebars->27->850"
4388 + "default.handlebars->27->852"
4389 ]
4390 },
4391 {
@@ -4398,7 +4401,7 @@
4401 "ru": "Бенгальский",
4402 "zh-chs": "孟加拉",
4403 "xloc": [
4401 - "default.handlebars->27->851"
4404 + "default.handlebars->27->853"
4405 ]
4406 },
4407 {
@@ -4411,9 +4414,9 @@
4414 "ru": "С уважением,",
4415 "zh-chs": "最好的祝福,",
4416 "xloc": [
4414 - "account-invite.html->0",
4417 + "account-invite.html->2",
4418 "account-invite.txt",
4416 - "mesh-invite.html->0",
4419 + "mesh-invite.html->2",
4420 "mesh-invite.txt"
4421 ]
4422 },
@@ -4430,7 +4433,7 @@
4433 "ru": "Боснийский",
4434 "zh-chs": "波斯尼亞人",
4435 "xloc": [
4433 - "default.handlebars->27->852"
4436 + "default.handlebars->27->854"
4437 ]
4438 },
4439 {
@@ -4446,7 +4449,7 @@
4449 "ru": "Бретонский",
4450 "zh-chs": "布列塔尼",
4451 "xloc": [
4449 - "default.handlebars->27->853"
4452 + "default.handlebars->27->855"
4453 ]
4454 },
4455 {
@@ -4463,7 +4466,7 @@
4466 "ru": "Отправить сообщение",
4467 "zh-chs": "廣播",
4468 "xloc": [
4466 - "default.handlebars->27->1419",
4469 + "default.handlebars->27->1421",
4470 "default.handlebars->container->column_l->p4->3->1->0->3->1"
4471 ]
4472 },
@@ -4481,7 +4484,7 @@
4484 "ru": "Отправить сообщение",
4485 "zh-chs": "廣播消息",
4486 "xloc": [
4484 - "default.handlebars->27->1375"
4487 + "default.handlebars->27->1377"
4488 ]
4489 },
4490 {
@@ -4498,7 +4501,7 @@
4501 "ru": "Отправить сообщение всем подключенным пользователям.",
4502 "zh-chs": "向所有連接的用戶廣播消息。",
4503 "xloc": [
4501 - "default.handlebars->27->1374"
4504 + "default.handlebars->27->1376"
4505 ]
4506 },
4507 {
@@ -4514,7 +4517,7 @@
4517 "ru": "Болгарский",
4518 "zh-chs": "保加利亞語",
4519 "xloc": [
4517 - "default.handlebars->27->849"
4520 + "default.handlebars->27->851"
4521 ]
4522 },
4523 {
@@ -4530,7 +4533,7 @@
4533 "ru": "Бирманский",
4534 "zh-chs": "緬甸人",
4535 "xloc": [
4533 - "default.handlebars->27->854"
4536 + "default.handlebars->27->856"
4537 ]
4538 },
4539 {
@@ -4548,7 +4551,7 @@
4551 "zh-chs": "CCM",
4552 "xloc": [
4553 "default-mobile.handlebars->9->185",
4551 - "default.handlebars->27->465"
4554 + "default.handlebars->27->467"
4555 ]
4556 },
4557 {
@@ -4566,10 +4569,10 @@
4569 "zh-chs": "CIRA",
4570 "xloc": [
4571 "default-mobile.handlebars->9->126",
4569 - "default.handlebars->27->1153",
4570 - "default.handlebars->27->1158",
4572 + "default.handlebars->27->1155",
4573 + "default.handlebars->27->1160",
4574 "default.handlebars->27->170",
4572 - "default.handlebars->27->361"
4575 + "default.handlebars->27->363"
4576 ]
4577 },
4578 {
@@ -4586,7 +4589,7 @@
4589 "ru": "CIRA Сервер",
4590 "zh-chs": "CIRA服務器",
4591 "xloc": [
4589 - "default.handlebars->27->1599"
4592 + "default.handlebars->27->1601"
4593 ]
4594 },
4595 {
@@ -4603,7 +4606,7 @@
4606 "ru": "CIRA Сервер команды",
4607 "zh-chs": "CIRA服務器命令",
4608 "xloc": [
4606 - "default.handlebars->27->1600"
4609 + "default.handlebars->27->1602"
4610 ]
4611 },
4612 {
@@ -4620,7 +4623,7 @@
4623 "ru": "Загрузка CPU",
4624 "zh-chs": "CPU負載",
4625 "xloc": [
4623 - "default.handlebars->27->1563"
4626 + "default.handlebars->27->1565"
4627 ]
4628 },
4629 {
@@ -4637,7 +4640,7 @@
4640 "ru": "Загрузка CPU за последние 15 минут",
4641 "zh-chs": "最近15分鐘的CPU負載",
4642 "xloc": [
4640 - "default.handlebars->27->1566"
4643 + "default.handlebars->27->1568"
4644 ]
4645 },
4646 {
@@ -4654,7 +4657,7 @@
4657 "ru": "Загрузка CPU за последние 5 минут",
4658 "zh-chs": "最近5分鐘的CPU負載",
4659 "xloc": [
4657 - "default.handlebars->27->1565"
4660 + "default.handlebars->27->1567"
4661 ]
4662 },
4663 {
@@ -4671,7 +4674,7 @@
4674 "ru": "Загрузка CPU за последнюю минуту",
4675 "zh-chs": "最後一分鐘的CPU負載",
4676 "xloc": [
4674 - "default.handlebars->27->1564"
4677 + "default.handlebars->27->1566"
4678 ]
4679 },
4680 {
@@ -4688,8 +4691,8 @@
4691 "ru": "CR+LF",
4692 "zh-chs": "CR +低頻",
4693 "xloc": [
4691 - "default.handlebars->27->682",
4692 - "default.handlebars->27->691",
4694 + "default.handlebars->27->684",
4695 + "default.handlebars->27->693",
4696 "default.handlebars->container->column_l->p12->termTable->1->1->6->1->1->terminalSettingsButtons"
4697 ]
4698 },
@@ -4707,9 +4710,9 @@
4710 "ru": "Формат CSV",
4711 "zh-chs": "CSV格式",
4712 "xloc": [
4710 - "default.handlebars->27->1322",
4711 - "default.handlebars->27->1366",
4712 - "default.handlebars->27->388"
4713 + "default.handlebars->27->1324",
4714 + "default.handlebars->27->1368",
4715 + "default.handlebars->27->390"
4716 ]
4717 },
4718 {
@@ -4726,7 +4729,7 @@
4729 "ru": "Ошибка вызова",
4730 "zh-chs": "通話錯誤",
4731 "xloc": [
4729 - "default.handlebars->27->1612"
4732 + "default.handlebars->27->1614"
4733 ]
4734 },
4735 {
@@ -4745,7 +4748,7 @@
4748 "xloc": [
4749 "default-mobile.handlebars->9->44",
4750 "default-mobile.handlebars->dialog->idx_dlgButtonBar",
4748 - "default.handlebars->27->1074",
4751 + "default.handlebars->27->1076",
4752 "default.handlebars->container->dialog->idx_dlgButtonBar",
4753 "login-mobile.handlebars->dialog->idx_dlgButtonBar",
4754 "login.handlebars->dialog->idx_dlgButtonBar",
@@ -4767,7 +4770,7 @@
4770 "ru": "Объем / Скорость",
4771 "zh-chs": "容量/速度",
4772 "xloc": [
4770 - "default.handlebars->27->785"
4773 + "default.handlebars->27->787"
4774 ]
4775 },
4776 {
@@ -4784,7 +4787,7 @@
4787 "ru": "Каталонский",
4788 "zh-chs": "加泰羅尼亞語",
4789 "xloc": [
4787 - "default.handlebars->27->855"
4790 + "default.handlebars->27->857"
4791 ]
4792 },
4793 {
@@ -4801,7 +4804,7 @@
4804 "ru": "Установить центр карты здесь",
4805 "zh-chs": "中心地圖在這裡",
4806 "xloc": [
4804 - "default.handlebars->27->428"
4807 + "default.handlebars->27->430"
4808 ]
4809 },
4810 {
@@ -4818,7 +4821,7 @@
4821 "ru": "Чаморро",
4822 "zh-chs": "查莫羅",
4823 "xloc": [
4821 - "default.handlebars->27->856"
4824 + "default.handlebars->27->858"
4825 ]
4826 },
4827 {
@@ -4835,7 +4838,7 @@
4838 "ru": "Смена email для {0}",
4839 "zh-chs": "更改{0}的電子郵件",
4840 "xloc": [
4838 - "default.handlebars->27->1493"
4841 + "default.handlebars->27->1495"
4842 ]
4843 },
4844 {
@@ -4852,9 +4855,9 @@
4855 "ru": "Смена группы",
4856 "zh-chs": "變更組",
4857 "xloc": [
4855 - "default.handlebars->27->506",
4856 - "default.handlebars->27->610",
4857 - "default.handlebars->27->611"
4858 + "default.handlebars->27->508",
4859 + "default.handlebars->27->612",
4860 + "default.handlebars->27->613"
4861 ]
4862 },
4863 {
@@ -4872,8 +4875,8 @@
4875 "zh-chs": "更改密碼",
4876 "xloc": [
4877 "default-mobile.handlebars->9->52",
4875 - "default.handlebars->27->1050",
4876 - "default.handlebars->27->1486"
4878 + "default.handlebars->27->1052",
4879 + "default.handlebars->27->1488"
4880 ]
4881 },
4882 {
@@ -4890,7 +4893,7 @@
4893 "ru": "Смена пароля для {0}",
4894 "zh-chs": "更改{0}的密碼",
4895 "xloc": [
4893 - "default.handlebars->27->1500"
4896 + "default.handlebars->27->1502"
4897 ]
4898 },
4899 {
@@ -4959,7 +4962,7 @@
4962 "ru": "Изменить пароль для этого пользователя",
4963 "zh-chs": "更改該用戶的密碼",
4964 "xloc": [
4962 - "default.handlebars->27->1485"
4965 + "default.handlebars->27->1487"
4966 ]
4967 },
4968 {
@@ -4993,7 +4996,7 @@
4996 "ru": "Измените адрес электронной почты вашей учетной записи здесь.",
4997 "zh-chs": "在此處更改您的帳戶電子郵件地址。",
4998 "xloc": [
4996 - "default.handlebars->27->1037"
4999 + "default.handlebars->27->1039"
5000 ]
5001 },
5002 {
@@ -5010,7 +5013,7 @@
5013 "ru": "Измените пароль своей учетной записи, введя старый пароль и дважды новый пароль в поля ниже.",
5014 "zh-chs": "在下面的框中兩次輸入舊密碼和新密碼,以更改帳戶密碼。",
5015 "xloc": [
5013 - "default.handlebars->27->1043"
5016 + "default.handlebars->27->1045"
5017 ]
5018 },
5019 {
@@ -5027,7 +5030,7 @@
5030 "ru": "Изменение языка потребует перезагрузить страницу.",
5031 "zh-chs": "更改語言將需要刷新頁面。",
5032 "xloc": [
5030 - "default.handlebars->27->1022"
5033 + "default.handlebars->27->1024"
5034 ]
5035 },
5036 {
@@ -5044,9 +5047,9 @@
5047 "ru": "Чат",
5048 "zh-chs": "聊天室",
5049 "xloc": [
5047 - "default.handlebars->27->1339",
5048 - "default.handlebars->27->552",
5049 - "default.handlebars->27->571"
5050 + "default.handlebars->27->1341",
5051 + "default.handlebars->27->554",
5052 + "default.handlebars->27->573"
5053 ]
5054 },
5055 {
@@ -5065,8 +5068,8 @@
5068 "xloc": [
5069 "default-mobile.handlebars->9->311",
5070 "default-mobile.handlebars->9->329",
5068 - "default.handlebars->27->1212",
5069 - "default.handlebars->27->1240"
5071 + "default.handlebars->27->1214",
5072 + "default.handlebars->27->1242"
5073 ]
5074 },
5075 {
@@ -5083,7 +5086,7 @@
5086 "ru": "Чеченский",
5087 "zh-chs": "車臣",
5088 "xloc": [
5086 - "default.handlebars->27->857"
5089 + "default.handlebars->27->859"
5090 ]
5091 },
5092 {
@@ -5151,8 +5154,8 @@
5154 "ru": "Проверка...",
5155 "zh-chs": "檢查...",
5156 "xloc": [
5154 - "default.handlebars->27->1606",
5155 - "default.handlebars->27->823"
5157 + "default.handlebars->27->1608",
5158 + "default.handlebars->27->825"
5159 ]
5160 },
5161 {
@@ -5169,7 +5172,7 @@
5172 "ru": "Китайский",
5173 "zh-chs": "中文",
5174 "xloc": [
5172 - "default.handlebars->27->858"
5175 + "default.handlebars->27->860"
5176 ]
5177 },
5178 {
@@ -5185,7 +5188,7 @@
5188 "ru": "Китайский (Гонконг)",
5189 "zh-chs": "中文(香港)",
5190 "xloc": [
5188 - "default.handlebars->27->859"
5191 + "default.handlebars->27->861"
5192 ]
5193 },
5194 {
@@ -5201,7 +5204,7 @@
5204 "ru": "Китайский (КНР)",
5205 "zh-chs": "中文(中國)",
5206 "xloc": [
5204 - "default.handlebars->27->860"
5207 + "default.handlebars->27->862"
5208 ]
5209 },
5210 {
@@ -5215,7 +5218,7 @@
5218 "ru": "Упрощенный китайский)",
5219 "zh-chs": "简体中文)",
5220 "xloc": [
5218 - "default.handlebars->27->1020"
5221 + "default.handlebars->27->1022"
5222 ]
5223 },
5224 {
@@ -5231,7 +5234,7 @@
5234 "ru": "Китайский (Сингапур)",
5235 "zh-chs": "中文(新加坡)",
5236 "xloc": [
5234 - "default.handlebars->27->861"
5237 + "default.handlebars->27->863"
5238 ]
5239 },
5240 {
@@ -5247,7 +5250,7 @@
5250 "ru": "Китайский (Тайвань)",
5251 "zh-chs": "中文(台灣)",
5252 "xloc": [
5250 - "default.handlebars->27->862"
5253 + "default.handlebars->27->864"
5254 ]
5255 },
5256 {
@@ -5281,7 +5284,7 @@
5284 "ru": "Чувашский",
5285 "zh-chs": "楚瓦什",
5286 "xloc": [
5284 - "default.handlebars->27->863"
5287 + "default.handlebars->27->865"
5288 ]
5289 },
5290 {
@@ -5321,11 +5324,11 @@
5324 "default-mobile.handlebars->9->272",
5325 "default-mobile.handlebars->9->28",
5326 "default-mobile.handlebars->9->94",
5324 - "default.handlebars->27->1316",
5325 - "default.handlebars->27->717",
5327 + "default.handlebars->27->1318",
5328 "default.handlebars->27->719",
5329 "default.handlebars->27->721",
5330 "default.handlebars->27->723",
5331 + "default.handlebars->27->725",
5332 "default.handlebars->container->column_l->p15->consoleTable->1->6->1->1->1->0->7",
5333 "default.handlebars->container->column_l->p41->3->1",
5334 "messenger.handlebars->xbottom"
@@ -5362,7 +5365,7 @@
5365 "ru": "Очистить ядро",
5366 "zh-chs": "清除核心",
5367 "xloc": [
5365 - "default.handlebars->27->801"
5368 + "default.handlebars->27->803"
5369 ]
5370 },
5371 {
@@ -5392,7 +5395,7 @@
5395 "ru": "Очистить это уведомление",
5396 "zh-chs": "清除此通知",
5397 "xloc": [
5395 - "default.handlebars->27->1536"
5398 + "default.handlebars->27->1538"
5399 ]
5400 },
5401 {
@@ -5405,7 +5408,7 @@
5408 "ru": "Нажмите здесь, чтобы загрузить MeshAgent для Apple OSX.",
5409 "zh-chs": "单击此处下载适用于Apple OSX的MeshAgent。",
5410 "xloc": [
5408 - "mesh-invite.html->0->11->1->0"
5411 + "mesh-invite.html->2->11->1->0"
5412 ]
5413 },
5414 {
@@ -5418,7 +5421,7 @@
5421 "ru": "Нажмите здесь, чтобы загрузить MeshAgent для Windows.",
5422 "zh-chs": "单击此处下载适用于Windows的MeshAgent。",
5423 "xloc": [
5421 - "mesh-invite.html->0->9->1->1"
5424 + "mesh-invite.html->2->9->1->1"
5425 ]
5426 },
5427 {
@@ -5435,7 +5438,7 @@
5438 "ru": "Для изменения имени устройства на сервере нажмите сюда",
5439 "zh-chs": "單擊此處編輯服務器端設備名稱",
5440 "xloc": [
5438 - "default.handlebars->27->442"
5441 + "default.handlebars->27->444"
5442 ]
5443 },
5444 {
@@ -5448,7 +5451,7 @@
5451 "ru": "Нажмите здесь, чтобы сбросить пароль учетной записи.",
5452 "zh-chs": "单击此处重置您的帐户密码。",
5453 "xloc": [
5451 - "account-reset.html->0->5->1"
5454 + "account-reset.html->2->5->1"
5455 ]
5456 },
5457 {
@@ -5461,7 +5464,7 @@
5464 "ru": "Нажмите здесь, чтобы подтвердить свой адрес электронной почты.",
5465 "zh-chs": "单击此处以验证您的电子邮件地址。",
5466 "xloc": [
5464 - "account-check.html->0->5->1"
5467 + "account-check.html->2->5->1"
5468 ]
5469 },
5470 {
@@ -5479,7 +5482,7 @@
5482 "zh-chs": "單擊確定將驗證郵件發送到:",
5483 "xloc": [
5484 "default-mobile.handlebars->9->37",
5482 - "default.handlebars->27->1034"
5485 + "default.handlebars->27->1036"
5486 ]
5487 },
5488 {
@@ -5513,7 +5516,7 @@
5516 "ru": "Режим управления клиентом (CCM)",
5517 "zh-chs": "客戶端控制模式(CCM)",
5518 "xloc": [
5516 - "default.handlebars->27->765"
5519 + "default.handlebars->27->767"
5520 ]
5521 },
5522 {
@@ -5530,8 +5533,8 @@
5533 "ru": "Клиент инициировал удаленный доступ",
5534 "zh-chs": "客戶端啟動的遠程訪問",
5535 "xloc": [
5533 - "default.handlebars->27->1152",
5534 - "default.handlebars->27->1157"
5536 + "default.handlebars->27->1154",
5537 + "default.handlebars->27->1159"
5538 ]
5539 },
5540 {
@@ -5568,7 +5571,7 @@
5571 "default-mobile.handlebars->9->26",
5572 "default.handlebars->27->117",
5573 "default.handlebars->27->125",
5571 - "default.handlebars->27->675"
5574 + "default.handlebars->27->677"
5575 ]
5576 },
5577 {
@@ -5603,8 +5606,8 @@
5606 "ru": "Общие группы устройств",
5607 "zh-chs": "通用設備組",
5608 "xloc": [
5606 - "default.handlebars->27->1427",
5607 - "default.handlebars->27->1510"
5609 + "default.handlebars->27->1429",
5610 + "default.handlebars->27->1512"
5611 ]
5612 },
5613 {
@@ -5620,7 +5623,7 @@
5623 "ru": "Общие устройства",
5624 "zh-chs": "通用設備",
5625 "xloc": [
5623 - "default.handlebars->27->1504"
5626 + "default.handlebars->27->1506"
5627 ]
5628 },
5629 {
@@ -5638,7 +5641,7 @@
5641 "zh-chs": "將{1}入口{2}中的{0}限製到此位置?",
5642 "xloc": [
5643 "default-mobile.handlebars->9->89",
5641 - "default.handlebars->27->1311"
5644 + "default.handlebars->27->1313"
5645 ]
5646 },
5647 {
@@ -5657,11 +5660,11 @@
5660 "xloc": [
5661 "default-mobile.handlebars->9->224",
5662 "default-mobile.handlebars->9->291",
5660 - "default.handlebars->27->1166",
5661 - "default.handlebars->27->1439",
5662 - "default.handlebars->27->385",
5663 - "default.handlebars->27->605",
5664 - "default.handlebars->27->614"
5663 + "default.handlebars->27->1168",
5664 + "default.handlebars->27->1441",
5665 + "default.handlebars->27->387",
5666 + "default.handlebars->27->607",
5667 + "default.handlebars->27->616"
5668 ]
5669 },
5670 {
@@ -5679,7 +5682,7 @@
5682 "zh-chs": "確認將1個副本複製到此位置?",
5683 "xloc": [
5684 "default-mobile.handlebars->9->261",
5682 - "default.handlebars->27->712"
5685 + "default.handlebars->27->714"
5686 ]
5687 },
5688 {
@@ -5697,7 +5700,7 @@
5700 "zh-chs": "確認{0}個條目的副本到此位置?",
5701 "xloc": [
5702 "default-mobile.handlebars->9->260",
5700 - "default.handlebars->27->711"
5703 + "default.handlebars->27->713"
5704 ]
5705 },
5706 {
@@ -5714,7 +5717,7 @@
5717 "ru": "Подтвердить удаление выбранных устройств?",
5718 "zh-chs": "確認刪除所選設備?",
5719 "xloc": [
5717 - "default.handlebars->27->384"
5720 + "default.handlebars->27->386"
5721 ]
5722 },
5723 {
@@ -5730,7 +5733,7 @@
5733 "ru": "Подтвердить удаление пользователя {0}?",
5734 "zh-chs": "確認刪除用戶{0}?",
5735 "xloc": [
5733 - "default.handlebars->27->1502"
5736 + "default.handlebars->27->1504"
5737 ]
5738 },
5739 {
@@ -5748,7 +5751,7 @@
5751 "zh-chs": "確認將1個入口移動到此位置?",
5752 "xloc": [
5753 "default-mobile.handlebars->9->263",
5751 - "default.handlebars->27->714"
5754 + "default.handlebars->27->716"
5755 ]
5756 },
5757 {
@@ -5766,7 +5769,7 @@
5769 "zh-chs": "確認將{0}個條目移到此位置?",
5770 "xloc": [
5771 "default-mobile.handlebars->9->262",
5769 - "default.handlebars->27->713"
5772 + "default.handlebars->27->715"
5773 ]
5774 },
5775 {
@@ -5783,7 +5786,7 @@
5786 "ru": "Подтвердить перезапись?",
5787 "zh-chs": "確認覆蓋?",
5788 "xloc": [
5786 - "default.handlebars->27->1310"
5789 + "default.handlebars->27->1312"
5790 ]
5791 },
5792 {
@@ -5801,7 +5804,7 @@
5804 "zh-chs": "確認刪除身份驗證器應用程序兩步登錄?",
5805 "xloc": [
5806 "default-mobile.handlebars->9->36",
5804 - "default.handlebars->27->813"
5807 + "default.handlebars->27->815"
5808 ]
5809 },
5810 {
@@ -5818,8 +5821,8 @@
5821 "ru": "Подтвердить удаление группы устройств {0}?",
5822 "zh-chs": "確認刪除設備組{0}?",
5823 "xloc": [
5821 - "default.handlebars->27->1434",
5822 - "default.handlebars->27->1531"
5824 + "default.handlebars->27->1436",
5825 + "default.handlebars->27->1533"
5826 ]
5827 },
5828 {
@@ -5832,7 +5835,7 @@
5835 "ru": "Подтвердите удаление устройства {0}?",
5836 "zh-chs": "确认移除设备{0}?",
5837 "xloc": [
5835 - "default.handlebars->27->1522"
5838 + "default.handlebars->27->1524"
5839 ]
5840 },
5841 {
@@ -5849,7 +5852,7 @@
5852 "ru": "Подтвердить удаление группы {0}?",
5853 "zh-chs": "確認刪除組{0}?",
5854 "xloc": [
5852 - "default.handlebars->27->1527"
5855 + "default.handlebars->27->1529"
5856 ]
5857 },
5858 {
@@ -5867,9 +5870,9 @@
5870 "zh-chs": "確認刪除用戶{0}?",
5871 "xloc": [
5872 "default-mobile.handlebars->9->337",
5870 - "default.handlebars->27->1249",
5871 - "default.handlebars->27->1442",
5872 - "default.handlebars->27->1524"
5873 + "default.handlebars->27->1251",
5874 + "default.handlebars->27->1444",
5875 + "default.handlebars->27->1526"
5876 ]
5877 },
5878 {
@@ -5889,8 +5892,8 @@
5892 "default-mobile.handlebars->9->240",
5893 "default-mobile.handlebars->container->page_content->column_l->p10->p10desktop->deskarea1->1->3",
5894 "default-mobile.handlebars->container->page_content->column_l->p10->p10files->p13toolbar->1->0->1->3",
5892 - "default.handlebars->27->1105",
5893 - "default.handlebars->27->694",
5895 + "default.handlebars->27->1107",
5896 + "default.handlebars->27->696",
5897 "default.handlebars->container->column_l->p11->deskarea0->deskarea1->3->connectbutton1span",
5898 "default.handlebars->container->column_l->p12->termTable->1->1->0->1->3->connectbutton2span",
5899 "default.handlebars->container->column_l->p13->p13toolbar->1->0->1->3",
@@ -5929,8 +5932,8 @@
5932 "ru": "Подключиться к серверу",
5933 "zh-chs": "連接到服務器",
5934 "xloc": [
5932 - "default.handlebars->27->1156",
5933 - "default.handlebars->27->1160"
5935 + "default.handlebars->27->1158",
5936 + "default.handlebars->27->1162"
5937 ]
5938 },
5939 {
@@ -6001,7 +6004,7 @@
6004 "ru": "Подключено Intel&reg; AMT",
6005 "zh-chs": "連接的英特爾&reg;AMT",
6006 "xloc": [
6004 - "default.handlebars->27->1554"
6007 + "default.handlebars->27->1556"
6008 ]
6009 },
6010 {
@@ -6018,7 +6021,7 @@
6021 "ru": "Подключенные пользователи",
6022 "zh-chs": "關聯用戶",
6023 "xloc": [
6021 - "default.handlebars->27->1559"
6024 + "default.handlebars->27->1561"
6025 ]
6026 },
6027 {
@@ -6034,7 +6037,7 @@
6037 "ru": "Подключено сейчас",
6038 "zh-chs": "現在已連接",
6039 "xloc": [
6037 - "default.handlebars->27->744"
6040 + "default.handlebars->27->746"
6041 ]
6042 },
6043 {
@@ -6074,7 +6077,7 @@
6077 "default.handlebars->27->195",
6078 "default.handlebars->27->198",
6079 "default.handlebars->27->204",
6077 - "default.handlebars->27->735",
6080 + "default.handlebars->27->737",
6081 "default.handlebars->27->9",
6082 "xterm.handlebars->9->2"
6083 ]
@@ -6093,7 +6096,7 @@
6096 "ru": "Подключений ",
6097 "zh-chs": "連接數",
6098 "xloc": [
6096 - "default.handlebars->27->1570"
6099 + "default.handlebars->27->1572"
6100 ]
6101 },
6102 {
@@ -6110,7 +6113,7 @@
6113 "ru": "Ретранслятор подключения",
6114 "zh-chs": "連接繼電器",
6115 "xloc": [
6113 - "default.handlebars->27->1598"
6116 + "default.handlebars->27->1600"
6117 ]
6118 },
6119 {
@@ -6162,9 +6165,9 @@
6165 "zh-chs": "連接性",
6166 "xloc": [
6167 "default-mobile.handlebars->9->199",
6165 - "default.handlebars->27->1280",
6168 + "default.handlebars->27->1282",
6169 "default.handlebars->27->186",
6167 - "default.handlebars->27->497",
6170 + "default.handlebars->27->499",
6171 "default.handlebars->container->column_l->p21->3->1->meshConnChartDiv->1"
6172 ]
6173 },
@@ -6182,8 +6185,8 @@
6185 "ru": "Консоль",
6186 "zh-chs": "安慰",
6187 "xloc": [
6185 - "default.handlebars->27->547",
6186 - "default.handlebars->27->566",
6188 + "default.handlebars->27->549",
6189 + "default.handlebars->27->568",
6190 "default.handlebars->container->topbar->1->1->MainSubMenuSpan->MainSubMenu->1->0->MainDevConsole",
6191 "default.handlebars->container->topbar->1->1->ServerSubMenuSpan->ServerSubMenu->1->0->ServerConsole",
6192 "default.handlebars->contextMenu->cxconsole"
@@ -6203,7 +6206,7 @@
6206 "ru": "Консоль - ",
6207 "zh-chs": "安慰 -",
6208 "xloc": [
6206 - "default.handlebars->27->443"
6209 + "default.handlebars->27->445"
6210 ]
6211 },
6212 {
@@ -6216,8 +6219,8 @@
6219 "ru": "контроль",
6220 "zh-chs": "控制",
6221 "xloc": [
6219 - "default.handlebars->27->546",
6220 - "default.handlebars->27->565"
6222 + "default.handlebars->27->548",
6223 + "default.handlebars->27->567"
6224 ]
6225 },
6226 {
@@ -6234,7 +6237,7 @@
6237 "ru": "Cookie-кодировщик",
6238 "zh-chs": "Cookie編碼器",
6239 "xloc": [
6237 - "default.handlebars->27->1584"
6240 + "default.handlebars->27->1586"
6241 ]
6242 },
6243 {
@@ -6289,7 +6292,7 @@
6292 "ru": "Скопировать ссылку MacOS agent в буфер обмена",
6293 "zh-chs": "將MacOS代理URL複製到剪貼板",
6294 "xloc": [
6292 - "default.handlebars->27->325"
6295 + "default.handlebars->27->327"
6296 ]
6297 },
6298 {
@@ -6302,7 +6305,7 @@
6305 "ru": "Скопировать URL-адрес агента Windows 32bit в буфер обмена",
6306 "zh-chs": "将Windows 32位代理URL复制到剪贴板",
6307 "xloc": [
6305 - "default.handlebars->27->313"
6308 + "default.handlebars->27->315"
6309 ]
6310 },
6311 {
@@ -6315,7 +6318,7 @@
6318 "ru": "Скопировать URL-адрес агента Windows 64bit в буфер обмена",
6319 "zh-chs": "将Windows 64位代理URL复制到剪贴板",
6320 "xloc": [
6318 - "default.handlebars->27->317"
6321 + "default.handlebars->27->319"
6322 ]
6323 },
6324 {
@@ -6354,7 +6357,7 @@
6357 "ru": "Скопировать ссылку в буфер обмена",
6358 "zh-chs": "複製鏈接到剪貼板",
6359 "xloc": [
6357 - "default.handlebars->27->297"
6360 + "default.handlebars->27->299"
6361 ]
6362 },
6363 {
@@ -6525,7 +6528,7 @@
6528 "ru": "Основной сервер",
6529 "zh-chs": "核心服務器",
6530 "xloc": [
6528 - "default.handlebars->27->1583"
6531 + "default.handlebars->27->1585"
6532 ]
6533 },
6534 {
@@ -6541,7 +6544,7 @@
6544 "ru": "Kорсиканский",
6545 "zh-chs": "科西嘉人",
6546 "xloc": [
6544 - "default.handlebars->27->864"
6547 + "default.handlebars->27->866"
6548 ]
6549 },
6550 {
@@ -6558,7 +6561,7 @@
6561 "ru": "Создать учетную запись",
6562 "zh-chs": "創建帳號",
6563 "xloc": [
6561 - "default.handlebars->27->1386",
6564 + "default.handlebars->27->1388",
6565 "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->createpanel->1->1->9->1->12->1->1",
6566 "login.handlebars->container->column_l->centralTable->1->0->logincell->createpanel->1->9->1->12->1->1"
6567 ]
@@ -6594,7 +6597,7 @@
6597 "ru": "Создать группу пользователей",
6598 "zh-chs": "創建用戶組",
6599 "xloc": [
6597 - "default.handlebars->27->1410"
6600 + "default.handlebars->27->1412"
6601 ]
6602 },
6603 {
@@ -6611,7 +6614,7 @@
6614 "ru": "Создайте новую группу устройств, используя параметры ниже.",
6615 "zh-chs": "使用以下選項創建一個新的設備組。",
6616 "xloc": [
6614 - "default.handlebars->27->1057"
6617 + "default.handlebars->27->1059"
6618 ]
6619 },
6620 {
@@ -6645,7 +6648,7 @@
6648 "ru": "Создайте сразу несколько учетных записей, импортировав файл JSON в следующем формате:",
6649 "zh-chs": "通過導入以下格式的JSON文件一次創建多個帳戶:",
6650 "xloc": [
6648 - "default.handlebars->27->1357"
6651 + "default.handlebars->27->1359"
6652 ]
6653 },
6654 {
@@ -6680,7 +6683,7 @@
6683 "ru": "Создано",
6684 "zh-chs": "創建",
6685 "xloc": [
6683 - "default.handlebars->27->1462"
6686 + "default.handlebars->27->1464"
6687 ]
6688 },
6689 {
@@ -6714,7 +6717,7 @@
6717 "ru": "Кри (Канадский язык)",
6718 "zh-chs": "克里",
6719 "xloc": [
6717 - "default.handlebars->27->865"
6720 + "default.handlebars->27->867"
6721 ]
6722 },
6723 {
@@ -6730,7 +6733,7 @@
6733 "ru": "Хорватский",
6734 "zh-chs": "克羅地亞語",
6735 "xloc": [
6733 - "default.handlebars->27->866"
6736 + "default.handlebars->27->868"
6737 ]
6738 },
6739 {
@@ -6870,7 +6873,7 @@
6873 "ru": "Чешский",
6874 "zh-chs": "捷克文",
6875 "xloc": [
6873 - "default.handlebars->27->867"
6876 + "default.handlebars->27->869"
6877 ]
6878 },
6879 {
@@ -6903,7 +6906,7 @@
6906 "ru": "Датский",
6907 "zh-chs": "丹麥文",
6908 "xloc": [
6906 - "default.handlebars->27->868"
6909 + "default.handlebars->27->870"
6910 ]
6911 },
6912 {
@@ -6920,7 +6923,7 @@
6923 "ru": "DataChannel",
6924 "zh-chs": "數據通道",
6925 "xloc": [
6923 - "default.handlebars->27->651"
6926 + "default.handlebars->27->653"
6927 ]
6928 },
6929 {
@@ -6937,7 +6940,7 @@
6940 "ru": "Дата & Время",
6941 "zh-chs": "日期和時間",
6942 "xloc": [
6940 - "default.handlebars->27->1025"
6943 + "default.handlebars->27->1027"
6944 ]
6945 },
6946 {
@@ -6954,7 +6957,7 @@
6957 "ru": "День",
6958 "zh-chs": "天",
6959 "xloc": [
6957 - "default.handlebars->27->589"
6960 + "default.handlebars->27->591"
6961 ]
6962 },
6963 {
@@ -6971,7 +6974,7 @@
6974 "ru": "Деактивировать режим управления клиентом (CCM)",
6975 "zh-chs": "停用客戶端控制模式(CCM)",
6976 "xloc": [
6974 - "default.handlebars->27->1144"
6977 + "default.handlebars->27->1146"
6978 ]
6979 },
6980 {
@@ -6989,7 +6992,7 @@
6992 "zh-chs": "沉睡",
6993 "xloc": [
6994 "default-mobile.handlebars->9->114",
6992 - "default.handlebars->27->344"
6995 + "default.handlebars->27->346"
6996 ]
6997 },
6998 {
@@ -7010,9 +7013,9 @@
7013 "default-mobile.handlebars->9->84",
7014 "default-mobile.handlebars->container->page_content->column_l->p10->p10files->p13toolbar->1->2->1->1",
7015 "default-mobile.handlebars->container->page_content->column_l->p5->p5myfiles->p5toolbar->1->0->1->1",
7013 - "default.handlebars->27->1305",
7014 - "default.handlebars->27->415",
7015 - "default.handlebars->27->704",
7016 + "default.handlebars->27->1307",
7017 + "default.handlebars->27->417",
7018 + "default.handlebars->27->706",
7019 "default.handlebars->container->column_l->p13->p13toolbar->1->2->1->3",
7020 "default.handlebars->container->column_l->p5->p5toolbar->1->0->p5filehead->3",
7021 "default.handlebars->container->dialog->idx_dlgButtonBar->5",
@@ -7036,7 +7039,7 @@
7039 "zh-chs": "刪除帳戶",
7040 "xloc": [
7041 "default-mobile.handlebars->9->46",
7039 - "default.handlebars->27->1042"
7042 + "default.handlebars->27->1044"
7043 ]
7044 },
7045 {
@@ -7054,7 +7057,7 @@
7057 "zh-chs": "刪除裝置",
7058 "xloc": [
7059 "default-mobile.handlebars->9->203",
7057 - "default.handlebars->27->508"
7060 + "default.handlebars->27->510"
7061 ]
7062 },
7063 {
@@ -7073,8 +7076,8 @@
7076 "xloc": [
7077 "default-mobile.handlebars->9->289",
7078 "default-mobile.handlebars->9->292",
7076 - "default.handlebars->27->1137",
7077 - "default.handlebars->27->1167"
7079 + "default.handlebars->27->1139",
7080 + "default.handlebars->27->1169"
7081 ]
7082 },
7083 {
@@ -7092,7 +7095,7 @@
7095 "zh-chs": "刪除節點",
7096 "xloc": [
7097 "default-mobile.handlebars->9->222",
7095 - "default.handlebars->27->615"
7098 + "default.handlebars->27->617"
7099 ]
7100 },
7101 {
@@ -7109,7 +7112,7 @@
7112 "ru": "Удалить устройства",
7113 "zh-chs": "刪除節點",
7114 "xloc": [
7112 - "default.handlebars->27->386"
7115 + "default.handlebars->27->388"
7116 ]
7117 },
7118 {
@@ -7126,7 +7129,7 @@
7129 "ru": "Удалить пользователя",
7130 "zh-chs": "刪除用戶",
7131 "xloc": [
7129 - "default.handlebars->27->1484"
7132 + "default.handlebars->27->1486"
7133 ]
7134 },
7135 {
@@ -7143,8 +7146,8 @@
7146 "ru": "Удалить группу пользователей",
7147 "zh-chs": "刪除用戶組",
7148 "xloc": [
7146 - "default.handlebars->27->1432",
7147 - "default.handlebars->27->1440"
7149 + "default.handlebars->27->1434",
7150 + "default.handlebars->27->1442"
7151 ]
7152 },
7153 {
@@ -7161,7 +7164,7 @@
7164 "ru": "Удалить пользователя {0}",
7165 "zh-chs": "刪除用戶{0}",
7166 "xloc": [
7164 - "default.handlebars->27->1501"
7167 + "default.handlebars->27->1503"
7168 ]
7169 },
7170 {
@@ -7196,7 +7199,7 @@
7199 "ru": "Удалить устройства",
7200 "zh-chs": "刪除設備",
7201 "xloc": [
7199 - "default.handlebars->27->381"
7202 + "default.handlebars->27->383"
7203 ]
7204 },
7205 {
@@ -7212,7 +7215,7 @@
7215 "ru": "Удалить пункт?",
7216 "zh-chs": "刪除項目?",
7217 "xloc": [
7215 - "default.handlebars->27->416"
7218 + "default.handlebars->27->418"
7219 ]
7220 },
7221 {
@@ -7231,8 +7234,8 @@
7234 "xloc": [
7235 "default-mobile.handlebars->9->255",
7236 "default-mobile.handlebars->9->86",
7234 - "default.handlebars->27->1307",
7235 - "default.handlebars->27->706"
7237 + "default.handlebars->27->1309",
7238 + "default.handlebars->27->708"
7239 ]
7240 },
7241 {
@@ -7249,7 +7252,7 @@
7252 "ru": "Удалить группу пользователей {0}?",
7253 "zh-chs": "刪除用戶組{0}?",
7254 "xloc": [
7252 - "default.handlebars->27->1438"
7255 + "default.handlebars->27->1440"
7256 ]
7257 },
7258 {
@@ -7268,8 +7271,8 @@
7271 "xloc": [
7272 "default-mobile.handlebars->9->254",
7273 "default-mobile.handlebars->9->85",
7271 - "default.handlebars->27->1306",
7272 - "default.handlebars->27->705"
7274 + "default.handlebars->27->1308",
7275 + "default.handlebars->27->707"
7276 ]
7277 },
7278 {
@@ -7369,17 +7372,17 @@
7372 "default-mobile.handlebars->9->281",
7373 "default-mobile.handlebars->9->294",
7374 "default-mobile.handlebars->9->63",
7372 - "default.handlebars->27->1062",
7373 - "default.handlebars->27->1086",
7374 - "default.handlebars->27->1169",
7375 - "default.handlebars->27->1409",
7376 - "default.handlebars->27->1414",
7375 + "default.handlebars->27->1064",
7376 + "default.handlebars->27->1088",
7377 + "default.handlebars->27->1171",
7378 + "default.handlebars->27->1411",
7379 "default.handlebars->27->1416",
7378 - "default.handlebars->27->1436",
7379 - "default.handlebars->27->455",
7380 - "default.handlebars->27->456",
7381 - "default.handlebars->27->647",
7382 - "default.handlebars->27->750",
7380 + "default.handlebars->27->1418",
7381 + "default.handlebars->27->1438",
7382 + "default.handlebars->27->457",
7383 + "default.handlebars->27->458",
7384 + "default.handlebars->27->649",
7385 + "default.handlebars->27->752",
7386 "default.handlebars->27->78",
7387 "default.handlebars->container->column_l->p42->p42tbl->1->0->3"
7388 ]
@@ -7412,8 +7415,8 @@
7415 "ru": "Рабочий стол",
7416 "zh-chs": "桌面",
7417 "xloc": [
7415 - "default.handlebars->27->1171",
7416 - "default.handlebars->27->421",
7418 + "default.handlebars->27->1173",
7419 + "default.handlebars->27->423",
7420 "default.handlebars->container->topbar->1->1->MainSubMenuSpan->MainSubMenu->1->0->MainDevDesktop",
7421 "default.handlebars->contextMenu->cxdesktop"
7422 ]
@@ -7449,7 +7452,7 @@
7452 "ru": "Уведомление на рабочем столе",
7453 "zh-chs": "桌面通知",
7454 "xloc": [
7452 - "default.handlebars->27->1096"
7455 + "default.handlebars->27->1098"
7456 ]
7457 },
7458 {
@@ -7466,7 +7469,7 @@
7469 "ru": "Запрос рабочего стола",
7470 "zh-chs": "桌面提示",
7471 "xloc": [
7469 - "default.handlebars->27->1095"
7472 + "default.handlebars->27->1097"
7473 ]
7474 },
7475 {
@@ -7483,7 +7486,7 @@
7486 "ru": "Запрос рабочего стола + панель инструментов",
7487 "zh-chs": "桌面提示+工具欄",
7488 "xloc": [
7486 - "default.handlebars->27->1093"
7489 + "default.handlebars->27->1095"
7490 ]
7491 },
7492 {
@@ -7500,7 +7503,7 @@
7503 "ru": "Панель инструментов рабочего стола",
7504 "zh-chs": "桌面工具欄",
7505 "xloc": [
7503 - "default.handlebars->27->1094"
7506 + "default.handlebars->27->1096"
7507 ]
7508 },
7509 {
@@ -7569,8 +7572,8 @@
7572 "ru": "Устройство",
7573 "zh-chs": "設備",
7574 "xloc": [
7572 - "default.handlebars->27->1193",
7573 - "default.handlebars->27->1507",
7575 + "default.handlebars->27->1195",
7576 + "default.handlebars->27->1509",
7577 "default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->9->devListToolbarSort->sortselect->5"
7578 ]
7579 },
@@ -7589,7 +7592,7 @@
7592 "zh-chs": "設備動作",
7593 "xloc": [
7594 "default-mobile.handlebars->9->215",
7592 - "default.handlebars->27->588"
7595 + "default.handlebars->27->590"
7596 ]
7597 },
7598 {
@@ -7606,11 +7609,11 @@
7609 "ru": "Группа устройства",
7610 "zh-chs": "設備組",
7611 "xloc": [
7609 - "default.handlebars->27->1189",
7612 "default.handlebars->27->1191",
7611 - "default.handlebars->27->1192",
7612 - "default.handlebars->27->1430",
7613 - "default.handlebars->27->1513"
7613 + "default.handlebars->27->1193",
7614 + "default.handlebars->27->1194",
7615 + "default.handlebars->27->1432",
7616 + "default.handlebars->27->1515"
7617 ]
7618 },
7619 {
@@ -7628,7 +7631,7 @@
7631 "zh-chs": "設備組用戶",
7632 "xloc": [
7633 "default-mobile.handlebars->9->335",
7631 - "default.handlebars->27->1247"
7634 + "default.handlebars->27->1249"
7635 ]
7636 },
7637 {
@@ -7646,10 +7649,10 @@
7649 "zh-chs": "設備組",
7650 "xloc": [
7651 "default-mobile.handlebars->container->page_content->column_l->p3->p3info->1->3",
7649 - "default.handlebars->27->1405",
7650 - "default.handlebars->27->1418",
7651 - "default.handlebars->27->1471",
7652 - "default.handlebars->27->1557",
7652 + "default.handlebars->27->1407",
7653 + "default.handlebars->27->1420",
7654 + "default.handlebars->27->1473",
7655 + "default.handlebars->27->1559",
7656 "default.handlebars->container->column_l->p2->9"
7657 ]
7658 },
@@ -7666,7 +7669,7 @@
7669 "ru": "Экспорт информации об устройстве",
7670 "zh-chs": "設備信息導出",
7671 "xloc": [
7669 - "default.handlebars->27->392"
7672 + "default.handlebars->27->394"
7673 ]
7674 },
7675 {
@@ -7683,7 +7686,7 @@
7686 "ru": "Местонахождение устройства",
7687 "zh-chs": "設備位置",
7688 "xloc": [
7686 - "default.handlebars->27->616"
7689 + "default.handlebars->27->618"
7690 ]
7691 },
7692 {
@@ -7702,7 +7705,7 @@
7705 "xloc": [
7706 "default-mobile.handlebars->9->226",
7707 "default.handlebars->27->222",
7705 - "default.handlebars->27->645",
7708 + "default.handlebars->27->647",
7709 "player.handlebars->3->9"
7710 ]
7711 },
@@ -7720,7 +7723,7 @@
7723 "ru": "Уведомление устройства",
7724 "zh-chs": "設備通知",
7725 "xloc": [
7723 - "default.handlebars->27->579"
7726 + "default.handlebars->27->581"
7727 ]
7728 },
7729 {
@@ -7754,8 +7757,8 @@
7757 "ru": "Подключения устройств.",
7758 "zh-chs": "設備連接。",
7759 "xloc": [
7757 - "default.handlebars->27->1030",
7758 - "default.handlebars->27->1266"
7760 + "default.handlebars->27->1032",
7761 + "default.handlebars->27->1268"
7762 ]
7763 },
7764 {
@@ -7772,8 +7775,8 @@
7775 "ru": "Отключения устройств.",
7776 "zh-chs": "設備斷開連接。",
7777 "xloc": [
7775 - "default.handlebars->27->1031",
7776 - "default.handlebars->27->1267"
7778 + "default.handlebars->27->1033",
7779 + "default.handlebars->27->1269"
7780 ]
7781 },
7782 {
@@ -7790,7 +7793,7 @@
7793 "ru": "Примечания могут быть просмотрены и изменены другими администраторами.",
7794 "zh-chs": "其他設備組管理員可以查看和更改設備組註釋。",
7795 "xloc": [
7793 - "default.handlebars->27->577"
7796 + "default.handlebars->27->579"
7797 ]
7798 },
7799 {
@@ -7807,7 +7810,7 @@
7810 "ru": "Устройство обнаружено, но состояние питания не может быть получено.",
7811 "zh-chs": "檢測到設備,但無法獲得電源狀態。",
7812 "xloc": [
7810 - "default.handlebars->27->349"
7813 + "default.handlebars->27->351"
7814 ]
7815 },
7816 {
@@ -7825,7 +7828,7 @@
7828 "zh-chs": "設備正在休眠(S4)",
7829 "xloc": [
7830 "default-mobile.handlebars->9->122",
7828 - "default.handlebars->27->355"
7831 + "default.handlebars->27->357"
7832 ]
7833 },
7834 {
@@ -7843,7 +7846,7 @@
7846 "zh-chs": "設備處於深度睡眠狀態(S3)",
7847 "xloc": [
7848 "default-mobile.handlebars->9->121",
7846 - "default.handlebars->27->354"
7849 + "default.handlebars->27->356"
7850 ]
7851 },
7852 {
@@ -7860,7 +7863,7 @@
7863 "ru": "Устройство находится в состоянии глубокого сна (S3).",
7864 "zh-chs": "設備處於深度睡眠狀態(S3)。",
7865 "xloc": [
7863 - "default.handlebars->27->343"
7866 + "default.handlebars->27->345"
7867 ]
7868 },
7869 {
@@ -7877,7 +7880,7 @@
7880 "ru": "Устройство находится в режиме гибернации (S4).",
7881 "zh-chs": "設備處於休眠狀態(S4)。",
7882 "xloc": [
7880 - "default.handlebars->27->345"
7883 + "default.handlebars->27->347"
7884 ]
7885 },
7886 {
@@ -7894,7 +7897,7 @@
7897 "ru": "Устройство находится в выключенном состоянии (S5).",
7898 "zh-chs": "設備處於關機狀態(S5)。",
7899 "xloc": [
7897 - "default.handlebars->27->347"
7900 + "default.handlebars->27->349"
7901 ]
7902 },
7903 {
@@ -7912,7 +7915,7 @@
7915 "zh-chs": "設備處於睡眠狀態(S1)",
7916 "xloc": [
7917 "default-mobile.handlebars->9->119",
7915 - "default.handlebars->27->352"
7918 + "default.handlebars->27->354"
7919 ]
7920 },
7921 {
@@ -7929,7 +7932,7 @@
7932 "ru": "Устройство находится в спящем режиме (S1).",
7933 "zh-chs": "設備處於睡眠狀態(S1)。",
7934 "xloc": [
7932 - "default.handlebars->27->339"
7935 + "default.handlebars->27->341"
7936 ]
7937 },
7938 {
@@ -7947,7 +7950,7 @@
7950 "zh-chs": "設備處於睡眠狀態(S2)",
7951 "xloc": [
7952 "default-mobile.handlebars->9->120",
7950 - "default.handlebars->27->353"
7953 + "default.handlebars->27->355"
7954 ]
7955 },
7956 {
@@ -7964,7 +7967,7 @@
7967 "ru": "Устройство находится в спящем режиме (S2).",
7968 "zh-chs": "設備處於睡眠狀態(S2)。",
7969 "xloc": [
7967 - "default.handlebars->27->341"
7970 + "default.handlebars->27->343"
7971 ]
7972 },
7973 {
@@ -7982,7 +7985,7 @@
7985 "zh-chs": "設備處於軟斷開狀態(S5)",
7986 "xloc": [
7987 "default-mobile.handlebars->9->123",
7985 - "default.handlebars->27->356"
7988 + "default.handlebars->27->358"
7989 ]
7990 },
7991 {
@@ -8000,7 +8003,7 @@
8003 "zh-chs": "設備已上電",
8004 "xloc": [
8005 "default-mobile.handlebars->9->118",
8003 - "default.handlebars->27->351"
8006 + "default.handlebars->27->353"
8007 ]
8008 },
8009 {
@@ -8017,7 +8020,7 @@
8020 "ru": "Устройство включено.",
8021 "zh-chs": "設備上電。",
8022 "xloc": [
8020 - "default.handlebars->27->337"
8023 + "default.handlebars->27->339"
8024 ]
8025 },
8026 {
@@ -8035,7 +8038,7 @@
8038 "zh-chs": "設備存在,但無法確定電源狀態",
8039 "xloc": [
8040 "default-mobile.handlebars->9->124",
8038 - "default.handlebars->27->357"
8041 + "default.handlebars->27->359"
8042 ]
8043 },
8044 {
@@ -8052,7 +8055,7 @@
8055 "ru": "Имя устройства",
8056 "zh-chs": "設備名稱",
8057 "xloc": [
8055 - "default.handlebars->27->433"
8058 + "default.handlebars->27->435"
8059 ]
8060 },
8061 {
@@ -8069,7 +8072,7 @@
8072 "ru": "DeviceCheckbox",
8073 "zh-chs": "設備複選框",
8074 "xloc": [
8072 - "default.handlebars->27->383"
8075 + "default.handlebars->27->385"
8076 ]
8077 },
8078 {
@@ -8086,7 +8089,7 @@
8089 "ru": "Отключено",
8090 "zh-chs": "殘障人士",
8091 "xloc": [
8089 - "default.handlebars->27->482"
8092 + "default.handlebars->27->484"
8093 ]
8094 },
8095 {
@@ -8105,8 +8108,8 @@
8108 "xloc": [
8109 "default-mobile.handlebars->9->241",
8110 "default-mobile.handlebars->container->page_content->column_l->p10->p10desktop->deskarea1->1->3",
8108 - "default.handlebars->27->1106",
8109 - "default.handlebars->27->695",
8111 + "default.handlebars->27->1108",
8112 + "default.handlebars->27->697",
8113 "default.handlebars->container->column_l->p11->deskarea0->deskarea1->3->disconnectbutton1span",
8114 "default.handlebars->container->column_l->p12->termTable->1->1->0->1->3->disconnectbutton2span",
8115 "xterm.handlebars->p11->deskarea0->deskarea1->3"
@@ -8188,7 +8191,7 @@
8191 "ru": "Отобразить имя группы устройств",
8192 "zh-chs": "顯示設備組名稱",
8193 "xloc": [
8191 - "default.handlebars->27->1029"
8194 + "default.handlebars->27->1031"
8195 ]
8196 },
8197 {
@@ -8205,7 +8208,7 @@
8208 "ru": "Отображаемое имя",
8209 "zh-chs": "顯示名稱",
8210 "xloc": [
8208 - "default.handlebars->27->666"
8211 + "default.handlebars->27->668"
8212 ]
8213 },
8214 {
@@ -8218,7 +8221,7 @@
8221 "ru": "Показать публичную ссылку",
8222 "zh-chs": "显示公共链接",
8223 "xloc": [
8221 - "default.handlebars->27->1284"
8224 + "default.handlebars->27->1286"
8225 ]
8226 },
8227 {
@@ -8235,7 +8238,7 @@
8238 "ru": "Ничего не делать",
8239 "zh-chs": "沒做什麼",
8240 "xloc": [
8238 - "default.handlebars->27->1150"
8241 + "default.handlebars->27->1152"
8242 ]
8243 },
8244 {
@@ -8270,8 +8273,8 @@
8273 "ru": "Не настраивать",
8274 "zh-chs": "不要配置",
8275 "xloc": [
8273 - "default.handlebars->27->1154",
8274 - "default.handlebars->27->1159"
8276 + "default.handlebars->27->1156",
8277 + "default.handlebars->27->1161"
8278 ]
8279 },
8280 {
@@ -8288,7 +8291,7 @@
8291 "ru": "Не подключаться к серверу",
8292 "zh-chs": "不連接服務器",
8293 "xloc": [
8291 - "default.handlebars->27->1155"
8294 + "default.handlebars->27->1157"
8295 ]
8296 },
8297 {
@@ -8342,7 +8345,7 @@
8345 "zh-chs": "下載文件",
8346 "xloc": [
8347 "default-mobile.handlebars->9->274",
8345 - "default.handlebars->27->724"
8348 + "default.handlebars->27->726"
8349 ]
8350 },
8351 {
@@ -8376,7 +8379,7 @@
8379 "ru": "Скачать MeshCmd",
8380 "zh-chs": "下載MeshCmd",
8381 "xloc": [
8379 - "default.handlebars->27->636"
8382 + "default.handlebars->27->638"
8383 ]
8384 },
8385 {
@@ -8427,7 +8430,7 @@
8430 "ru": "Скачайте \\\"meshcmd\\\" с файлом команд для маршрутизации трафика к этому устройству через сервер. Не забудьте указать пароль от своей учетной записи в meshaction.txt и сделать другие правки при необходимости.",
8431 "zh-chs": "下載帶有動作文件的“ meshcmd”,以將通過此服務器的流量路由到該設備。確保編輯meshaction.txt並添加您的帳戶密碼或進行任何必要的更改。",
8432 "xloc": [
8430 - "default.handlebars->27->629"
8433 + "default.handlebars->27->631"
8434 ]
8435 },
8436 {
@@ -8495,7 +8498,7 @@
8498 "ru": "Скачать события состояния питания",
8499 "zh-chs": "下載電源事件",
8500 "xloc": [
8498 - "default.handlebars->27->590"
8501 + "default.handlebars->27->592"
8502 ]
8503 },
8504 {
@@ -8545,7 +8548,7 @@
8548 "ru": "Загрузите список устройств с одним из форматов файлов ниже.",
8549 "zh-chs": "使用以下一種文件格式下載設備列表。",
8550 "xloc": [
8548 - "default.handlebars->27->387"
8551 + "default.handlebars->27->389"
8552 ]
8553 },
8554 {
@@ -8562,7 +8565,7 @@
8565 "ru": "Скачать список событий в одном из форматов ниже.",
8566 "zh-chs": "使用以下一種文件格式下載事件列表。",
8567 "xloc": [
8565 - "default.handlebars->27->1321"
8568 + "default.handlebars->27->1323"
8569 ]
8570 },
8571 {
@@ -8579,7 +8582,7 @@
8582 "ru": "Скачать список пользователей в одном из форматов ниже.",
8583 "zh-chs": "使用以下一種文件格式下載用戶列表。",
8584 "xloc": [
8582 - "default.handlebars->27->1365"
8585 + "default.handlebars->27->1367"
8586 ]
8587 },
8588 {
@@ -8665,7 +8668,7 @@
8668 "ru": "Скопировать агент",
8669 "zh-chs": "代理重複",
8670 "xloc": [
8668 - "default.handlebars->27->1553"
8671 + "default.handlebars->27->1555"
8672 ]
8673 },
8674 {
@@ -8699,7 +8702,7 @@
8702 "ru": "Скопировать группу пользователей",
8703 "zh-chs": "重複的用戶組",
8704 "xloc": [
8702 - "default.handlebars->27->1411"
8705 + "default.handlebars->27->1413"
8706 ]
8707 },
8708 {
@@ -8733,7 +8736,7 @@
8736 "ru": "Во время активации агент будет иметь доступ к паролю администратора.",
8737 "zh-chs": "在激活期間,代理將有權訪問管理員密碼信息。",
8738 "xloc": [
8736 - "default.handlebars->27->1164"
8739 + "default.handlebars->27->1166"
8740 ]
8741 },
8742 {
@@ -8749,7 +8752,7 @@
8752 "ru": "Голландский (Бельгийский)",
8753 "zh-chs": "荷蘭語(比利時)",
8754 "xloc": [
8752 - "default.handlebars->27->870"
8755 + "default.handlebars->27->872"
8756 ]
8757 },
8758 {
@@ -8765,7 +8768,7 @@
8768 "ru": "Голландский (Стандартный)",
8769 "zh-chs": "荷蘭語(標準)",
8770 "xloc": [
8768 - "default.handlebars->27->869"
8771 + "default.handlebars->27->871"
8772 ]
8773 },
8774 {
@@ -8852,7 +8855,7 @@
8855 "zh-chs": "編輯裝置",
8856 "xloc": [
8857 "default-mobile.handlebars->9->231",
8855 - "default.handlebars->27->650"
8858 + "default.handlebars->27->652"
8859 ]
8860 },
8861 {
@@ -8872,9 +8875,9 @@
8875 "default-mobile.handlebars->9->295",
8876 "default-mobile.handlebars->9->297",
8877 "default-mobile.handlebars->9->315",
8875 - "default.handlebars->27->1170",
8876 - "default.handlebars->27->1197",
8877 - "default.handlebars->27->1225"
8878 + "default.handlebars->27->1172",
8879 + "default.handlebars->27->1199",
8880 + "default.handlebars->27->1227"
8881 ]
8882 },
8883 {
@@ -8891,7 +8894,7 @@
8894 "ru": "Редактировать функции группы устройств",
8895 "zh-chs": "編輯設備組功能",
8896 "xloc": [
8894 - "default.handlebars->27->1184"
8897 + "default.handlebars->27->1186"
8898 ]
8899 },
8900 {
@@ -8908,7 +8911,7 @@
8911 "ru": "Редактировать права группы устройств",
8912 "zh-chs": "編輯設備組權限",
8913 "xloc": [
8911 - "default.handlebars->27->1222"
8914 + "default.handlebars->27->1224"
8915 ]
8916 },
8917 {
@@ -8925,7 +8928,7 @@
8928 "ru": "Редактировать согласие пользователя группы устройств",
8929 "zh-chs": "編輯設備組用戶同意",
8930 "xloc": [
8928 - "default.handlebars->27->1181"
8931 + "default.handlebars->27->1183"
8932 ]
8933 },
8934 {
@@ -8943,7 +8946,7 @@
8946 "zh-chs": "編輯設備說明",
8947 "xloc": [
8948 "default-mobile.handlebars->9->309",
8946 - "default.handlebars->27->1210"
8949 + "default.handlebars->27->1212"
8950 ]
8951 },
8952 {
@@ -8956,7 +8959,7 @@
8959 "ru": "Изменить разрешения устройства",
8960 "zh-chs": "编辑设备权限",
8961 "xloc": [
8959 - "default.handlebars->27->1219"
8962 + "default.handlebars->27->1221"
8963 ]
8964 },
8965 {
@@ -8969,7 +8972,7 @@
8972 "ru": "Редактировать группу",
8973 "zh-chs": "编辑组",
8974 "xloc": [
8972 - "default.handlebars->27->556"
8975 + "default.handlebars->27->558"
8976 ]
8977 },
8978 {
@@ -8987,9 +8990,9 @@
8990 "zh-chs": "編輯英特爾&reg;AMT憑據",
8991 "xloc": [
8992 "default-mobile.handlebars->9->221",
8990 - "default.handlebars->27->470",
8991 - "default.handlebars->27->473",
8992 - "default.handlebars->27->597"
8993 + "default.handlebars->27->472",
8994 + "default.handlebars->27->475",
8995 + "default.handlebars->27->599"
8996 ]
8997 },
8998 {
@@ -9007,7 +9010,7 @@
9010 "zh-chs": "編輯筆記",
9011 "xloc": [
9012 "default-mobile.handlebars->9->322",
9010 - "default.handlebars->27->1232"
9013 + "default.handlebars->27->1234"
9014 ]
9015 },
9016 {
@@ -9024,7 +9027,7 @@
9027 "ru": "Редактировать права пользователя для группы устройств",
9028 "zh-chs": "編輯用戶設備組權限",
9029 "xloc": [
9027 - "default.handlebars->27->1223"
9030 + "default.handlebars->27->1225"
9031 ]
9032 },
9033 {
@@ -9037,7 +9040,7 @@
9040 "ru": "Изменить разрешения для пользовательских устройств",
9041 "zh-chs": "编辑用户设备权限",
9042 "xloc": [
9040 - "default.handlebars->27->1220"
9043 + "default.handlebars->27->1222"
9044 ]
9045 },
9046 {
@@ -9054,7 +9057,7 @@
9057 "ru": "Редактировать группу пользователей",
9058 "zh-chs": "編輯用戶組",
9059 "xloc": [
9057 - "default.handlebars->27->1437"
9060 + "default.handlebars->27->1439"
9061 ]
9062 },
9063 {
@@ -9089,11 +9092,11 @@
9092 "zh-chs": "電子郵件",
9093 "xloc": [
9094 "default-mobile.handlebars->9->40",
9092 - "default.handlebars->27->1377",
9093 - "default.handlebars->27->1458",
9094 - "default.handlebars->27->1459",
9095 - "default.handlebars->27->1489",
9096 - "default.handlebars->27->268",
9095 + "default.handlebars->27->1379",
9096 + "default.handlebars->27->1460",
9097 + "default.handlebars->27->1461",
9098 + "default.handlebars->27->1491",
9099 + "default.handlebars->27->270",
9100 "login-mobile.handlebars->container->page_content->column_l->1->1->0->1->tokenpanel->1->7->1->4->1->3",
9101 "login.handlebars->container->column_l->centralTable->1->0->logincell->tokenpanel->1->7->1->4->1->3"
9102 ]
@@ -9113,7 +9116,7 @@
9116 "zh-chs": "電郵地址變更",
9117 "xloc": [
9118 "default-mobile.handlebars->9->41",
9116 - "default.handlebars->27->1038"
9119 + "default.handlebars->27->1040"
9120 ]
9121 },
9122 {
@@ -9130,7 +9133,7 @@
9133 "zh-chs": "郵件認證",
9134 "xloc": [
9135 "default-mobile.handlebars->9->30",
9133 - "default.handlebars->27->807"
9136 + "default.handlebars->27->809"
9137 ]
9138 },
9139 {
@@ -9143,7 +9146,7 @@
9146 "ru": "Почтовый трафик",
9147 "zh-chs": "电子邮件流量",
9148 "xloc": [
9146 - "default.handlebars->27->1592"
9149 + "default.handlebars->27->1594"
9150 ]
9151 },
9152 {
@@ -9161,7 +9164,13 @@
9164 "zh-chs": "電子郵件驗證",
9165 "xloc": [
9166 "default-mobile.handlebars->9->39",
9164 - "default.handlebars->27->1036"
9167 + "default.handlebars->27->1038"
9168 + ]
9169 + },
9170 + {
9171 + "en": "Email invitation",
9172 + "xloc": [
9173 + "default.handlebars->27->267"
9174 ]
9175 },
9176 {
@@ -9174,7 +9183,7 @@
9183 "ru": "Электронная почта не подтверждена",
9184 "zh-chs": "邮件未验证",
9185 "xloc": [
9177 - "default.handlebars->27->1350"
9186 + "default.handlebars->27->1352"
9187 ]
9188 },
9189 {
@@ -9191,8 +9200,8 @@
9200 "ru": "Email подтвержден",
9201 "zh-chs": "電子郵件已驗證",
9202 "xloc": [
9194 - "default.handlebars->27->1351",
9195 - "default.handlebars->27->1455"
9203 + "default.handlebars->27->1353",
9204 + "default.handlebars->27->1457"
9205 ]
9206 },
9207 {
@@ -9209,7 +9218,7 @@
9218 "ru": "Email подтвержден.",
9219 "zh-chs": "電子郵件已驗證。",
9220 "xloc": [
9212 - "default.handlebars->27->1383"
9221 + "default.handlebars->27->1385"
9222 ]
9223 },
9224 {
@@ -9226,7 +9235,7 @@
9235 "ru": "Email не подтвержден",
9236 "zh-chs": "電子郵件未驗證",
9237 "xloc": [
9229 - "default.handlebars->27->1456"
9238 + "default.handlebars->27->1458"
9239 ]
9240 },
9241 {
@@ -9281,7 +9290,7 @@
9290 "ru": "Включить коды приглашения",
9291 "zh-chs": "啟用邀請代碼",
9292 "xloc": [
9284 - "default.handlebars->27->1251"
9293 + "default.handlebars->27->1253"
9294 ]
9295 },
9296 {
@@ -9315,7 +9324,7 @@
9324 "zh-chs": "啟用電子郵件兩因素驗證。",
9325 "xloc": [
9326 "default-mobile.handlebars->9->32",
9318 - "default.handlebars->27->809"
9327 + "default.handlebars->27->811"
9328 ]
9329 },
9330 {
@@ -9366,7 +9375,7 @@
9375 "ru": "Английский",
9376 "zh-chs": "英語",
9377 "xloc": [
9369 - "default.handlebars->27->871"
9378 + "default.handlebars->27->873"
9379 ]
9380 },
9381 {
@@ -9382,7 +9391,7 @@
9391 "ru": "Английский (Австралия)",
9392 "zh-chs": "英文(澳洲)",
9393 "xloc": [
9385 - "default.handlebars->27->872"
9394 + "default.handlebars->27->874"
9395 ]
9396 },
9397 {
@@ -9398,7 +9407,7 @@
9407 "ru": "Английский (Белиз)",
9408 "zh-chs": "英語(伯利茲)",
9409 "xloc": [
9401 - "default.handlebars->27->873"
9410 + "default.handlebars->27->875"
9411 ]
9412 },
9413 {
@@ -9414,7 +9423,7 @@
9423 "ru": "Английский (Канада)",
9424 "zh-chs": "英文(加拿大)",
9425 "xloc": [
9417 - "default.handlebars->27->874"
9426 + "default.handlebars->27->876"
9427 ]
9428 },
9429 {
@@ -9430,7 +9439,7 @@
9439 "ru": "Английский (Ирландия)",
9440 "zh-chs": "英文(愛爾蘭)",
9441 "xloc": [
9433 - "default.handlebars->27->875"
9442 + "default.handlebars->27->877"
9443 ]
9444 },
9445 {
@@ -9446,7 +9455,7 @@
9455 "ru": "Английский (Ямайка)",
9456 "zh-chs": "英文(牙買加)",
9457 "xloc": [
9449 - "default.handlebars->27->876"
9458 + "default.handlebars->27->878"
9459 ]
9460 },
9461 {
@@ -9462,7 +9471,7 @@
9471 "ru": "Английский (Новая Зеландия)",
9472 "zh-chs": "英文(紐西蘭)",
9473 "xloc": [
9465 - "default.handlebars->27->877"
9474 + "default.handlebars->27->879"
9475 ]
9476 },
9477 {
@@ -9478,7 +9487,7 @@
9487 "ru": "Английский (Филиппины)",
9488 "zh-chs": "英文(菲律賓)",
9489 "xloc": [
9481 - "default.handlebars->27->878"
9490 + "default.handlebars->27->880"
9491 ]
9492 },
9493 {
@@ -9494,7 +9503,7 @@
9503 "ru": "Английский (Южная Африка)",
9504 "zh-chs": "英語(南非)",
9505 "xloc": [
9497 - "default.handlebars->27->879"
9506 + "default.handlebars->27->881"
9507 ]
9508 },
9509 {
@@ -9510,7 +9519,7 @@
9519 "ru": "Английский (Тринидад и Тобаго)",
9520 "zh-chs": "英文(特立尼達和多巴哥)",
9521 "xloc": [
9513 - "default.handlebars->27->880"
9522 + "default.handlebars->27->882"
9523 ]
9524 },
9525 {
@@ -9526,7 +9535,7 @@
9535 "ru": "Английский (Великобритания)",
9536 "zh-chs": "英文(英國)",
9537 "xloc": [
9529 - "default.handlebars->27->881"
9538 + "default.handlebars->27->883"
9539 ]
9540 },
9541 {
@@ -9542,7 +9551,7 @@
9551 "ru": "Английский (Соединенные Штаты)",
9552 "zh-chs": "美國英語)",
9553 "xloc": [
9545 - "default.handlebars->27->882"
9554 + "default.handlebars->27->884"
9555 ]
9556 },
9557 {
@@ -9558,7 +9567,7 @@
9567 "ru": "Английский (Зимбабве)",
9568 "zh-chs": "英文(津巴布韋)",
9569 "xloc": [
9561 - "default.handlebars->27->883"
9570 + "default.handlebars->27->885"
9571 ]
9572 },
9573 {
@@ -9575,8 +9584,8 @@
9584 "ru": "Ввод",
9585 "zh-chs": "輸入",
9586 "xloc": [
9578 - "default.handlebars->27->1064",
9579 - "default.handlebars->27->1065"
9587 + "default.handlebars->27->1066",
9588 + "default.handlebars->27->1067"
9589 ]
9590 },
9591 {
@@ -9593,7 +9602,7 @@
9602 "ru": "Введите разделенный запятыми список имен административных областей.",
9603 "zh-chs": "輸入管理領域名稱的逗號分隔列表。",
9604 "xloc": [
9596 - "default.handlebars->27->1387"
9605 + "default.handlebars->27->1389"
9606 ]
9607 },
9608 {
@@ -9627,7 +9636,7 @@
9636 "ru": "Для удаленного набора введите текст, используя английскую раскладку и нажмите OK. Перед продолжением убедитесь, что курсор на удаленном компьютере установлен в правильное положение.",
9637 "zh-chs": "輸入文本,然後單擊“確定”以使用美式英語鍵盤遠程輸入文本。在繼續操作之前,請確保將遠程光標放置在正確的位置。",
9638 "xloc": [
9630 - "default.handlebars->27->660"
9639 + "default.handlebars->27->662"
9640 ]
9641 },
9642 {
@@ -9712,7 +9721,7 @@
9721 "ru": "Эсперанто",
9722 "zh-chs": "世界語",
9723 "xloc": [
9715 - "default.handlebars->27->884"
9724 + "default.handlebars->27->886"
9725 ]
9726 },
9727 {
@@ -9728,7 +9737,7 @@
9737 "ru": "Эстонский",
9738 "zh-chs": "愛沙尼亞語",
9739 "xloc": [
9731 - "default.handlebars->27->885"
9740 + "default.handlebars->27->887"
9741 ]
9742 },
9743 {
@@ -9745,7 +9754,7 @@
9754 "ru": "Детали события",
9755 "zh-chs": "活動詳情",
9756 "xloc": [
9748 - "default.handlebars->27->737"
9757 + "default.handlebars->27->739"
9758 ]
9759 },
9760 {
@@ -9762,7 +9771,7 @@
9771 "ru": "Экспорт списка событий",
9772 "zh-chs": "活動列表導出",
9773 "xloc": [
9765 - "default.handlebars->27->1326"
9774 + "default.handlebars->27->1328"
9775 ]
9776 },
9777 {
@@ -9833,7 +9842,7 @@
9842 "ru": "Экспорт информации об устройстве",
9843 "zh-chs": "導出設備信息",
9844 "xloc": [
9836 - "default.handlebars->27->379"
9845 + "default.handlebars->27->381"
9846 ]
9847 },
9848 {
@@ -9850,7 +9859,7 @@
9859 "ru": "Расширенный ASCII",
9860 "zh-chs": "擴展ASCII",
9861 "xloc": [
9853 - "default.handlebars->27->686"
9862 + "default.handlebars->27->688"
9863 ]
9864 },
9865 {
@@ -9884,7 +9893,7 @@
9893 "ru": "Внешний",
9894 "zh-chs": "外部",
9895 "xloc": [
9887 - "default.handlebars->27->1577"
9896 + "default.handlebars->27->1579"
9897 ]
9898 },
9899 {
@@ -9900,7 +9909,7 @@
9909 "ru": "Mакедонский (БЮР)",
9910 "zh-chs": "FYRO馬其頓語",
9911 "xloc": [
9903 - "default.handlebars->27->935"
9912 + "default.handlebars->27->937"
9913 ]
9914 },
9915 {
@@ -9916,7 +9925,7 @@
9925 "ru": "Фарерский",
9926 "zh-chs": "法羅語",
9927 "xloc": [
9919 - "default.handlebars->27->886"
9928 + "default.handlebars->27->888"
9929 ]
9930 },
9931 {
@@ -9949,7 +9958,7 @@
9958 "ru": "Фарси (Персидский)",
9959 "zh-chs": "波斯語(波斯語)",
9960 "xloc": [
9952 - "default.handlebars->27->887"
9961 + "default.handlebars->27->889"
9962 ]
9963 },
9964 {
@@ -9984,7 +9993,7 @@
9993 "ru": "Функции",
9994 "zh-chs": "特徵",
9995 "xloc": [
9987 - "default.handlebars->27->1092"
9996 + "default.handlebars->27->1094"
9997 ]
9998 },
9999 {
@@ -10000,7 +10009,7 @@
10009 "ru": "Фиджи",
10010 "zh-chs": "斐濟",
10011 "xloc": [
10003 - "default.handlebars->27->888"
10012 + "default.handlebars->27->890"
10013 ]
10014 },
10015 {
@@ -10018,8 +10027,8 @@
10027 "zh-chs": "文件編輯器",
10028 "xloc": [
10029 "default-mobile.handlebars->9->258",
10021 - "default.handlebars->27->413",
10022 - "default.handlebars->27->709"
10030 + "default.handlebars->27->415",
10031 + "default.handlebars->27->711"
10032 ]
10033 },
10034 {
@@ -10053,7 +10062,7 @@
10062 "ru": "Драйвер файловой системы",
10063 "zh-chs": "FileSystemDriver",
10064 "xloc": [
10056 - "default.handlebars->27->669"
10065 + "default.handlebars->27->671"
10066 ]
10067 },
10068 {
@@ -10070,7 +10079,7 @@
10079 "ru": "Файлы",
10080 "zh-chs": "檔案",
10081 "xloc": [
10073 - "default.handlebars->27->1178",
10082 + "default.handlebars->27->1180",
10083 "default.handlebars->container->topbar->1->1->MainSubMenuSpan->MainSubMenu->1->0->MainDevFiles",
10084 "default.handlebars->contextMenu->cxfiles"
10085 ]
@@ -10106,7 +10115,7 @@
10115 "ru": "Уведомление файлов",
10116 "zh-chs": "文件通知",
10117 "xloc": [
10109 - "default.handlebars->27->1100"
10118 + "default.handlebars->27->1102"
10119 ]
10120 },
10121 {
@@ -10123,7 +10132,7 @@
10132 "ru": "Запрос файлов",
10133 "zh-chs": "文件提示",
10134 "xloc": [
10126 - "default.handlebars->27->1099"
10135 + "default.handlebars->27->1101"
10136 ]
10137 },
10138 {
@@ -10158,7 +10167,7 @@
10167 "ru": "Финский",
10168 "zh-chs": "芬蘭",
10169 "xloc": [
10161 - "default.handlebars->27->889"
10170 + "default.handlebars->27->891"
10171 ]
10172 },
10173 {
@@ -10240,7 +10249,7 @@
10249 "ru": "Для Linux вырезайте и вставляйте в терминал следующее, чтобы установить агент:",
10250 "zh-chs": "对于Linux,将以下内容剪切并粘贴到终端中以安装代理程序:",
10251 "xloc": [
10243 - "mesh-invite.html->0->13->1",
10252 + "mesh-invite.html->2->13->1",
10253 "mesh-invite.txt"
10254 ]
10255 },
@@ -10270,8 +10279,8 @@
10279 "ru": "Принудительно сбросить пароль при следующем входе в систему.",
10280 "zh-chs": "下次登錄時強制重置密碼。",
10281 "xloc": [
10273 - "default.handlebars->27->1381",
10274 - "default.handlebars->27->1498"
10282 + "default.handlebars->27->1383",
10283 + "default.handlebars->27->1500"
10284 ]
10285 },
10286 {
@@ -10357,8 +10366,8 @@
10366 "ru": "Свободно",
10367 "zh-chs": "自由",
10368 "xloc": [
10360 - "default.handlebars->27->1538",
10361 - "default.handlebars->27->1540"
10369 + "default.handlebars->27->1540",
10370 + "default.handlebars->27->1542"
10371 ]
10372 },
10373 {
@@ -10392,7 +10401,7 @@
10401 "ru": "Французский (Бельгия)",
10402 "zh-chs": "法語(比利時)",
10403 "xloc": [
10395 - "default.handlebars->27->891"
10404 + "default.handlebars->27->893"
10405 ]
10406 },
10407 {
@@ -10408,7 +10417,7 @@
10417 "ru": "Французский (Канада)",
10418 "zh-chs": "法語(加拿大)",
10419 "xloc": [
10411 - "default.handlebars->27->892"
10420 + "default.handlebars->27->894"
10421 ]
10422 },
10423 {
@@ -10424,7 +10433,7 @@
10433 "ru": "Французский (Франция)",
10434 "zh-chs": "法語(法國)",
10435 "xloc": [
10427 - "default.handlebars->27->893"
10436 + "default.handlebars->27->895"
10437 ]
10438 },
10439 {
@@ -10440,7 +10449,7 @@
10449 "ru": "Французский (Люксембург)",
10450 "zh-chs": "法語(盧森堡)",
10451 "xloc": [
10443 - "default.handlebars->27->894"
10452 + "default.handlebars->27->896"
10453 ]
10454 },
10455 {
@@ -10456,7 +10465,7 @@
10465 "ru": "Французский (Монако)",
10466 "zh-chs": "法語(摩納哥)",
10467 "xloc": [
10459 - "default.handlebars->27->895"
10468 + "default.handlebars->27->897"
10469 ]
10470 },
10471 {
@@ -10472,7 +10481,7 @@
10481 "ru": "Французский (Стандартный)",
10482 "zh-chs": "法語(標準)",
10483 "xloc": [
10475 - "default.handlebars->27->890"
10484 + "default.handlebars->27->892"
10485 ]
10486 },
10487 {
@@ -10488,7 +10497,7 @@
10497 "ru": "Французский (Швейцария)",
10498 "zh-chs": "法語(瑞士)",
10499 "xloc": [
10491 - "default.handlebars->27->896"
10500 + "default.handlebars->27->898"
10501 ]
10502 },
10503 {
@@ -10504,7 +10513,7 @@
10513 "ru": "Фризский",
10514 "zh-chs": "弗里斯蘭語",
10515 "xloc": [
10507 - "default.handlebars->27->897"
10516 + "default.handlebars->27->899"
10517 ]
10518 },
10519 {
@@ -10520,7 +10529,7 @@
10529 "ru": "Фриульский",
10530 "zh-chs": "弗留利",
10531 "xloc": [
10523 - "default.handlebars->27->898"
10532 + "default.handlebars->27->900"
10533 ]
10534 },
10535 {
@@ -10541,9 +10550,9 @@
10550 "default-mobile.handlebars->9->296",
10551 "default-mobile.handlebars->9->314",
10552 "default-mobile.handlebars->9->67",
10544 - "default.handlebars->27->1071",
10545 - "default.handlebars->27->1196",
10546 - "default.handlebars->27->1393"
10553 + "default.handlebars->27->1073",
10554 + "default.handlebars->27->1198",
10555 + "default.handlebars->27->1395"
10556 ]
10557 },
10558 {
@@ -10560,7 +10569,7 @@
10569 "ru": "Администратор с полным доступом (все права)",
10570 "zh-chs": "正式管理員(保留所有權利)",
10571 "xloc": [
10563 - "default.handlebars->27->1224"
10572 + "default.handlebars->27->1226"
10573 ]
10574 },
10575 {
@@ -10590,7 +10599,7 @@
10599 "ru": "Полные права на устройство",
10600 "zh-chs": "完整的設備權限",
10601 "xloc": [
10593 - "default.handlebars->27->539"
10602 + "default.handlebars->27->541"
10603 ]
10604 },
10605 {
@@ -10603,7 +10612,7 @@
10612 "ru": "Полные права",
10613 "zh-chs": "完全权利",
10614 "xloc": [
10606 - "default.handlebars->27->555"
10615 + "default.handlebars->27->557"
10616 ]
10617 },
10618 {
@@ -10639,7 +10648,7 @@
10648 "ru": "Администратор с полным доступом",
10649 "zh-chs": "正式管理員",
10650 "xloc": [
10642 - "default.handlebars->27->1451"
10651 + "default.handlebars->27->1453"
10652 ]
10653 },
10654 {
@@ -10655,7 +10664,7 @@
10664 "ru": "Гэльский (Ирландский)",
10665 "zh-chs": "蓋爾語(愛爾蘭)",
10666 "xloc": [
10658 - "default.handlebars->27->900"
10667 + "default.handlebars->27->902"
10668 ]
10669 },
10670 {
@@ -10671,7 +10680,7 @@
10680 "ru": "Гэльский (Шотландия)",
10681 "zh-chs": "蓋爾語(蘇格蘭語)",
10682 "xloc": [
10674 - "default.handlebars->27->899"
10683 + "default.handlebars->27->901"
10684 ]
10685 },
10686 {
@@ -10687,7 +10696,7 @@
10696 "ru": "Галицкий",
10697 "zh-chs": "加拉契人",
10698 "xloc": [
10690 - "default.handlebars->27->901"
10699 + "default.handlebars->27->903"
10700 ]
10701 },
10702 {
@@ -10760,7 +10769,7 @@
10769 "ru": "Общая информация",
10770 "zh-chs": "一般信息",
10771 "xloc": [
10763 - "default.handlebars->27->420"
10772 + "default.handlebars->27->422"
10773 ]
10774 },
10775 {
@@ -10793,7 +10802,7 @@
10802 "ru": "Грузинский",
10803 "zh-chs": "格魯吉亞人",
10804 "xloc": [
10796 - "default.handlebars->27->902"
10805 + "default.handlebars->27->904"
10806 ]
10807 },
10808 {
@@ -10809,7 +10818,7 @@
10818 "ru": "Немецкий (Австрия)",
10819 "zh-chs": "德語(奧地利)",
10820 "xloc": [
10812 - "default.handlebars->27->904"
10821 + "default.handlebars->27->906"
10822 ]
10823 },
10824 {
@@ -10825,7 +10834,7 @@
10834 "ru": "Немецкий (Германия)",
10835 "zh-chs": "德文(德國)",
10836 "xloc": [
10828 - "default.handlebars->27->905"
10837 + "default.handlebars->27->907"
10838 ]
10839 },
10840 {
@@ -10841,7 +10850,7 @@
10850 "ru": "Немецкий (Лихтенштейн)",
10851 "zh-chs": "德文(列支敦士登)",
10852 "xloc": [
10844 - "default.handlebars->27->906"
10853 + "default.handlebars->27->908"
10854 ]
10855 },
10856 {
@@ -10857,7 +10866,7 @@
10866 "ru": "Немецкий (Люксембург)",
10867 "zh-chs": "德語(盧森堡)",
10868 "xloc": [
10860 - "default.handlebars->27->907"
10869 + "default.handlebars->27->909"
10870 ]
10871 },
10872 {
@@ -10873,7 +10882,7 @@
10882 "ru": "Немецкий (Стандартный)",
10883 "zh-chs": "德語(標準)",
10884 "xloc": [
10876 - "default.handlebars->27->903"
10885 + "default.handlebars->27->905"
10886 ]
10887 },
10888 {
@@ -10889,7 +10898,7 @@
10898 "ru": "Немецкий (Швейцария)",
10899 "zh-chs": "德語(瑞士)",
10900 "xloc": [
10892 - "default.handlebars->27->908"
10901 + "default.handlebars->27->910"
10902 ]
10903 },
10904 {
@@ -10906,7 +10915,7 @@
10915 "ru": "Получить учетные данные MQTT для этого устройства.",
10916 "zh-chs": "獲取此設備的MQTT登錄憑據。",
10917 "xloc": [
10909 - "default.handlebars->27->523"
10918 + "default.handlebars->27->525"
10919 ]
10920 },
10921 {
@@ -10959,7 +10968,7 @@
10968 "ru": "Хорошо",
10969 "zh-chs": "好",
10970 "xloc": [
10962 - "default.handlebars->27->1067"
10971 + "default.handlebars->27->1069"
10972 ]
10973 },
10974 {
@@ -10995,7 +11004,7 @@
11004 "ru": "Греческий",
11005 "zh-chs": "希臘語",
11006 "xloc": [
10998 - "default.handlebars->27->909"
11007 + "default.handlebars->27->911"
11008 ]
11009 },
11010 {
@@ -11013,7 +11022,7 @@
11022 "zh-chs": "組",
11023 "xloc": [
11024 "default-mobile.handlebars->9->138",
11016 - "default.handlebars->27->445",
11025 + "default.handlebars->27->447",
11026 "default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->9->devListToolbarSort->sortselect->1"
11027 ]
11028 },
@@ -11031,7 +11040,7 @@
11040 "ru": "Групповое действие",
11041 "zh-chs": "集體行動",
11042 "xloc": [
11034 - "default.handlebars->27->382",
11043 + "default.handlebars->27->384",
11044 "default.handlebars->container->column_l->p1->devListToolbarSpan->1->0->devListToolbar"
11045 ]
11046 },
@@ -11049,7 +11058,7 @@
11058 "ru": "Члены группы",
11059 "zh-chs": "小組成員",
11060 "xloc": [
11052 - "default.handlebars->27->1422"
11061 + "default.handlebars->27->1424"
11062 ]
11063 },
11064 {
@@ -11066,7 +11075,7 @@
11075 "ru": "Права на группу для пользователя {0}.",
11076 "zh-chs": "用戶{0}的組權限。",
11077 "xloc": [
11069 - "default.handlebars->27->1195"
11078 + "default.handlebars->27->1197"
11079 ]
11080 },
11081 {
@@ -11083,7 +11092,7 @@
11092 "ru": "Права на группу для {0}.",
11093 "zh-chs": "{0}的組權限。",
11094 "xloc": [
11086 - "default.handlebars->27->1194"
11095 + "default.handlebars->27->1196"
11096 ]
11097 },
11098 {
@@ -11117,7 +11126,7 @@
11126 "ru": "Группы",
11127 "zh-chs": "團體",
11128 "xloc": [
11120 - "default.handlebars->27->1331",
11129 + "default.handlebars->27->1333",
11130 "default.handlebars->container->topbar->1->1->UsersSubMenuSpan->UsersSubMenu->1->0->UsersGroups"
11131 ]
11132 },
@@ -11134,7 +11143,7 @@
11143 "ru": "Гуджарати",
11144 "zh-chs": "古久拉提",
11145 "xloc": [
11137 - "default.handlebars->27->910"
11146 + "default.handlebars->27->912"
11147 ]
11148 },
11149 {
@@ -11169,7 +11178,7 @@
11178 "ru": "Гаитянский",
11179 "zh-chs": "海地",
11180 "xloc": [
11172 - "default.handlebars->27->911"
11181 + "default.handlebars->27->913"
11182 ]
11183 },
11184 {
@@ -11203,7 +11212,7 @@
11212 "ru": "Жесткое отключение агента",
11213 "zh-chs": "硬斷開劑",
11214 "xloc": [
11206 - "default.handlebars->27->805"
11215 + "default.handlebars->27->807"
11216 ]
11217 },
11218 {
@@ -11220,7 +11229,7 @@
11229 "ru": "Всего кучи",
11230 "zh-chs": "堆總數",
11231 "xloc": [
11223 - "default.handlebars->27->1579"
11232 + "default.handlebars->27->1581"
11233 ]
11234 },
11235 {
@@ -11237,7 +11246,7 @@
11246 "ru": "Куча используется",
11247 "zh-chs": "堆使用",
11248 "xloc": [
11240 - "default.handlebars->27->1578"
11249 + "default.handlebars->27->1580"
11250 ]
11251 },
11252 {
@@ -11254,7 +11263,7 @@
11263 "ru": "Иврит",
11264 "zh-chs": "希伯來語",
11265 "xloc": [
11257 - "default.handlebars->27->912"
11266 + "default.handlebars->27->914"
11267 ]
11268 },
11269 {
@@ -11267,7 +11276,7 @@
11276 "ru": "Здравствуйте, [[[NAME]]],",
11277 "zh-chs": "您好[[[NAME]]],",
11278 "xloc": [
11270 - "mesh-invite.html->0->3->1",
11279 + "mesh-invite.html->2->3->1",
11280 "mesh-invite.txt"
11281 ]
11282 },
@@ -11285,7 +11294,7 @@
11294 "ru": "Помочь перевести MeshCentral",
11295 "zh-chs": "幫助翻譯MeshCentral",
11296 "xloc": [
11288 - "default.handlebars->27->1026"
11297 + "default.handlebars->27->1028"
11298 ]
11299 },
11300 {
@@ -11298,8 +11307,8 @@
11307 "ru": "Привет [[[USERNAME]]],",
11308 "zh-chs": "[[[USERNAME]],你好,",
11309 "xloc": [
11301 - "account-check.html->0->3",
11302 - "account-reset.html->0->3"
11310 + "account-check.html->2->3",
11311 + "account-reset.html->2->3"
11312 ]
11313 },
11314 {
@@ -11342,7 +11351,7 @@
11351 "xloc": [
11352 "default-mobile.handlebars->9->108",
11353 "default-mobile.handlebars->9->115",
11345 - "default.handlebars->27->346",
11354 + "default.handlebars->27->348",
11355 "default.handlebars->27->5"
11356 ]
11357 },
@@ -11360,7 +11369,7 @@
11369 "ru": "Хинди",
11370 "zh-chs": "印地語",
11371 "xloc": [
11363 - "default.handlebars->27->913"
11372 + "default.handlebars->27->915"
11373 ]
11374 },
11375 {
@@ -11396,7 +11405,7 @@
11405 "zh-chs": "持有1份副本",
11406 "xloc": [
11407 "default-mobile.handlebars->9->267",
11399 - "default.handlebars->27->718"
11408 + "default.handlebars->27->720"
11409 ]
11410 },
11411 {
@@ -11414,7 +11423,7 @@
11423 "zh-chs": "持有1個搬家公司",
11424 "xloc": [
11425 "default-mobile.handlebars->9->271",
11417 - "default.handlebars->27->722"
11426 + "default.handlebars->27->724"
11427 ]
11428 },
11429 {
@@ -11432,7 +11441,7 @@
11441 "zh-chs": "保留{0}個條目進行複制",
11442 "xloc": [
11443 "default-mobile.handlebars->9->265",
11435 - "default.handlebars->27->716"
11444 + "default.handlebars->27->718"
11445 ]
11446 },
11447 {
@@ -11450,7 +11459,7 @@
11459 "zh-chs": "保留{0}個條目以進行移動",
11460 "xloc": [
11461 "default-mobile.handlebars->9->269",
11453 - "default.handlebars->27->720"
11462 + "default.handlebars->27->722"
11463 ]
11464 },
11465 {
@@ -11468,7 +11477,7 @@
11477 "zh-chs": "保持{2}的{0}入口{1}",
11478 "xloc": [
11479 "default-mobile.handlebars->9->91",
11471 - "default.handlebars->27->1313"
11480 + "default.handlebars->27->1315"
11481 ]
11482 },
11483 {
@@ -11490,10 +11499,10 @@
11499 "default-mobile.handlebars->9->143",
11500 "default-mobile.handlebars->9->227",
11501 "default.handlebars->27->223",
11493 - "default.handlebars->27->450",
11494 - "default.handlebars->27->451",
11502 + "default.handlebars->27->452",
11503 "default.handlebars->27->453",
11496 - "default.handlebars->27->646"
11504 + "default.handlebars->27->455",
11505 + "default.handlebars->27->648"
11506 ]
11507 },
11508 {
@@ -11510,7 +11519,7 @@
11519 "ru": "Синхронизация имени хоста",
11520 "zh-chs": "主機名同步",
11521 "xloc": [
11513 - "default.handlebars->27->1090"
11522 + "default.handlebars->27->1092"
11523 ]
11524 },
11525 {
@@ -11526,7 +11535,7 @@
11535 "ru": "Венгерский",
11536 "zh-chs": "匈牙利",
11537 "xloc": [
11529 - "default.handlebars->27->914"
11538 + "default.handlebars->27->916"
11539 ]
11540 },
11541 {
@@ -11578,7 +11587,7 @@
11587 "ru": "IP: {0}",
11588 "zh-chs": "IP:{0}",
11589 "xloc": [
11581 - "default.handlebars->27->758"
11590 + "default.handlebars->27->760"
11591 ]
11592 },
11593 {
@@ -11594,7 +11603,7 @@
11603 "ru": "IP: {0}, маска: {1}, шлюз: {2}",
11604 "zh-chs": "IP:{0},掩碼:{1},網關:{2}",
11605 "xloc": [
11597 - "default.handlebars->27->756"
11606 + "default.handlebars->27->758"
11607 ]
11608 },
11609 {
@@ -11610,8 +11619,8 @@
11619 "ru": "Уровень IPv4",
11620 "zh-chs": "IPv4層",
11621 "xloc": [
11613 - "default.handlebars->27->755",
11614 - "default.handlebars->27->757"
11622 + "default.handlebars->27->757",
11623 + "default.handlebars->27->759"
11624 ]
11625 },
11626 {
@@ -11678,7 +11687,7 @@
11687 "ru": "Исландский",
11688 "zh-chs": "冰島的",
11689 "xloc": [
11681 - "default.handlebars->27->915"
11690 + "default.handlebars->27->917"
11691 ]
11692 },
11693 {
@@ -11696,7 +11705,7 @@
11705 "zh-chs": "圖標選擇",
11706 "xloc": [
11707 "default-mobile.handlebars->9->225",
11699 - "default.handlebars->27->644"
11708 + "default.handlebars->27->646"
11709 ]
11710 },
11711 {
@@ -11713,7 +11722,7 @@
11722 "ru": "Идентификатор",
11723 "zh-chs": "識別碼",
11724 "xloc": [
11716 - "default.handlebars->27->783"
11725 + "default.handlebars->27->785"
11726 ]
11727 },
11728 {
@@ -11726,11 +11735,11 @@
11735 "ru": "Если вы не инициировали этот запрос, игнорируйте это письмо.",
11736 "zh-chs": "如果您没有发起此请求,请忽略此邮件。",
11737 "xloc": [
11729 - "account-check.html->0",
11738 + "account-check.html->2",
11739 "account-check.txt",
11731 - "account-reset.html->0",
11740 + "account-reset.html->2",
11741 "account-reset.txt",
11733 - "mesh-invite.html->0->17",
11742 + "mesh-invite.html->2->17",
11743 "mesh-invite.txt"
11744 ]
11745 },
@@ -11807,7 +11816,7 @@
11816 "ru": "Индонезийский",
11817 "zh-chs": "印度尼西亞",
11818 "xloc": [
11810 - "default.handlebars->27->916"
11819 + "default.handlebars->27->918"
11820 ]
11821 },
11822 {
@@ -11876,7 +11885,7 @@
11885 "ru": "Установка",
11886 "zh-chs": "安裝",
11887 "xloc": [
11879 - "default.handlebars->27->1131"
11888 + "default.handlebars->27->1133"
11889 ]
11890 },
11891 {
@@ -11925,7 +11934,7 @@
11934 "ru": "Установка CIRA",
11935 "zh-chs": "安裝CIRA",
11936 "xloc": [
11928 - "default.handlebars->27->1123"
11937 + "default.handlebars->27->1125"
11938 ]
11939 },
11940 {
@@ -11942,7 +11951,7 @@
11951 "ru": "Локальная установка",
11952 "zh-chs": "安裝本地",
11953 "xloc": [
11945 - "default.handlebars->27->1125"
11954 + "default.handlebars->27->1127"
11955 ]
11956 },
11957 {
@@ -11959,10 +11968,10 @@
11968 "ru": "Тип установки",
11969 "zh-chs": "安裝類型",
11970 "xloc": [
11962 - "default.handlebars->27->1253",
11963 - "default.handlebars->27->1260",
11964 - "default.handlebars->27->283",
11965 - "default.handlebars->27->305"
11971 + "default.handlebars->27->1255",
11972 + "default.handlebars->27->1262",
11973 + "default.handlebars->27->285",
11974 + "default.handlebars->27->307"
11975 ]
11976 },
11977 {
@@ -11979,7 +11988,7 @@
11988 "ru": "Intel (F10 = ESC+[OM)",
11989 "zh-chs": "英特爾(F10 = ESC + [OM)",
11990 "xloc": [
11982 - "default.handlebars->27->688",
11991 + "default.handlebars->27->690",
11992 "default.handlebars->container->column_l->p12->termTable->1->1->6->1->1->terminalSettingsButtons"
11993 ]
11994 },
@@ -11997,10 +12006,10 @@
12006 "ru": "Intel AMT",
12007 "zh-chs": "英特爾AMT",
12008 "xloc": [
12000 - "default.handlebars->27->1272",
12001 - "default.handlebars->27->1278",
12002 - "default.handlebars->27->1575",
12003 - "default.handlebars->27->1597"
12009 + "default.handlebars->27->1274",
12010 + "default.handlebars->27->1280",
12011 + "default.handlebars->27->1577",
12012 + "default.handlebars->27->1599"
12013 ]
12014 },
12015 {
@@ -12068,7 +12077,7 @@
12077 "ru": "Intel AMT активирован в режиме администратора",
12078 "zh-chs": "在管理控制模式下激活了Intel AMT",
12079 "xloc": [
12071 - "default.handlebars->27->466"
12080 + "default.handlebars->27->468"
12081 ]
12082 },
12083 {
@@ -12085,7 +12094,7 @@
12094 "ru": "Intel AMT активирован в режиме клиента",
12095 "zh-chs": "英特爾AMT在客戶端控制模式下被激活",
12096 "xloc": [
12088 - "default.handlebars->27->464"
12097 + "default.handlebars->27->466"
12098 ]
12099 },
12100 {
@@ -12102,7 +12111,7 @@
12111 "ru": "Intel AMT настроен с TLS безопасностью сети",
12112 "zh-chs": "英特爾AMT已設置TLS網絡安全性",
12113 "xloc": [
12105 - "default.handlebars->27->468"
12114 + "default.handlebars->27->470"
12115 ]
12116 },
12117 {
@@ -12153,7 +12162,7 @@
12162 "ru": "Intel ASCII",
12163 "zh-chs": "英特爾ASCII",
12164 "xloc": [
12156 - "default.handlebars->27->687"
12165 + "default.handlebars->27->689"
12166 ]
12167 },
12168 {
@@ -12173,11 +12182,11 @@
12182 "default-mobile.handlebars->9->127",
12183 "default-mobile.handlebars->9->191",
12184 "default-mobile.handlebars->9->196",
12176 - "default.handlebars->27->1107",
12177 - "default.handlebars->27->1117",
12178 - "default.handlebars->27->423",
12179 - "default.handlebars->27->476",
12180 - "default.handlebars->27->492"
12185 + "default.handlebars->27->1109",
12186 + "default.handlebars->27->1119",
12187 + "default.handlebars->27->425",
12188 + "default.handlebars->27->478",
12189 + "default.handlebars->27->494"
12190 ]
12191 },
12192 {
@@ -12195,7 +12204,7 @@
12204 "zh-chs": "英特爾&reg;AMT CIRA",
12205 "xloc": [
12206 "default-mobile.handlebars->9->195",
12198 - "default.handlebars->27->490"
12207 + "default.handlebars->27->492"
12208 ]
12209 },
12210 {
@@ -12213,8 +12222,8 @@
12222 "zh-chs": "英特爾&reg;AMT CIRA已連接並可以使用。",
12223 "xloc": [
12224 "default.handlebars->27->169",
12216 - "default.handlebars->27->360",
12217 - "default.handlebars->27->489"
12225 + "default.handlebars->27->362",
12226 + "default.handlebars->27->491"
12227 ]
12228 },
12229 {
@@ -12250,7 +12259,7 @@
12259 "ru": "Политика Intel&reg; AMT",
12260 "zh-chs": "英特爾&reg;AMT政策",
12261 "xloc": [
12253 - "default.handlebars->27->1146"
12262 + "default.handlebars->27->1148"
12263 ]
12264 },
12265 {
@@ -12284,7 +12293,7 @@
12293 "ru": "Intel&reg; AMT Тег",
12294 "zh-chs": "英特爾&reg;AMT標籤",
12295 "xloc": [
12287 - "default.handlebars->27->480"
12296 + "default.handlebars->27->482"
12297 ]
12298 },
12299 {
@@ -12337,8 +12346,8 @@
12346 "zh-chs": "英特爾&reg;AMT已連接",
12347 "xloc": [
12348 "default-mobile.handlebars->9->205",
12340 - "default.handlebars->27->527",
12341 - "default.handlebars->27->528"
12349 + "default.handlebars->27->529",
12350 + "default.handlebars->27->530"
12351 ]
12352 },
12353 {
@@ -12355,8 +12364,8 @@
12364 "ru": "События Intel&reg; AMT desktop или serial.",
12365 "zh-chs": "英特爾&reg;AMT桌面和串行事件。",
12366 "xloc": [
12358 - "default.handlebars->27->1032",
12359 - "default.handlebars->27->1268"
12367 + "default.handlebars->27->1034",
12368 + "default.handlebars->27->1270"
12369 ]
12370 },
12371 {
@@ -12374,8 +12383,8 @@
12383 "zh-chs": "檢測到英特爾&reg;AMT",
12384 "xloc": [
12385 "default-mobile.handlebars->9->206",
12377 - "default.handlebars->27->529",
12378 - "default.handlebars->27->530"
12386 + "default.handlebars->27->531",
12387 + "default.handlebars->27->532"
12388 ]
12389 },
12390 {
@@ -12392,7 +12401,7 @@
12401 "ru": "Intel&reg; AMT маршрутизируется и готов к использованию.",
12402 "zh-chs": "英特爾&reg;AMT可路由並可以使用。",
12403 "xloc": [
12395 - "default.handlebars->27->491"
12404 + "default.handlebars->27->493"
12405 ]
12406 },
12407 {
@@ -12410,7 +12419,7 @@
12419 "zh-chs": "英特爾&reg;AMT是可路由的。",
12420 "xloc": [
12421 "default.handlebars->27->171",
12413 - "default.handlebars->27->362"
12422 + "default.handlebars->27->364"
12423 ]
12424 },
12425 {
@@ -12445,8 +12454,8 @@
12454 "zh-chs": "僅限英特爾&reg;AMT,無代理",
12455 "xloc": [
12456 "default-mobile.handlebars->9->278",
12448 - "default.handlebars->27->1061",
12449 - "default.handlebars->27->1083"
12457 + "default.handlebars->27->1063",
12458 + "default.handlebars->27->1085"
12459 ]
12460 },
12461 {
@@ -12463,7 +12472,7 @@
12472 "ru": "Технология Intel&reg; Active Management",
12473 "zh-chs": "英特爾&reg;主動管理技術",
12474 "xloc": [
12466 - "default.handlebars->27->475"
12475 + "default.handlebars->27->477"
12476 ]
12477 },
12478 {
@@ -12480,7 +12489,7 @@
12489 "ru": "Intel&reg; Active Management Technology (Intel&reg; AMT)",
12490 "zh-chs": "英特爾&reg;主動管理技術(英特爾&reg;AMT)",
12491 "xloc": [
12483 - "default.handlebars->27->775"
12492 + "default.handlebars->27->777"
12493 ]
12494 },
12495 {
@@ -12498,7 +12507,7 @@
12507 "zh-chs": "英特爾&reg;ME",
12508 "xloc": [
12509 "default-mobile.handlebars->9->190",
12501 - "default.handlebars->27->474"
12510 + "default.handlebars->27->476"
12511 ]
12512 },
12513 {
@@ -12516,7 +12525,7 @@
12525 "zh-chs": "英特爾&reg;SM",
12526 "xloc": [
12527 "default-mobile.handlebars->9->192",
12519 - "default.handlebars->27->478"
12528 + "default.handlebars->27->480"
12529 ]
12530 },
12531 {
@@ -12533,7 +12542,7 @@
12542 "ru": "Intel&reg; Standard Manageability",
12543 "zh-chs": "英特爾&reg;標準可管理性",
12544 "xloc": [
12536 - "default.handlebars->27->477"
12545 + "default.handlebars->27->479"
12546 ]
12547 },
12548 {
@@ -12634,7 +12643,7 @@
12643 "ru": "Интерактивный",
12644 "zh-chs": "互動",
12645 "xloc": [
12637 - "default.handlebars->27->670"
12646 + "default.handlebars->27->672"
12647 ]
12648 },
12649 {
@@ -12651,10 +12660,10 @@
12660 "ru": "Только интерактивный режим",
12661 "zh-chs": "僅限互動",
12662 "xloc": [
12654 - "default.handlebars->27->1256",
12655 - "default.handlebars->27->1263",
12656 - "default.handlebars->27->286",
12657 - "default.handlebars->27->308"
12663 + "default.handlebars->27->1258",
12664 + "default.handlebars->27->1265",
12665 + "default.handlebars->27->288",
12666 + "default.handlebars->27->310"
12667 ]
12668 },
12669 {
@@ -12671,7 +12680,7 @@
12680 "ru": "Интерфейсы",
12681 "zh-chs": "介面",
12682 "xloc": [
12674 - "default.handlebars->27->510"
12683 + "default.handlebars->27->512"
12684 ]
12685 },
12686 {
@@ -12687,7 +12696,7 @@
12696 "ru": "Инуктитут",
12697 "zh-chs": "因紐特人",
12698 "xloc": [
12690 - "default.handlebars->27->917"
12699 + "default.handlebars->27->919"
12700 ]
12701 },
12702 {
@@ -12704,7 +12713,7 @@
12713 "ru": "Некорректный тип группы устройств",
12714 "zh-chs": "無效的設備組類型",
12715 "xloc": [
12707 - "default.handlebars->27->1552"
12716 + "default.handlebars->27->1554"
12717 ]
12718 },
12719 {
@@ -12721,7 +12730,7 @@
12730 "ru": "Некорректный JSON",
12731 "zh-chs": "無效的JSON",
12732 "xloc": [
12724 - "default.handlebars->27->1546"
12733 + "default.handlebars->27->1548"
12734 ]
12735 },
12736 {
@@ -12738,8 +12747,8 @@
12747 "ru": "Некорректный формат файла JSON.",
12748 "zh-chs": "無效的JSON文件格式。",
12749 "xloc": [
12741 - "default.handlebars->27->1362",
12742 - "default.handlebars->27->1364"
12750 + "default.handlebars->27->1364",
12751 + "default.handlebars->27->1366"
12752 ]
12753 },
12754 {
@@ -12756,7 +12765,7 @@
12765 "ru": "Некорректный файл JSON: {0}.",
12766 "zh-chs": "無效的JSON文件:{0}。",
12767 "xloc": [
12759 - "default.handlebars->27->1360"
12768 + "default.handlebars->27->1362"
12769 ]
12770 },
12771 {
@@ -12773,7 +12782,7 @@
12782 "ru": "Некорректная сигнатура PKCS",
12783 "zh-chs": "無效的PKCS簽名",
12784 "xloc": [
12776 - "default.handlebars->27->1544"
12785 + "default.handlebars->27->1546"
12786 ]
12787 },
12788 {
@@ -12790,7 +12799,7 @@
12799 "ru": "Некорректная сигнатура RSA",
12800 "zh-chs": "無效的RSA密碼",
12801 "xloc": [
12793 - "default.handlebars->27->1545"
12802 + "default.handlebars->27->1547"
12803 ]
12804 },
12805 {
@@ -12923,7 +12932,7 @@
12932 "ru": "Коды приглашений могут использоваться любым пользователем для присоединения устройств к этой группе устройств по следующей общедоступной ссылке:",
12933 "zh-chs": "任何人都可以使用邀請代碼通過以下公共鏈接將設備加入該設備組:",
12934 "xloc": [
12926 - "default.handlebars->27->1258"
12935 + "default.handlebars->27->1260"
12936 ]
12937 },
12938 {
@@ -12952,9 +12961,9 @@
12961 "ru": "Пригласить",
12962 "zh-chs": "邀請",
12963 "xloc": [
12955 - "default.handlebars->27->1133",
12964 + "default.handlebars->27->1135",
12965 "default.handlebars->27->220",
12957 - "default.handlebars->27->298"
12966 + "default.handlebars->27->300"
12967 ]
12968 },
12969 {
@@ -12970,11 +12979,11 @@
12979 "ru": "Пригласительные коды",
12980 "zh-chs": "邀請碼",
12981 "xloc": [
12973 - "default.handlebars->27->1111",
12974 - "default.handlebars->27->1252",
12975 - "default.handlebars->27->1257",
12982 + "default.handlebars->27->1113",
12983 + "default.handlebars->27->1254",
12984 "default.handlebars->27->1259",
12977 - "default.handlebars->27->1264"
12985 + "default.handlebars->27->1261",
12986 + "default.handlebars->27->1266"
12987 ]
12988 },
12989 {
@@ -12991,7 +13000,7 @@
13000 "ru": "Пригласите установить Mesh Agent поделившись ссылкой. Эта ссылка ведет на инструкции для установки для группы устройств \\\"{0}\\\". Ссылка общедоступна и не требует наличия учетной записи на сервере.",
13001 "zh-chs": "通過共享邀請鏈接來邀請某人安裝網格代理。該鏈接為用戶提供 “{0}” 設備組的安裝說明。該鏈接是公共的,不需要該服務器的帳戶。",
13002 "xloc": [
12994 - "default.handlebars->27->289"
13003 + "default.handlebars->27->291"
13004 ]
13005 },
13006 {
@@ -13008,7 +13017,7 @@
13017 "ru": "Отправить приглашение на установку Mesh Agent",
13018 "zh-chs": "邀請某人在此網格上安裝網格代理。",
13019 "xloc": [
13011 - "default.handlebars->27->1132",
13020 + "default.handlebars->27->1134",
13021 "default.handlebars->27->219"
13022 ]
13023 },
@@ -13026,7 +13035,7 @@
13035 "ru": "Пригласите установить Mesh Agent. Ссылка на установку для группы \\\"{0}\\\" будет отправлена по электронной почте.",
13036 "zh-chs": "邀請某人安裝網狀代理。將發送一封電子郵件,其中包含指向 “{0}” 設備組的網狀代理安裝的鏈接。",
13037 "xloc": [
13029 - "default.handlebars->27->266"
13038 + "default.handlebars->27->268"
13039 ]
13040 },
13041 {
@@ -13043,7 +13052,7 @@
13052 "ru": "Ирландский",
13053 "zh-chs": "愛爾蘭人",
13054 "xloc": [
13046 - "default.handlebars->27->918"
13055 + "default.handlebars->27->920"
13056 ]
13057 },
13058 {
@@ -13059,7 +13068,7 @@
13068 "ru": "Итальянский (Стандартный)",
13069 "zh-chs": "意大利語(標準)",
13070 "xloc": [
13062 - "default.handlebars->27->919"
13071 + "default.handlebars->27->921"
13072 ]
13073 },
13074 {
@@ -13075,7 +13084,7 @@
13084 "ru": "Итальянский (Швейцария)",
13085 "zh-chs": "義大利文(瑞士)",
13086 "xloc": [
13078 - "default.handlebars->27->920"
13087 + "default.handlebars->27->922"
13088 ]
13089 },
13090 {
@@ -13092,9 +13101,9 @@
13101 "ru": "Формат JSON",
13102 "zh-chs": "JSON格式",
13103 "xloc": [
13095 - "default.handlebars->27->1324",
13096 - "default.handlebars->27->1368",
13097 - "default.handlebars->27->390"
13104 + "default.handlebars->27->1326",
13105 + "default.handlebars->27->1370",
13106 + "default.handlebars->27->392"
13107 ]
13108 },
13109 {
@@ -13111,7 +13120,7 @@
13120 "ru": "Японский",
13121 "zh-chs": "日本",
13122 "xloc": [
13114 - "default.handlebars->27->921"
13123 + "default.handlebars->27->923"
13124 ]
13125 },
13126 {
@@ -13127,7 +13136,7 @@
13136 "ru": "Каннада",
13137 "zh-chs": "卡納達語",
13138 "xloc": [
13130 - "default.handlebars->27->922"
13139 + "default.handlebars->27->924"
13140 ]
13141 },
13142 {
@@ -13143,7 +13152,7 @@
13152 "ru": "Кашмирский",
13153 "zh-chs": "克什米爾語",
13154 "xloc": [
13146 - "default.handlebars->27->923"
13155 + "default.handlebars->27->925"
13156 ]
13157 },
13158 {
@@ -13159,7 +13168,7 @@
13168 "ru": "Казахский",
13169 "zh-chs": "哈薩克語",
13170 "xloc": [
13162 - "default.handlebars->27->924"
13171 + "default.handlebars->27->926"
13172 ]
13173 },
13174 {
@@ -13176,7 +13185,7 @@
13185 "ru": "Драйвер ядра",
13186 "zh-chs": "內核驅動程序",
13187 "xloc": [
13179 - "default.handlebars->27->671"
13188 + "default.handlebars->27->673"
13189 ]
13190 },
13191 {
@@ -13193,8 +13202,8 @@
13202 "ru": "Имя ключа",
13203 "zh-chs": "鍵名",
13204 "xloc": [
13196 - "default.handlebars->27->815",
13197 - "default.handlebars->27->818"
13205 + "default.handlebars->27->817",
13206 + "default.handlebars->27->820"
13207 ]
13208 },
13209 {
@@ -13227,7 +13236,7 @@
13236 "ru": "Кхмерский",
13237 "zh-chs": "高棉語",
13238 "xloc": [
13230 - "default.handlebars->27->925"
13239 + "default.handlebars->27->927"
13240 ]
13241 },
13242 {
@@ -13243,7 +13252,7 @@
13252 "ru": "Киргизский",
13253 "zh-chs": "吉爾吉斯",
13254 "xloc": [
13246 - "default.handlebars->27->926"
13255 + "default.handlebars->27->928"
13256 ]
13257 },
13258 {
@@ -13259,7 +13268,7 @@
13268 "ru": "Клингонский",
13269 "zh-chs": "克林貢",
13270 "xloc": [
13262 - "default.handlebars->27->927"
13271 + "default.handlebars->27->929"
13272 ]
13273 },
13274 {
@@ -13275,7 +13284,7 @@
13284 "ru": "Известный",
13285 "zh-chs": "已知的",
13286 "xloc": [
13278 - "default.handlebars->27->774"
13287 + "default.handlebars->27->776"
13288 ]
13289 },
13290 {
@@ -13291,7 +13300,7 @@
13300 "ru": "Korean",
13301 "zh-chs": "韓語",
13302 "xloc": [
13294 - "default.handlebars->27->928"
13303 + "default.handlebars->27->930"
13304 ]
13305 },
13306 {
@@ -13307,7 +13316,7 @@
13316 "ru": "Корейский (Северная Корея)",
13317 "zh-chs": "韓語(朝鮮)",
13318 "xloc": [
13310 - "default.handlebars->27->929"
13319 + "default.handlebars->27->931"
13320 ]
13321 },
13322 {
@@ -13323,7 +13332,7 @@
13332 "ru": "Корейский (Южная Корея)",
13333 "zh-chs": "韓語(韓國)",
13334 "xloc": [
13326 - "default.handlebars->27->930"
13335 + "default.handlebars->27->932"
13336 ]
13337 },
13338 {
@@ -13340,8 +13349,8 @@
13349 "ru": "LF",
13350 "zh-chs": "如果",
13351 "xloc": [
13343 - "default.handlebars->27->683",
13344 - "default.handlebars->27->692"
13352 + "default.handlebars->27->685",
13353 + "default.handlebars->27->694"
13354 ]
13355 },
13356 {
@@ -13358,7 +13367,7 @@
13367 "ru": "Язык",
13368 "zh-chs": "語言",
13369 "xloc": [
13361 - "default.handlebars->27->1024"
13370 + "default.handlebars->27->1026"
13371 ]
13372 },
13373 {
@@ -13392,7 +13401,7 @@
13401 "ru": "Большой Фокус",
13402 "zh-chs": "大焦點",
13403 "xloc": [
13395 - "default.handlebars->27->659"
13404 + "default.handlebars->27->661"
13405 ]
13406 },
13407 {
@@ -13575,7 +13584,7 @@
13584 "ru": "Последний доступ",
13585 "zh-chs": "最後訪問",
13586 "xloc": [
13578 - "default.handlebars->27->1332"
13587 + "default.handlebars->27->1334"
13588 ]
13589 },
13590 {
@@ -13592,7 +13601,7 @@
13601 "ru": "Последний вход в систему",
13602 "zh-chs": "上次登錄",
13603 "xloc": [
13595 - "default.handlebars->27->1463"
13604 + "default.handlebars->27->1465"
13605 ]
13606 },
13607 {
@@ -13612,9 +13621,9 @@
13621 "default.handlebars->27->70",
13622 "default.handlebars->27->72",
13623 "default.handlebars->27->74",
13615 - "default.handlebars->27->746",
13616 - "default.handlebars->27->747",
13617 - "default.handlebars->27->748"
13624 + "default.handlebars->27->748",
13625 + "default.handlebars->27->749",
13626 + "default.handlebars->27->750"
13627 ]
13628 },
13629 {
@@ -13632,8 +13641,8 @@
13641 "zh-chs": "上次代理連接",
13642 "xloc": [
13643 "default.handlebars->27->69",
13635 - "default.handlebars->27->743",
13636 - "default.handlebars->27->745"
13644 + "default.handlebars->27->745",
13645 + "default.handlebars->27->747"
13646 ]
13647 },
13648 {
@@ -13650,7 +13659,7 @@
13659 "ru": "Последнее изменение: {0}",
13660 "zh-chs": "上次更改:{0}",
13661 "xloc": [
13653 - "default.handlebars->27->1467"
13662 + "default.handlebars->27->1469"
13663 ]
13664 },
13665 {
@@ -13701,7 +13710,7 @@
13710 "ru": "Последний вход в систему: {0}",
13711 "zh-chs": "上次登錄:{0}",
13712 "xloc": [
13704 - "default.handlebars->27->1342"
13713 + "default.handlebars->27->1344"
13714 ]
13715 },
13716 {
@@ -13718,7 +13727,7 @@
13727 "ru": "Последнее посещение:",
13728 "zh-chs": "最後一次露面:",
13729 "xloc": [
13721 - "default.handlebars->27->533",
13730 + "default.handlebars->27->535",
13731 "default.handlebars->27->65"
13732 ]
13733 },
@@ -13787,7 +13796,7 @@
13796 "ru": "Латинский",
13797 "zh-chs": "拉丁",
13798 "xloc": [
13790 - "default.handlebars->27->931"
13799 + "default.handlebars->27->933"
13800 ]
13801 },
13802 {
@@ -13804,7 +13813,7 @@
13813 "ru": "Латышский",
13814 "zh-chs": "拉脫維亞語",
13815 "xloc": [
13807 - "default.handlebars->27->932"
13816 + "default.handlebars->27->934"
13817 ]
13818 },
13819 {
@@ -13843,7 +13852,7 @@
13852 "ru": "Меньше",
13853 "zh-chs": "減",
13854 "xloc": [
13846 - "default.handlebars->27->1614"
13855 + "default.handlebars->27->1616"
13856 ]
13857 },
13858 {
@@ -13856,8 +13865,8 @@
13865 "ru": "Предельные события",
13866 "zh-chs": "极限赛事",
13867 "xloc": [
13859 - "default.handlebars->27->551",
13860 - "default.handlebars->27->570"
13868 + "default.handlebars->27->553",
13869 + "default.handlebars->27->572"
13870 ]
13871 },
13872 {
@@ -13893,9 +13902,9 @@
13902 "zh-chs": "有限輸入",
13903 "xloc": [
13904 "default-mobile.handlebars->9->327",
13896 - "default.handlebars->27->1238",
13897 - "default.handlebars->27->544",
13898 - "default.handlebars->27->563"
13905 + "default.handlebars->27->1240",
13906 + "default.handlebars->27->546",
13907 + "default.handlebars->27->565"
13908 ]
13909 },
13910 {
@@ -13913,7 +13922,7 @@
13922 "zh-chs": "僅限於輸入",
13923 "xloc": [
13924 "default-mobile.handlebars->9->302",
13916 - "default.handlebars->27->1202"
13925 + "default.handlebars->27->1204"
13926 ]
13927 },
13928 {
@@ -13931,7 +13940,7 @@
13940 "zh-chs": "鏈接",
13941 "xloc": [
13942 "default-mobile.handlebars->9->71",
13934 - "default.handlebars->27->1285",
13943 + "default.handlebars->27->1287",
13944 "default.handlebars->container->column_l->p42->p42tbl->1->0->4"
13945 ]
13946 },
@@ -13949,8 +13958,14 @@
13958 "ru": "Срок действия ссылки",
13959 "zh-chs": "鏈接過期",
13960 "xloc": [
13952 - "default.handlebars->27->276",
13953 - "default.handlebars->27->290"
13961 + "default.handlebars->27->278",
13962 + "default.handlebars->27->292"
13963 + ]
13964 + },
13965 + {
13966 + "en": "Link invitation",
13967 + "xloc": [
13968 + "default.handlebars->27->266"
13969 ]
13970 },
13971 {
@@ -13985,7 +14000,7 @@
14000 "ru": "Linux / BSD",
14001 "zh-chs": "Linux / BSD",
14002 "xloc": [
13988 - "default.handlebars->27->301"
14003 + "default.handlebars->27->303"
14004 ]
14005 },
14006 {
@@ -14002,7 +14017,7 @@
14017 "ru": "Linux / BSD (Удаление)",
14018 "zh-chs": "Linux / BSD(卸載)",
14019 "xloc": [
14005 - "default.handlebars->27->304"
14020 + "default.handlebars->27->306"
14021 ]
14022 },
14023 {
@@ -14073,7 +14088,7 @@
14088 "ru": "Linux ARM, Raspberry Pi (32bit)",
14089 "zh-chs": "Linux ARM,Raspberry Pi(32位)",
14090 "xloc": [
14076 - "default.handlebars->27->627"
14091 + "default.handlebars->27->629"
14092 ]
14093 },
14094 {
@@ -14162,7 +14177,7 @@
14177 "ru": "Только Linux",
14178 "zh-chs": "僅Linux",
14179 "xloc": [
14165 - "default.handlebars->27->275"
14180 + "default.handlebars->27->277"
14181 ]
14182 },
14183 {
@@ -14179,7 +14194,7 @@
14194 "ru": "Linux x86 (32bit)",
14195 "zh-chs": "Linux x86(32位)",
14196 "xloc": [
14182 - "default.handlebars->27->624"
14197 + "default.handlebars->27->626"
14198 ]
14199 },
14200 {
@@ -14196,7 +14211,7 @@
14211 "ru": "Linux x86 (64bit)",
14212 "zh-chs": "Linux x86(64位)",
14213 "xloc": [
14199 - "default.handlebars->27->625"
14214 + "default.handlebars->27->627"
14215 ]
14216 },
14217 {
@@ -14231,7 +14246,7 @@
14246 "ru": "Литовский",
14247 "zh-chs": "立陶宛語",
14248 "xloc": [
14234 - "default.handlebars->27->933"
14249 + "default.handlebars->27->935"
14250 ]
14251 },
14252 {
@@ -14249,10 +14264,10 @@
14264 "zh-chs": "載入中...",
14265 "xloc": [
14266 "default-mobile.handlebars->9->34",
14252 - "default.handlebars->27->1078",
14267 "default.handlebars->27->1080",
14254 - "default.handlebars->27->618",
14255 - "default.handlebars->27->811"
14268 + "default.handlebars->27->1082",
14269 + "default.handlebars->27->620",
14270 + "default.handlebars->27->813"
14271 ]
14272 },
14273 {
@@ -14320,7 +14335,7 @@
14335 "ru": "Настройки локализации",
14336 "zh-chs": "本地化設置",
14337 "xloc": [
14323 - "default.handlebars->27->1027",
14338 + "default.handlebars->27->1029",
14339 "default.handlebars->container->column_l->p2->p2AccountActions->3->5"
14340 ]
14341 },
@@ -14338,7 +14353,7 @@
14353 "ru": "Местонахождение",
14354 "zh-chs": "位置",
14355 "xloc": [
14341 - "default.handlebars->27->512"
14356 + "default.handlebars->27->514"
14357 ]
14358 },
14359 {
@@ -14372,7 +14387,7 @@
14387 "ru": "Заблокировать учетную запись",
14388 "zh-chs": "鎖定賬戶",
14389 "xloc": [
14375 - "default.handlebars->27->1399"
14390 + "default.handlebars->27->1401"
14391 ]
14392 },
14393 {
@@ -14389,7 +14404,7 @@
14404 "ru": "Заблокирован",
14405 "zh-chs": "已鎖定",
14406 "xloc": [
14392 - "default.handlebars->27->1343"
14407 + "default.handlebars->27->1345"
14408 ]
14409 },
14410 {
@@ -14406,7 +14421,7 @@
14421 "ru": "Заблокированная учетная запись",
14422 "zh-chs": "賬戶鎖定",
14423 "xloc": [
14409 - "default.handlebars->27->1448"
14424 + "default.handlebars->27->1450"
14425 ]
14426 },
14427 {
@@ -14423,7 +14438,7 @@
14438 "ru": "Добавить событие",
14439 "zh-chs": "記錄事件",
14440 "xloc": [
14426 - "default.handlebars->27->503"
14441 + "default.handlebars->27->505"
14442 ]
14443 },
14444 {
@@ -14571,7 +14586,7 @@
14586 "ru": "Люксембургский",
14587 "zh-chs": "盧森堡語",
14588 "xloc": [
14574 - "default.handlebars->27->934"
14589 + "default.handlebars->27->936"
14590 ]
14591 },
14592 {
@@ -14587,8 +14602,8 @@
14602 "ru": "MAC-уровень",
14603 "zh-chs": "MAC層",
14604 "xloc": [
14590 - "default.handlebars->27->751",
14591 - "default.handlebars->27->753"
14605 + "default.handlebars->27->753",
14606 + "default.handlebars->27->755"
14607 ]
14608 },
14609 {
@@ -14622,7 +14637,7 @@
14637 "ru": "MAC: {0}",
14638 "zh-chs": "MAC:{0}",
14639 "xloc": [
14625 - "default.handlebars->27->754"
14640 + "default.handlebars->27->756"
14641 ]
14642 },
14643 {
@@ -14638,7 +14653,7 @@
14653 "ru": "MAC: {0}, шлюз: {1}",
14654 "zh-chs": "MAC:{0},網關:{1}",
14655 "xloc": [
14641 - "default.handlebars->27->752"
14656 + "default.handlebars->27->754"
14657 ]
14658 },
14659 {
@@ -14694,10 +14709,10 @@
14709 "default-mobile.handlebars->9->129",
14710 "default-mobile.handlebars->9->198",
14711 "default.handlebars->27->176",
14697 - "default.handlebars->27->367",
14698 - "default.handlebars->27->496",
14699 - "default.handlebars->27->795",
14700 - "default.handlebars->27->796",
14712 + "default.handlebars->27->369",
14713 + "default.handlebars->27->498",
14714 + "default.handlebars->27->797",
14715 + "default.handlebars->27->798",
14716 "default.handlebars->container->column_l->p15->consoleTable->1->6->1->1->1->0->p15outputselecttd->p15outputselect->3"
14717 ]
14718 },

This file is too large to show in full.

views/default.handlebars
+1 -1
@@ -3595,7 +3595,7 @@
3595 if (xxdialogMode) return false;
3596 var x = '', mesh = meshes[meshid];
3597 if (features & 64) {
3598 - x += addHtmlValue("Invitation Type", '<select id=d2InviteType onchange=d2ChangedInviteType() style=width:236px><option value=0>Link invitation</option><option value=1>Email invitation</option></select>') + '<hr />';
3598 + x += addHtmlValue("Invitation Type", '<select id=d2InviteType onchange=d2ChangedInviteType() style=width:236px><option value=0>' + "Link invitation" + '</option><option value=1>' + "Email invitation" + '</option></select>') + '<hr />';
3599 x += '<div id=emailInviteDiv style=display:none>' + format("Invite someone to install the mesh agent. An email with be sent with the link to the mesh agent installation for the \"{0}\" device group.", EscapeHtml(mesh.name)) + '<br /><br />';
3600 x += addHtmlValue("Name (optional)", '<input id=agentInviteName value="" style=width:230px maxlength=64 />');
3601 x += addHtmlValue("Email", '<input id=agentInviteEmail style=width:230px placeholder=\"' + "example@email.com" + '\" onkeyup=validateAgentInvite()></input>');
webserver.js
+74 -26
@@ -180,8 +180,9 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
180 obj.crypto.randomBytes(16, function (err, buf) { obj.httpAuthRealm = buf.toString('hex'); });
181 obj.crypto.randomBytes(48, function (err, buf) { obj.relayRandom = buf; });
182
183 - // Get non-english pages
183 + // Get non-english web pages and emails
184 getRenderList();
185 + getEmailLanguageList();
186
187 // Setup DNS domain TLS SNI credentials
188 {
@@ -781,7 +782,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
782 user.otpekey = { k: obj.common.zeroPad(getRandomEightDigitInteger(), 8), d: Date.now() };
783 obj.db.SetUser(user);
784 parent.debug('web', 'Sending 2FA email to: ' + user.email);
784 - parent.mailserver.sendAccountLoginMail(domain, user.email, user.otpekey.k);
785 + parent.mailserver.sendAccountLoginMail(domain, user.email, user.otpekey.k, obj.getLanguageCodes(req));
786 req.session.messageid = 2; // "Email sent" message
787 req.session.loginmode = '4';
788 if (direct === true) { handleRootRequestEx(req, res, domain); } else { res.redirect(domain.url + getQueryPortion(req)); }
@@ -1028,7 +1029,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
1029 obj.db.SetUser(user);
1030
1031 // Send the verification email
1031 - if ((obj.parent.mailserver != null) && (domain.auth != 'sspi') && (domain.auth != 'ldap') && (obj.common.validateEmail(user.email, 1, 256) == true)) { obj.parent.mailserver.sendAccountCheckMail(domain, user.name, user.email); }
1032 + if ((obj.parent.mailserver != null) && (domain.auth != 'sspi') && (domain.auth != 'ldap') && (obj.common.validateEmail(user.email, 1, 256) == true)) { obj.parent.mailserver.sendAccountCheckMail(domain, user.name, user.email, obj.getLanguageCodes(req)); }
1033 }, 0);
1034 var event = { etype: 'user', userid: user._id, username: user.name, account: obj.CloneSafeUser(user), action: 'accountcreate', msg: 'Account created, email is ' + req.body.email, domain: domain.id };
1035 if (obj.db.changeStream) { event.noact = 1; } // If DB change stream is active, don't use this event to create the user. Another event will come.
@@ -1179,7 +1180,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
1180 // Send email to perform recovery.
1181 delete req.session.tokenemail;
1182 if (obj.parent.mailserver != null) {
1182 - obj.parent.mailserver.sendAccountResetMail(domain, user.name, user.email);
1183 + obj.parent.mailserver.sendAccountResetMail(domain, user.name, user.email, obj.getLanguageCodes(req));
1184 if (i == 0) {
1185 parent.debug('web', 'handleResetAccountRequest: Hold on, reset mail sent.');
1186 req.session.loginmode = '1';
@@ -1199,7 +1200,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
1200 } else {
1201 // No second factor, send email to perform recovery.
1202 if (obj.parent.mailserver != null) {
1202 - obj.parent.mailserver.sendAccountResetMail(domain, user.name, user.email);
1203 + obj.parent.mailserver.sendAccountResetMail(domain, user.name, user.email, obj.getLanguageCodes(req));
1204 if (i == 0) {
1205 parent.debug('web', 'handleResetAccountRequest: Hold on, reset mail sent.');
1206 req.session.loginmode = '1';
@@ -3907,7 +3908,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
3908 user.otpekey = { k: obj.common.zeroPad(getRandomEightDigitInteger(), 8), d: Date.now() };
3909 obj.db.SetUser(user);
3910 parent.debug('web', 'Sending 2FA email to: ' + user.email);
3910 - parent.mailserver.sendAccountLoginMail(domain, user.email, user.otpekey.k);
3911 + parent.mailserver.sendAccountLoginMail(domain, user.email, user.otpekey.k, obj.getLanguageCodes(req));
3912 // Ask for a login token & confirm email was sent
3913 try { ws.send(JSON.stringify({ action: 'close', cause: 'noauth', msg: 'tokenrequired', email2fa: email2fa, email2fasent: true })); ws.close(); } catch (e) { }
3914 } else {
@@ -3984,7 +3985,7 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
3985 user.otpekey = { k: obj.common.zeroPad(getRandomEightDigitInteger(), 8), d: Date.now() };
3986 obj.db.SetUser(user);
3987 parent.debug('web', 'Sending 2FA email to: ' + user.email);
3987 - parent.mailserver.sendAccountLoginMail(domain, user.email, user.otpekey.k);
3988 + parent.mailserver.sendAccountLoginMail(domain, user.email, user.otpekey.k, obj.getLanguageCodes(req));
3989 // Ask for a login token & confirm email was sent
3990 try { ws.send(JSON.stringify({ action: 'close', cause: 'noauth', msg: 'tokenrequired', email2fa: email2fa, email2fasent: true })); ws.close(); } catch (e) { }
3991 } else {
@@ -4663,28 +4664,36 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
4664 }
4665 }
4666
4666 - // Render a page using the proper language
4667 - function render(req, res, filename, args) {
4668 - if (obj.renderPages != null) {
4669 - // If a user set a localization, use that
4670 - if ((req.query.lang == null) && (req.session != null) && (req.session.userid)) {
4671 - var user = obj.users[req.session.userid];
4672 - if ((user != null) && (user.lang != null)) { req.query.lang = user.lang; }
4673 - };
4667 + // Returns a list of acceptable languages in order
4668 + obj.getLanguageCodes = function(req) {
4669 + // If a user set a localization, use that
4670 + if ((req.query.lang == null) && (req.session != null) && (req.session.userid)) {
4671 + var user = obj.users[req.session.userid];
4672 + if ((user != null) && (user.lang != null)) { req.query.lang = user.lang; }
4673 + };
4674
4675 - // Get a list of acceptable languages in order
4676 - var acceptLanguages = [];
4677 - if (req.query.lang != null) {
4678 - acceptLanguages.push(req.query.lang.toLowerCase());
4679 - } else {
4680 - if (req.headers['accept-language'] != null) {
4681 - var acceptLanguageSplit = req.headers['accept-language'].split(';');
4682 - for (var i in acceptLanguageSplit) {
4683 - var acceptLanguageSplitEx = acceptLanguageSplit[i].split(',');
4684 - for (var j in acceptLanguageSplitEx) { if (acceptLanguageSplitEx[j].startsWith('q=') == false) { acceptLanguages.push(acceptLanguageSplitEx[j].toLowerCase()); } }
4685 - }
4675 + // Get a list of acceptable languages in order
4676 + var acceptLanguages = [];
4677 + if (req.query.lang != null) {
4678 + acceptLanguages.push(req.query.lang.toLowerCase());
4679 + } else {
4680 + if (req.headers['accept-language'] != null) {
4681 + var acceptLanguageSplit = req.headers['accept-language'].split(';');
4682 + for (var i in acceptLanguageSplit) {
4683 + var acceptLanguageSplitEx = acceptLanguageSplit[i].split(',');
4684 + for (var j in acceptLanguageSplitEx) { if (acceptLanguageSplitEx[j].startsWith('q=') == false) { acceptLanguages.push(acceptLanguageSplitEx[j].toLowerCase()); } }
4685 }
4686 }
4687 + }
4688 +
4689 + return acceptLanguages;
4690 + }
4691 +
4692 + // Render a page using the proper language
4693 + function render(req, res, filename, args) {
4694 + if (obj.renderPages != null) {
4695 + // Get the list of acceptable languages in order
4696 + var acceptLanguages = obj.getLanguageCodes(req);
4697
4698 // Take a look at the options we have for this file
4699 var fileOptions = obj.renderPages[obj.path.basename(filename)];
@@ -4750,6 +4759,45 @@ module.exports.CreateWebServer = function (parent, db, args, certificates) {
4759 }
4760 }
4761
4762 + // Get the list of pages with different languages that can be rendered
4763 + function getEmailLanguageList() {
4764 + // Fetch default rendeing pages
4765 + var translateFolder = null;
4766 + if (obj.fs.existsSync('emails/translations')) { translateFolder = 'emails/translations'; }
4767 + if (obj.fs.existsSync(obj.path.join(__dirname, 'emails', 'translations'))) { translateFolder = obj.path.join(__dirname, 'emails', 'translations'); }
4768 +
4769 + if (translateFolder != null) {
4770 + obj.emailLanguages = ['en'];
4771 + var files = obj.fs.readdirSync(translateFolder);
4772 + for (var i in files) {
4773 + var name = files[i];
4774 + if (name.endsWith('.html')) {
4775 + name = name.substring(0, name.length - 5);
4776 + var xname = name.split('_');
4777 + if (xname.length == 2) {
4778 + if (obj.emailLanguages.indexOf(xname[1]) == -1) { obj.emailLanguages.push(xname[1]); }
4779 + }
4780 + }
4781 + }
4782 +
4783 + // See if there are any custom rending pages that will override the default ones
4784 + if ((obj.parent.webEmailsOverridePath != null) && (obj.fs.existsSync(obj.path.join(obj.parent.webEmailsOverridePath, 'translations')))) {
4785 + translateFolder = obj.path.join(obj.parent.webEmailsOverridePath, 'translations');
4786 + var files = obj.fs.readdirSync(translateFolder);
4787 + for (var i in files) {
4788 + var name = files[i];
4789 + if (name.endsWith('.html')) {
4790 + name = name.substring(0, name.length - 5);
4791 + var xname = name.split('_');
4792 + if (xname.length == 2) {
4793 + if (obj.emailLanguages.indexOf(xname[1]) == -1) { obj.emailLanguages.push(xname[1]); }
4794 + }
4795 + }
4796 + }
4797 + }
4798 + }
4799 + }
4800 +
4801 // Return true if a mobile browser is detected.
4802 // This code comes from "http://detectmobilebrowsers.com/" and was modified, This is free and unencumbered software released into the public domain. For more information, please refer to the http://unlicense.org/
4803 function isMobileBrowser(req) {