diff --git a/apps/accounts/automations/backup_account/handlers.py b/apps/accounts/automations/backup_account/handlers.py index e2a0cdb3c..5ca137cd3 100644 --- a/apps/accounts/automations/backup_account/handlers.py +++ b/apps/accounts/automations/backup_account/handlers.py @@ -3,6 +3,7 @@ import time from collections import defaultdict, OrderedDict from django.conf import settings +from django.utils.translation import gettext_lazy as _ from rest_framework import serializers from xlsxwriter import Workbook @@ -17,7 +18,7 @@ from terminal.models.component.storage import ReplayStorage from users.models import User PATH = os.path.join(os.path.dirname(settings.BASE_DIR), 'tmp') - +split_help_text = _('The account key will be split into two parts and sent') class RecipientsNotFound(Exception): pass @@ -115,8 +116,8 @@ class AssetAccountHandler(BaseAccountHandler): data = AccountSecretSerializer(_accounts, many=True).data cls.handler_secret(data, section) data_map.update(cls.add_rows(data, header_fields, sheet_name)) - - print('\n\033[33m- 共备份 {} 条账号\033[0m'.format(accounts.count())) + number_of_backup_accounts = _('Number of backup accounts') + print('\n\033[33m- {}: {}\033[0m'.format(number_of_backup_accounts, accounts.count())) return data_map @@ -127,9 +128,10 @@ class AccountBackupHandler: self.is_frozen = False # 任务状态冻结标志 def create_excel(self, section='complete'): + hint = _('Generating asset or application related backup information files') print( '\n' - '\033[32m>>> 正在生成资产或应用相关备份信息文件\033[0m' + f'\033[32m>>> {hint}\033[0m' '' ) # Print task start date @@ -151,7 +153,9 @@ class AccountBackupHandler: wb.close() files.append(filename) timedelta = round((time.time() - time_start), 2) - print('创建备份文件完成: 用时 {}s'.format(timedelta)) + time_cost = _('Time cost') + file_created = _('Backup file creation completed') + print('{}: {} {}s'.format(file_created, time_cost, timedelta)) return files def send_backup_mail(self, files, recipients): @@ -160,7 +164,7 @@ class AccountBackupHandler: recipients = User.objects.filter(id__in=list(recipients)) print( '\n' - '\033[32m>>> 开始发送备份邮件\033[0m' + f'\033[32m>>> {_("Start sending backup emails")}\033[0m' '' ) plan_name = self.plan_name @@ -172,7 +176,8 @@ class AccountBackupHandler: encrypt_and_compress_zip_file(attachment, user.secret_key, files) attachment_list = [attachment, ] AccountBackupExecutionTaskMsg(plan_name, user).publish(attachment_list) - print('邮件已发送至{}({})'.format(user, user.email)) + email_sent_to = _('Email sent to') + print('{} {}({})'.format(email_sent_to, user, user.email)) for file in files: os.remove(file) @@ -182,20 +187,22 @@ class AccountBackupHandler: recipients = ReplayStorage.objects.filter(id__in=list(recipients)) print( '\n' - '\033[32m>>> 开始发送备份文件到sftp服务器\033[0m' + '\033[32m>>> 📃 ---> sftp \033[0m' '' ) plan_name = self.plan_name + encrypt_file = _('Encrypting files using encryption password') for rec in recipients: attachment = os.path.join(PATH, f'{plan_name}-{local_now_filename()}-{time.time()}.zip') if password: - print('\033[32m>>> 使用加密密码对文件进行加密中\033[0m') + print(f'\033[32m>>> {encrypt_file}\033[0m') encrypt_and_compress_zip_file(attachment, password, files) else: zip_files(attachment, files) attachment_list = attachment AccountBackupByObjStorageExecutionTaskMsg(plan_name, rec).publish(attachment_list) - print('备份文件将发送至{}({})'.format(rec.name, rec.id)) + file_sent_to = _('The backup file will be sent to') + print('{}: {}({})'.format(file_sent_to, rec.name, rec.id)) for file in files: os.remove(file) @@ -203,14 +210,15 @@ class AccountBackupHandler: self.execution.reason = reason[:1024] self.execution.is_success = is_success self.execution.save() - print('\n已完成对任务状态的更新\n') + finish = _('Finish') + print(f'\n{finish}\n') @staticmethod def step_finished(is_success): if is_success: - print('任务执行成功') + print(_('Success')) else: - print('任务执行失败') + print(_('Failed')) def _run(self): is_success = False @@ -223,8 +231,6 @@ class AccountBackupHandler: self.backup_by_obj_storage() except Exception as e: self.is_frozen = True - print('任务执行被异常中断') - print('下面打印发生异常的 Traceback 信息 : ') print(e) error = str(e) else: @@ -239,15 +245,16 @@ class AccountBackupHandler: zip_encrypt_password = AccountBackupAutomation.objects.get(id=object_id).zip_encrypt_password obj_recipients_part_one = self.execution.snapshot.get('obj_recipients_part_one', []) obj_recipients_part_two = self.execution.snapshot.get('obj_recipients_part_two', []) + no_assigned_sftp_server = _('The backup task has no assigned sftp server') if not obj_recipients_part_one and not obj_recipients_part_two: print( '\n' - '\033[31m>>> 该备份任务未分配sftp服务器\033[0m' + f'\033[31m>>> {no_assigned_sftp_server}\033[0m' '' ) raise RecipientsNotFound('Not Found Recipients') if obj_recipients_part_one and obj_recipients_part_two: - print('\033[32m>>> 账号的密钥将被拆分成前后两部分发送\033[0m') + print(f'\033[32m>>> {split_help_text}\033[0m') files = self.create_excel(section='front') self.send_backup_obj_storage(files, obj_recipients_part_one, zip_encrypt_password) @@ -259,17 +266,19 @@ class AccountBackupHandler: self.send_backup_obj_storage(files, recipients, zip_encrypt_password) def backup_by_email(self): + + warn_text = _('The backup task has no assigned recipient') recipients_part_one = self.execution.snapshot.get('recipients_part_one', []) recipients_part_two = self.execution.snapshot.get('recipients_part_two', []) if not recipients_part_one and not recipients_part_two: print( '\n' - '\033[31m>>> 该备份任务未分配收件人\033[0m' + f'\033[31m>>> {warn_text}\033[0m' '' ) raise RecipientsNotFound('Not Found Recipients') if recipients_part_one and recipients_part_two: - print('\033[32m>>> 账号的密钥将被拆分成前后两部分发送\033[0m') + print(f'\033[32m>>> {split_help_text}\033[0m') files = self.create_excel(section='front') self.send_backup_mail(files, recipients_part_one) @@ -281,15 +290,18 @@ class AccountBackupHandler: self.send_backup_mail(files, recipients) def run(self): - print('任务开始: {}'.format(local_now_display())) + plan_start = _('Plan start') + plan_end = _('Plan end') + time_cost = _('Time cost') + error = _('An exception occurred during task execution') + print('{}: {}'.format(plan_start, local_now_display())) time_start = time.time() try: self._run() except Exception as e: - print('任务运行出现异常') - print('下面显示异常 Traceback 信息: ') + print(error) print(e) finally: - print('\n任务结束: {}'.format(local_now_display())) + print('\n{}: {}'.format(plan_end, local_now_display())) timedelta = round((time.time() - time_start), 2) - print('用时: {}s'.format(timedelta)) + print('{}: {}s'.format(time_cost, timedelta)) diff --git a/apps/accounts/automations/backup_account/manager.py b/apps/accounts/automations/backup_account/manager.py index f523803d5..f98bd9c9e 100644 --- a/apps/accounts/automations/backup_account/manager.py +++ b/apps/accounts/automations/backup_account/manager.py @@ -3,6 +3,7 @@ import time from django.utils import timezone +from django.utils.translation import gettext_lazy as _ from common.utils.timezone import local_now_display from .handlers import AccountBackupHandler @@ -19,7 +20,8 @@ class AccountBackupManager: def do_run(self): execution = self.execution - print('\n\033[33m# 账号备份计划正在执行\033[0m') + account_backup_execution_being_executed = _('The account backup plan is being executed') + print(f'\n\033[33m# {account_backup_execution_being_executed}\033[0m') handler = AccountBackupHandler(execution) handler.run() @@ -32,9 +34,11 @@ class AccountBackupManager: self.date_end = timezone.now() print('\n\n' + '-' * 80) - print('计划执行结束 {}\n'.format(local_now_display())) + plan_execution_end = _('Plan execution end') + print('{} {}\n'.format(plan_execution_end, local_now_display())) self.timedelta = self.time_end - self.time_start - print('用时: {}s'.format(self.timedelta)) + time_cost = _('Time cost') + print('{}: {}s'.format(time_cost, self.timedelta)) self.execution.timedelta = self.timedelta self.execution.save() diff --git a/apps/i18n/core/en/LC_MESSAGES/django.po b/apps/i18n/core/en/LC_MESSAGES/django.po index bc0d9208b..bcea4c95c 100644 --- a/apps/i18n/core/en/LC_MESSAGES/django.po +++ b/apps/i18n/core/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-06-26 14:59+0800\n" +"POT-Creation-Date: 2024-07-01 11:30+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,6 +22,92 @@ msgstr "" msgid "The parameter 'action' must be [{}]" msgstr "" +#: accounts/automations/backup_account/handlers.py:21 +msgid "The account key will be split into two parts and sent" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:119 +msgid "Number of backup accounts" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:131 +msgid "Generating asset or application related backup information files" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:156 +#: accounts/automations/backup_account/handlers.py:295 +#: accounts/automations/backup_account/manager.py:40 ops/serializers/job.py:76 +#: settings/templates/ldap/_msg_import_ldap_user.html:7 +msgid "Time cost" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:157 +msgid "Backup file creation completed" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:179 +msgid "Email sent to" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:194 +msgid "Encrypting files using encryption password" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:204 +msgid "The backup file will be sent to" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:213 +#: users/forms/profile.py:75 +msgid "Finish" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:219 +#: accounts/const/automation.py:110 +#: accounts/serializers/automations/change_secret.py:166 audits/const.py:64 +#: audits/models.py:64 audits/signal_handlers/activity_log.py:33 +#: common/const/choices.py:18 ops/const.py:74 ops/serializers/celery.py:48 +#: terminal/const.py:78 terminal/models/session/sharing.py:121 +#: tickets/views/approve.py:128 +msgid "Success" +msgstr "Success" + +#: accounts/automations/backup_account/handlers.py:221 +#: accounts/const/account.py:34 accounts/const/automation.py:109 +#: accounts/serializers/automations/change_secret.py:167 audits/const.py:65 +#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 +#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47 +msgid "Failed" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:248 +msgid "The backup task has no assigned sftp server" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:270 +msgid "The backup task has no assigned recipient" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:293 +msgid "Plan start" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:294 +msgid "Plan end" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:296 +msgid "An exception occurred during task execution" +msgstr "" + +#: accounts/automations/backup_account/manager.py:23 +msgid "The account backup plan is being executed" +msgstr "" + +#: accounts/automations/backup_account/manager.py:37 +msgid "Plan execution end" +msgstr "" + #: accounts/automations/change_secret/manager.py:102 #, python-brace-format msgid "" @@ -38,11 +124,11 @@ msgstr "" #: audits/signal_handlers/login_log.py:34 authentication/confirm/password.py:9 #: authentication/confirm/password.py:24 authentication/confirm/password.py:26 #: authentication/forms.py:28 -#: authentication/templates/authentication/login.html:329 +#: authentication/templates/authentication/login.html:323 #: settings/serializers/auth/ldap.py:25 settings/serializers/auth/ldap.py:50 #: settings/serializers/msg.py:36 settings/serializers/terminal.py:28 #: terminal/serializers/storage.py:123 terminal/serializers/storage.py:142 -#: users/forms/profile.py:21 users/serializers/user.py:143 +#: users/forms/profile.py:21 users/serializers/user.py:144 #: users/templates/users/_msg_user_created.html:13 #: users/templates/users/user_password_verify.html:18 #: xpack/plugins/cloud/serializers/account_attrs.py:28 @@ -106,18 +192,11 @@ msgstr "" msgid "Skip" msgstr "" -#: accounts/const/account.py:33 audits/const.py:24 rbac/tree.py:264 +#: accounts/const/account.py:33 audits/const.py:24 rbac/tree.py:267 #: templates/_csv_import_export.html:18 templates/_csv_update_modal.html:6 msgid "Update" msgstr "" -#: accounts/const/account.py:34 accounts/const/automation.py:109 -#: accounts/serializers/automations/change_secret.py:167 audits/const.py:65 -#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 -#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47 -msgid "Failed" -msgstr "" - #: accounts/const/automation.py:24 rbac/tree.py:52 msgid "Push account" msgstr "" @@ -226,15 +305,6 @@ msgstr "" msgid "SFTP" msgstr "" -#: accounts/const/automation.py:110 -#: accounts/serializers/automations/change_secret.py:166 audits/const.py:64 -#: audits/models.py:64 audits/signal_handlers/activity_log.py:33 -#: common/const/choices.py:18 ops/const.py:74 ops/serializers/celery.py:48 -#: terminal/const.py:78 terminal/models/session/sharing.py:121 -#: tickets/views/approve.py:128 -msgid "Success" -msgstr "Success" - #: accounts/const/automation.py:111 common/const/choices.py:16 #: terminal/const.py:77 tickets/const.py:29 tickets/const.py:38 msgid "Pending" @@ -662,7 +732,7 @@ msgstr "" #: assets/models/cmd_filter.py:39 assets/models/label.py:22 #: authentication/serializers/connect_token_secret.py:117 #: terminal/models/applet/applet.py:40 -#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:267 +#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:269 msgid "Is active" msgstr "Active" @@ -686,10 +756,6 @@ msgstr "" msgid "Can view asset account template secret" msgstr "" -#: accounts/models/template.py:32 -msgid "Can change asset account template secret" -msgstr "" - #: accounts/models/virtual.py:13 msgid "Alias" msgstr "" @@ -873,8 +939,8 @@ msgstr "" #: terminal/serializers/command.py:16 #: terminal/templates/terminal/_msg_command_warning.html:6 #: terminal/templates/terminal/_msg_session_sharing.html:6 -#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1111 -#: users/models/user.py:1155 +#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1124 +#: users/models/user.py:1168 msgid "User" msgstr "" @@ -1170,7 +1236,7 @@ msgstr "Active" #: acls/models/base.py:81 perms/serializers/permission.py:32 #: users/models/preference.py:16 users/serializers/group.py:21 -#: users/serializers/user.py:419 +#: users/serializers/user.py:424 msgid "Users" msgstr "" @@ -1479,7 +1545,7 @@ msgstr "" #: assets/const/base.py:33 settings/serializers/basic.py:8 #: users/serializers/preference/koko.py:19 -#: users/serializers/preference/luna.py:77 +#: users/serializers/preference/luna.py:85 msgid "Basic" msgstr "" @@ -1792,7 +1858,7 @@ msgstr "" #: assets/models/automations/base.py:114 assets/models/cmd_filter.py:41 #: common/db/models.py:34 ops/models/base.py:54 ops/models/job.py:241 -#: users/models/user.py:1158 +#: users/models/user.py:1171 msgid "Date created" msgstr "" @@ -1860,7 +1926,7 @@ msgstr "" msgid "Gateway" msgstr "" -#: assets/models/label.py:15 rbac/const.py:6 users/models/user.py:1137 +#: assets/models/label.py:15 rbac/const.py:6 users/models/user.py:1150 msgid "System" msgstr "" @@ -1883,7 +1949,7 @@ msgstr "" msgid "Label" msgstr "" -#: assets/models/node.py:169 +#: assets/models/node.py:168 msgid "New node" msgstr "" @@ -2375,7 +2441,7 @@ msgstr "" #: audits/const.py:14 audits/const.py:25 #: authentication/templates/authentication/_access_key_modal.html:65 -#: rbac/tree.py:265 +#: rbac/tree.py:268 msgid "Delete" msgstr "" @@ -2401,7 +2467,7 @@ msgstr "" msgid "Rename dir" msgstr "" -#: audits/const.py:23 rbac/tree.py:263 terminal/api/session/session.py:274 +#: audits/const.py:23 rbac/tree.py:266 terminal/api/session/session.py:274 #: terminal/templates/terminal/_msg_command_warning.html:18 #: terminal/templates/terminal/_msg_session_sharing.html:10 #: xpack/plugins/cloud/manager.py:84 @@ -2410,7 +2476,7 @@ msgstr "" #: audits/const.py:26 #: authentication/templates/authentication/_access_key_modal.html:22 -#: rbac/tree.py:262 +#: rbac/tree.py:265 msgid "Create" msgstr "" @@ -2418,8 +2484,8 @@ msgstr "" msgid "Connect" msgstr "" -#: audits/const.py:30 authentication/templates/authentication/login.html:296 -#: authentication/templates/authentication/login.html:368 +#: audits/const.py:30 authentication/templates/authentication/login.html:290 +#: authentication/templates/authentication/login.html:362 #: templates/_header_bar.html:101 msgid "Login" msgstr "Sign in" @@ -2659,21 +2725,21 @@ msgid "Auth Token" msgstr "" #: audits/signal_handlers/login_log.py:37 authentication/notifications.py:73 -#: authentication/views/login.py:77 notifications/backends/__init__.py:11 +#: authentication/views/login.py:78 notifications/backends/__init__.py:11 #: settings/serializers/auth/wecom.py:10 settings/serializers/auth/wecom.py:15 #: users/models/user.py:798 users/models/user.py:966 msgid "WeCom" msgstr "" #: audits/signal_handlers/login_log.py:38 authentication/views/feishu.py:105 -#: authentication/views/login.py:89 notifications/backends/__init__.py:14 +#: authentication/views/login.py:90 notifications/backends/__init__.py:14 #: settings/serializers/auth/feishu.py:10 #: settings/serializers/auth/feishu.py:12 users/models/user.py:800 #: users/models/user.py:972 msgid "FeiShu" msgstr "" -#: audits/signal_handlers/login_log.py:40 authentication/views/login.py:101 +#: audits/signal_handlers/login_log.py:40 authentication/views/login.py:102 #: authentication/views/slack.py:87 notifications/backends/__init__.py:16 #: settings/serializers/auth/slack.py:10 settings/serializers/auth/slack.py:12 #: users/models/user.py:802 users/models/user.py:978 @@ -2681,7 +2747,7 @@ msgid "Slack" msgstr "" #: audits/signal_handlers/login_log.py:41 authentication/views/dingtalk.py:161 -#: authentication/views/login.py:83 notifications/backends/__init__.py:12 +#: authentication/views/login.py:84 notifications/backends/__init__.py:12 #: settings/serializers/auth/dingtalk.py:10 users/models/user.py:799 #: users/models/user.py:969 msgid "DingTalk" @@ -2692,17 +2758,17 @@ msgstr "" msgid "Temporary token" msgstr "" -#: audits/signal_handlers/login_log.py:43 authentication/views/login.py:107 +#: audits/signal_handlers/login_log.py:43 authentication/views/login.py:108 #: settings/serializers/auth/passkey.py:8 #: settings/serializers/auth/passkey.py:11 msgid "Passkey" msgstr "" -#: audits/tasks.py:117 +#: audits/tasks.py:130 msgid "Clean audits session task log" msgstr "" -#: audits/tasks.py:130 +#: audits/tasks.py:143 msgid "Upload FTP file to external storage" msgstr "" @@ -2763,7 +2829,7 @@ msgid "" msgstr "" #: authentication/api/password.py:65 -#: authentication/templates/authentication/login.html:360 +#: authentication/templates/authentication/login.html:354 #: users/templates/users/forgot_password.html:41 #: users/templates/users/forgot_password.html:42 #: users/templates/users/forgot_password_previewing.html:13 @@ -3280,7 +3346,7 @@ msgstr "" #: authentication/serializers/connection_token.py:42 #: perms/serializers/permission.py:44 perms/serializers/permission.py:65 -#: users/serializers/user.py:126 users/serializers/user.py:271 +#: users/serializers/user.py:127 users/serializers/user.py:273 msgid "Is expired" msgstr "Expired" @@ -3294,8 +3360,8 @@ msgid "Access IP" msgstr "" #: authentication/serializers/token.py:92 perms/serializers/permission.py:43 -#: perms/serializers/permission.py:66 users/serializers/user.py:127 -#: users/serializers/user.py:268 +#: perms/serializers/permission.py:66 users/serializers/user.py:128 +#: users/serializers/user.py:270 msgid "Is valid" msgstr "Is Valid" @@ -3460,17 +3526,17 @@ msgstr "" msgid "Cancel" msgstr "" -#: authentication/templates/authentication/login.html:276 +#: authentication/templates/authentication/login.html:270 msgid "" "Configuration file has problems and cannot be logged in. Please contact the " "administrator or view latest docs" msgstr "" -#: authentication/templates/authentication/login.html:277 +#: authentication/templates/authentication/login.html:271 msgid "If you are administrator, you can update the config resolve it, set" msgstr "" -#: authentication/templates/authentication/login.html:375 +#: authentication/templates/authentication/login.html:369 msgid "More login options" msgstr "Or" @@ -3607,37 +3673,37 @@ msgstr "" msgid "Failed to get user from Lark" msgstr "" -#: authentication/views/login.py:230 +#: authentication/views/login.py:221 msgid "Redirecting" msgstr "" -#: authentication/views/login.py:231 +#: authentication/views/login.py:222 msgid "Redirecting to {} authentication" msgstr "" -#: authentication/views/login.py:254 +#: authentication/views/login.py:245 msgid "Login timeout, please try again." msgstr "" -#: authentication/views/login.py:299 +#: authentication/views/login.py:290 msgid "User email already exists ({})" msgstr "" -#: authentication/views/login.py:377 +#: authentication/views/login.py:367 msgid "" "Wait for {} confirm, You also can copy link to her/him
\n" " Don't close this page" msgstr "" -#: authentication/views/login.py:382 +#: authentication/views/login.py:372 msgid "No ticket found" msgstr "" -#: authentication/views/login.py:418 +#: authentication/views/login.py:408 msgid "Logout success" msgstr "" -#: authentication/views/login.py:419 +#: authentication/views/login.py:409 msgid "Logout success, return login page" msgstr "" @@ -4028,11 +4094,11 @@ msgid "" "prove that you are not accessing the nginx listening port. Good luck." msgstr "" -#: jumpserver/views/other.py:72 +#: jumpserver/views/other.py:75 msgid "Websocket server run on port: {}, you should proxy it on nginx" msgstr "" -#: jumpserver/views/other.py:86 +#: jumpserver/views/other.py:89 msgid "" "
Koko is a separately deployed program, you need to deploy Koko, " "configure nginx for url distribution,
If you see this page, " @@ -4476,11 +4542,6 @@ msgstr "" msgid "Is finished" msgstr "Finished" -#: ops/serializers/job.py:76 -#: settings/templates/ldap/_msg_import_ldap_user.html:7 -msgid "Time cost" -msgstr "" - #: ops/serializers/job.py:90 msgid "You do not have permission for the current job." msgstr "" @@ -4743,7 +4804,7 @@ msgstr "" msgid "asset permissions of organization {}" msgstr "" -#: perms/serializers/permission.py:34 users/serializers/user.py:255 +#: perms/serializers/permission.py:34 users/serializers/user.py:257 msgid "Groups" msgstr "" @@ -4972,24 +5033,24 @@ msgstr "" msgid "License" msgstr "" -#: rbac/tree.py:154 +#: rbac/tree.py:157 msgid "App organizations" msgstr "Organizations" -#: rbac/tree.py:155 +#: rbac/tree.py:158 msgid "Ticket comment" msgstr "" -#: rbac/tree.py:156 settings/serializers/feature.py:113 +#: rbac/tree.py:159 settings/serializers/feature.py:113 #: settings/serializers/feature.py:115 tickets/models/ticket/general.py:305 msgid "Ticket" msgstr "" -#: rbac/tree.py:157 +#: rbac/tree.py:160 msgid "Common setting" msgstr "" -#: rbac/tree.py:158 +#: rbac/tree.py:161 msgid "View permission tree" msgstr "" @@ -5562,7 +5623,7 @@ msgid "Template code" msgstr "" #: settings/serializers/auth/sms.py:40 users/models/user.py:920 -#: users/serializers/user.py:154 +#: users/serializers/user.py:155 msgid "Phone" msgstr "" @@ -6242,6 +6303,10 @@ msgid "" "button and RDP Client launch method when connecting to assets" msgstr "" +#: settings/serializers/terminal.py:66 +msgid "Client connection" +msgstr "" + #: settings/serializers/terminal.py:68 msgid "" "* Allow connecting to the KoKo component via SSH client
If enabled, the " @@ -7077,15 +7142,16 @@ msgstr "" msgid "Hostname" msgstr "" -#: terminal/models/virtualapp/virtualapp.py:32 -msgid "Providers" -msgstr "" - +#: terminal/models/virtualapp/provider.py:23 #: terminal/models/virtualapp/virtualapp.py:94 #: terminal/serializers/virtualapp.py:34 msgid "App Provider" msgstr "" +#: terminal/models/virtualapp/virtualapp.py:32 +msgid "Providers" +msgstr "" + #: terminal/models/virtualapp/virtualapp.py:102 msgid "Virtual app publication" msgstr "" @@ -8032,15 +8098,11 @@ msgid "" "password, enabling MFA)" msgstr "" -#: users/forms/profile.py:75 -msgid "Finish" -msgstr "" - -#: users/forms/profile.py:82 users/serializers/preference/lina.py:20 +#: users/forms/profile.py:82 users/serializers/preference/lina.py:21 msgid "New password" msgstr "" -#: users/forms/profile.py:87 users/serializers/preference/lina.py:25 +#: users/forms/profile.py:87 users/serializers/preference/lina.py:26 msgid "Confirm password" msgstr "" @@ -8095,7 +8157,7 @@ msgstr "" msgid "Force enabled" msgstr "Switch account enabled" -#: users/models/user.py:913 users/serializers/user.py:269 +#: users/models/user.py:913 users/serializers/user.py:271 msgid "Is service account" msgstr "Is service account" @@ -8112,7 +8174,7 @@ msgid "OTP secret key" msgstr "" #: users/models/user.py:936 users/serializers/profile.py:124 -#: users/serializers/user.py:266 +#: users/serializers/user.py:268 msgid "Is first login" msgstr "First login" @@ -8128,31 +8190,31 @@ msgstr "" msgid "Date api key used" msgstr "" -#: users/models/user.py:1106 +#: users/models/user.py:1119 msgid "Can not delete admin user" msgstr "" -#: users/models/user.py:1120 +#: users/models/user.py:1133 msgid "Can invite user" msgstr "" -#: users/models/user.py:1121 +#: users/models/user.py:1134 msgid "Can remove user" msgstr "" -#: users/models/user.py:1122 +#: users/models/user.py:1135 msgid "Can match user" msgstr "" -#: users/models/user.py:1133 +#: users/models/user.py:1146 msgid "Administrator" msgstr "" -#: users/models/user.py:1136 +#: users/models/user.py:1149 msgid "Administrator is the super user of system" msgstr "" -#: users/models/user.py:1168 +#: users/models/user.py:1181 msgid "User password history" msgstr "" @@ -8188,25 +8250,31 @@ msgid "Reset MFA" msgstr "" #: users/serializers/preference/koko.py:10 +#: users/serializers/preference/luna.py:63 msgid "File name conflict resolution" msgstr "" #: users/serializers/preference/koko.py:14 +#: users/serializers/preference/luna.py:80 msgid "Terminal theme name" msgstr "" -#: users/serializers/preference/lina.py:11 +#: users/serializers/preference/lina.py:12 msgid "" "*! The password for file encryption, used for decryption when the system " "sends emails containing file attachments.
Such as: account backup files, " "account password change results files" msgstr "" -#: users/serializers/preference/lina.py:38 users/serializers/profile.py:48 +#: users/serializers/preference/lina.py:39 users/serializers/profile.py:48 msgid "The newly set password is inconsistent" msgstr "" -#: users/serializers/preference/lina.py:46 +#: users/serializers/preference/lina.py:47 +msgid "Language" +msgstr "" + +#: users/serializers/preference/lina.py:52 msgid "File Encryption" msgstr "" @@ -8249,23 +8317,23 @@ msgstr "" msgid "Remote app connect method" msgstr "" -#: users/serializers/preference/luna.py:66 +#: users/serializers/preference/luna.py:70 msgid "Terminal font size" msgstr "" -#: users/serializers/preference/luna.py:69 +#: users/serializers/preference/luna.py:73 msgid "Backspace as Ctrl+H" msgstr "" -#: users/serializers/preference/luna.py:72 +#: users/serializers/preference/luna.py:76 msgid "Right click quickly paste" msgstr "" -#: users/serializers/preference/luna.py:78 +#: users/serializers/preference/luna.py:86 msgid "Graphics" msgstr "" -#: users/serializers/preference/luna.py:79 +#: users/serializers/preference/luna.py:87 msgid "Command line" msgstr "" @@ -8281,113 +8349,113 @@ msgstr "" msgid "The new password cannot be the last {} passwords" msgstr "" -#: users/serializers/user.py:50 +#: users/serializers/user.py:51 msgid "System roles" msgstr "" -#: users/serializers/user.py:54 +#: users/serializers/user.py:55 msgid "" "System roles are roles at the system level, and they will take effect across " "all organizations" msgstr "" -#: users/serializers/user.py:60 +#: users/serializers/user.py:61 msgid "Org roles" msgstr "" -#: users/serializers/user.py:65 +#: users/serializers/user.py:66 msgid "" "Org roles are roles at the organization level, and they will only take " "effect within current organization" msgstr "" -#: users/serializers/user.py:69 +#: users/serializers/user.py:70 msgid "Organizations and roles" msgstr "" -#: users/serializers/user.py:119 +#: users/serializers/user.py:120 msgid "Password setting" msgstr "" -#: users/serializers/user.py:121 +#: users/serializers/user.py:122 msgid "MFA enabled" msgstr "" -#: users/serializers/user.py:123 +#: users/serializers/user.py:124 msgid "MFA force enabled" msgstr "" -#: users/serializers/user.py:125 +#: users/serializers/user.py:126 msgid "Login blocked" msgstr "" -#: users/serializers/user.py:129 users/serializers/user.py:275 +#: users/serializers/user.py:130 users/serializers/user.py:277 msgid "Is OTP bound" msgstr "OTP bound" -#: users/serializers/user.py:132 +#: users/serializers/user.py:133 msgid "Super Administrator" msgstr "" -#: users/serializers/user.py:135 +#: users/serializers/user.py:136 msgid "Organization Administrator" msgstr "" -#: users/serializers/user.py:139 +#: users/serializers/user.py:140 msgid "Can public key authentication" msgstr "Can public key authentication" -#: users/serializers/user.py:240 +#: users/serializers/user.py:242 msgid "Full name" msgstr "" -#: users/serializers/user.py:243 +#: users/serializers/user.py:245 msgid "Login username" msgstr "" -#: users/serializers/user.py:246 +#: users/serializers/user.py:248 msgid "Email address" msgstr "" -#: users/serializers/user.py:256 +#: users/serializers/user.py:258 msgid "User groups to join" msgstr "" -#: users/serializers/user.py:260 +#: users/serializers/user.py:262 msgid "" "User source identifies where the user was created, which could be AD or " "other sources.There are security settings that can restrict users to log in " "to the system only from the sources." msgstr "" -#: users/serializers/user.py:264 +#: users/serializers/user.py:266 msgid "Superuser" msgstr "" -#: users/serializers/user.py:270 +#: users/serializers/user.py:272 msgid "Is org admin" msgstr "Org admin" -#: users/serializers/user.py:272 +#: users/serializers/user.py:274 msgid "Avatar url" msgstr "" -#: users/serializers/user.py:277 +#: users/serializers/user.py:279 msgid "MFA level" msgstr "MFA" -#: users/serializers/user.py:278 +#: users/serializers/user.py:280 #, fuzzy #| msgid "App Authentication" msgid "Multi-Factor Authentication" msgstr "Authentication" -#: users/serializers/user.py:421 +#: users/serializers/user.py:426 msgid "" "* For security, only a partial of users is displayed. You can search for more" msgstr "" -#: users/serializers/user.py:456 +#: users/serializers/user.py:461 msgid "name not unique" msgstr "" @@ -8398,7 +8466,7 @@ msgid "" "administrator." msgstr "" -#: users/signal_handlers.py:169 +#: users/signal_handlers.py:171 msgid "Clean up expired user sessions" msgstr "" diff --git a/apps/i18n/core/ja/LC_MESSAGES/django.po b/apps/i18n/core/ja/LC_MESSAGES/django.po index 9943a816d..15bb390ea 100644 --- a/apps/i18n/core/ja/LC_MESSAGES/django.po +++ b/apps/i18n/core/ja/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-06-27 11:12+0800\n" +"POT-Creation-Date: 2024-07-01 11:30+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -22,6 +22,108 @@ msgstr "" msgid "The parameter 'action' must be [{}]" msgstr "パラメータ 'action' は [{}] でなければなりません。" +#: accounts/automations/backup_account/handlers.py:21 +msgid "The account key will be split into two parts and sent" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:119 +#, fuzzy +#| msgid "Backup account" +msgid "Number of backup accounts" +msgstr "バックアップアカウント" + +#: accounts/automations/backup_account/handlers.py:131 +msgid "Generating asset or application related backup information files" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:156 +#: accounts/automations/backup_account/handlers.py:295 +#: accounts/automations/backup_account/manager.py:40 ops/serializers/job.py:76 +#: settings/templates/ldap/_msg_import_ldap_user.html:7 +msgid "Time cost" +msgstr "時を過ごす" + +#: accounts/automations/backup_account/handlers.py:157 +#, fuzzy +#| msgid "Task execution completed" +msgid "Backup file creation completed" +msgstr "タスク実行完了" + +#: accounts/automations/backup_account/handlers.py:179 +#, fuzzy +#| msgid "Email recipient" +msgid "Email sent to" +msgstr "メール受信者" + +#: accounts/automations/backup_account/handlers.py:194 +#, fuzzy +#| msgid "Encrypt field using Secret Key" +msgid "Encrypting files using encryption password" +msgstr "Secret Keyを使用したフィールドの暗号化" + +#: accounts/automations/backup_account/handlers.py:204 +msgid "The backup file will be sent to" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:213 +#: users/forms/profile.py:75 +msgid "Finish" +msgstr "仕上げ" + +#: accounts/automations/backup_account/handlers.py:219 +#: accounts/const/automation.py:110 +#: accounts/serializers/automations/change_secret.py:166 audits/const.py:64 +#: audits/models.py:64 audits/signal_handlers/activity_log.py:33 +#: common/const/choices.py:18 ops/const.py:74 ops/serializers/celery.py:48 +#: terminal/const.py:78 terminal/models/session/sharing.py:121 +#: tickets/views/approve.py:128 +msgid "Success" +msgstr "成功" + +#: accounts/automations/backup_account/handlers.py:221 +#: accounts/const/account.py:34 accounts/const/automation.py:109 +#: accounts/serializers/automations/change_secret.py:167 audits/const.py:65 +#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 +#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47 +msgid "Failed" +msgstr "失敗しました" + +#: accounts/automations/backup_account/handlers.py:248 +msgid "The backup task has no assigned sftp server" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:270 +msgid "The backup task has no assigned recipient" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:293 +#, fuzzy +#| msgid "Date start" +msgid "Plan start" +msgstr "開始日" + +#: accounts/automations/backup_account/handlers.py:294 +#, fuzzy +#| msgid "Date end" +msgid "Plan end" +msgstr "終了日" + +#: accounts/automations/backup_account/handlers.py:296 +msgid "An exception occurred during task execution" +msgstr "" + +#: accounts/automations/backup_account/manager.py:23 +#, fuzzy +#| msgid "Execute account backup plan" +msgid "The account backup plan is being executed" +msgstr "アカウントのバックアップ計画を実施する" + +#: accounts/automations/backup_account/manager.py:37 +#, fuzzy +#| msgid "Task execution id" +msgid "Plan execution end" +msgstr "タスク実行ID" + #: accounts/automations/change_secret/manager.py:102 #, python-brace-format msgid "" @@ -42,7 +144,7 @@ msgstr "成功: %s、失敗: %s、合計: %s" #: settings/serializers/auth/ldap.py:25 settings/serializers/auth/ldap.py:50 #: settings/serializers/msg.py:36 settings/serializers/terminal.py:28 #: terminal/serializers/storage.py:123 terminal/serializers/storage.py:142 -#: users/forms/profile.py:21 users/serializers/user.py:143 +#: users/forms/profile.py:21 users/serializers/user.py:144 #: users/templates/users/_msg_user_created.html:13 #: users/templates/users/user_password_verify.html:18 #: xpack/plugins/cloud/serializers/account_attrs.py:28 @@ -111,13 +213,6 @@ msgstr "スキップ" msgid "Update" msgstr "更新" -#: accounts/const/account.py:34 accounts/const/automation.py:109 -#: accounts/serializers/automations/change_secret.py:167 audits/const.py:65 -#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 -#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47 -msgid "Failed" -msgstr "失敗しました" - #: accounts/const/automation.py:24 rbac/tree.py:52 msgid "Push account" msgstr "アカウントプッシュ" @@ -226,15 +321,6 @@ msgstr "メール" msgid "SFTP" msgstr "SFTP" -#: accounts/const/automation.py:110 -#: accounts/serializers/automations/change_secret.py:166 audits/const.py:64 -#: audits/models.py:64 audits/signal_handlers/activity_log.py:33 -#: common/const/choices.py:18 ops/const.py:74 ops/serializers/celery.py:48 -#: terminal/const.py:78 terminal/models/session/sharing.py:121 -#: tickets/views/approve.py:128 -msgid "Success" -msgstr "成功" - #: accounts/const/automation.py:111 common/const/choices.py:16 #: terminal/const.py:77 tickets/const.py:29 tickets/const.py:38 msgid "Pending" @@ -662,7 +748,7 @@ msgstr "特権アカウント" #: assets/models/cmd_filter.py:39 assets/models/label.py:22 #: authentication/serializers/connect_token_secret.py:117 #: terminal/models/applet/applet.py:40 -#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:267 +#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:269 msgid "Is active" msgstr "アクティブです。" @@ -879,8 +965,8 @@ msgstr "ID" #: terminal/serializers/command.py:16 #: terminal/templates/terminal/_msg_command_warning.html:6 #: terminal/templates/terminal/_msg_session_sharing.html:6 -#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1111 -#: users/models/user.py:1155 +#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1124 +#: users/models/user.py:1168 msgid "User" msgstr "ユーザー" @@ -1183,7 +1269,7 @@ msgstr "アクティブ" #: acls/models/base.py:81 perms/serializers/permission.py:32 #: users/models/preference.py:16 users/serializers/group.py:21 -#: users/serializers/user.py:419 +#: users/serializers/user.py:424 msgid "Users" msgstr "ユーザー" @@ -1820,7 +1906,7 @@ msgstr "アセットの自動化タスク" #: assets/models/automations/base.py:114 assets/models/cmd_filter.py:41 #: common/db/models.py:34 ops/models/base.py:54 ops/models/job.py:241 -#: users/models/user.py:1158 +#: users/models/user.py:1171 msgid "Date created" msgstr "作成された日付" @@ -1888,7 +1974,7 @@ msgstr "お気に入りのアセット" msgid "Gateway" msgstr "ゲートウェイ" -#: assets/models/label.py:15 rbac/const.py:6 users/models/user.py:1137 +#: assets/models/label.py:15 rbac/const.py:6 users/models/user.py:1150 msgid "System" msgstr "システム" @@ -1911,7 +1997,7 @@ msgstr "値" msgid "Label" msgstr "ラベル" -#: assets/models/node.py:169 +#: assets/models/node.py:168 msgid "New node" msgstr "新しいノード" @@ -2740,11 +2826,11 @@ msgstr "仮パスワード" msgid "Passkey" msgstr "Passkey" -#: audits/tasks.py:117 +#: audits/tasks.py:130 msgid "Clean audits session task log" msgstr "資産監査セッションタスクログのクリーンアップ" -#: audits/tasks.py:130 +#: audits/tasks.py:143 msgid "Upload FTP file to external storage" msgstr "外部ストレージへのFTPファイルのアップロード" @@ -3340,7 +3426,7 @@ msgstr "アクション" #: authentication/serializers/connection_token.py:42 #: perms/serializers/permission.py:44 perms/serializers/permission.py:65 -#: users/serializers/user.py:126 users/serializers/user.py:271 +#: users/serializers/user.py:127 users/serializers/user.py:273 msgid "Is expired" msgstr "期限切れです" @@ -3354,8 +3440,8 @@ msgid "Access IP" msgstr "Access IP" #: authentication/serializers/token.py:92 perms/serializers/permission.py:43 -#: perms/serializers/permission.py:66 users/serializers/user.py:127 -#: users/serializers/user.py:268 +#: perms/serializers/permission.py:66 users/serializers/user.py:128 +#: users/serializers/user.py:270 msgid "Is valid" msgstr "有効です" @@ -3679,23 +3765,23 @@ msgstr "Lark はすでにバインドされています" msgid "Failed to get user from Lark" msgstr "Lark からユーザーを取得できませんでした" -#: authentication/views/login.py:220 +#: authentication/views/login.py:221 msgid "Redirecting" msgstr "リダイレクト" -#: authentication/views/login.py:221 +#: authentication/views/login.py:222 msgid "Redirecting to {} authentication" msgstr "{} 認証へのリダイレクト" -#: authentication/views/login.py:244 +#: authentication/views/login.py:245 msgid "Login timeout, please try again." msgstr "ログインタイムアウト、もう一度お試しください" -#: authentication/views/login.py:289 +#: authentication/views/login.py:290 msgid "User email already exists ({})" msgstr "ユーザー メールボックスは既に存在します ({})" -#: authentication/views/login.py:366 +#: authentication/views/login.py:367 msgid "" "Wait for {} confirm, You also can copy link to her/him
\n" " Don't close this page" @@ -3703,15 +3789,15 @@ msgstr "" "{} 確認を待ちます。彼女/彼へのリンクをコピーすることもできます
\n" " このページを閉じないでください" -#: authentication/views/login.py:371 +#: authentication/views/login.py:372 msgid "No ticket found" msgstr "チケットが見つかりません" -#: authentication/views/login.py:407 +#: authentication/views/login.py:408 msgid "Logout success" msgstr "ログアウト成功" -#: authentication/views/login.py:408 +#: authentication/views/login.py:409 msgid "Logout success, return login page" msgstr "ログアウト成功、ログインページを返す" @@ -3771,10 +3857,6 @@ msgstr "ランニング" msgid "Canceled" msgstr "キャンセル" -#: common/const/choices.py:25 settings/serializers/terminal.py:15 -msgid "Auto" -msgstr "自動" - #: common/const/common.py:5 xpack/plugins/cloud/manager.py:408 #, python-format msgid "%(name)s was created successfully" @@ -4117,13 +4199,13 @@ msgstr "" "ページが表示されている場合は、nginxリスニングポートにアクセスしていないことを" "証明してください。頑張ってください。" -#: jumpserver/views/other.py:72 +#: jumpserver/views/other.py:75 msgid "Websocket server run on port: {}, you should proxy it on nginx" msgstr "" "Websocket サーバーはport: {}で実行されます。nginxでプロキシする必要がありま" "す。" -#: jumpserver/views/other.py:86 +#: jumpserver/views/other.py:89 msgid "" "
Koko is a separately deployed program, you need to deploy Koko, " "configure nginx for url distribution,
If you see this page, " @@ -4576,11 +4658,6 @@ msgstr "タスクの種類" msgid "Is finished" msgstr "終了しました" -#: ops/serializers/job.py:76 -#: settings/templates/ldap/_msg_import_ldap_user.html:7 -msgid "Time cost" -msgstr "時を過ごす" - #: ops/serializers/job.py:90 msgid "You do not have permission for the current job." msgstr "あなたは現在のジョブの権限を持っていません。" @@ -4844,7 +4921,7 @@ msgstr "資産権限の有効期限が近づいています" msgid "asset permissions of organization {}" msgstr "組織 {} の資産権限" -#: perms/serializers/permission.py:34 users/serializers/user.py:255 +#: perms/serializers/permission.py:34 users/serializers/user.py:257 msgid "Groups" msgstr "" @@ -5673,7 +5750,7 @@ msgid "Template code" msgstr "テンプレートコード" #: settings/serializers/auth/sms.py:40 users/models/user.py:920 -#: users/serializers/user.py:154 +#: users/serializers/user.py:155 msgid "Phone" msgstr "電話" @@ -6341,6 +6418,10 @@ msgstr "複数のユーザーを使用して、分割" msgid "[%s] %s" msgstr "[%s] %s" +#: settings/serializers/terminal.py:15 +msgid "Auto" +msgstr "自動" + #: settings/serializers/terminal.py:22 msgid "Registration" msgstr "ターミナルレジスタの有効化" @@ -8259,10 +8340,6 @@ msgstr "" "あなたとあなたの会社を保護するために、アカウント、パスワード、キーの機密情報" "を適切に保管してください。(例: 複雑なパスワードの設定、MFAの有効化)" -#: users/forms/profile.py:75 -msgid "Finish" -msgstr "仕上げ" - #: users/forms/profile.py:82 users/serializers/preference/lina.py:21 msgid "New password" msgstr "新しいパスワード" @@ -8320,7 +8397,7 @@ msgstr "ユーザー設定" msgid "Force enabled" msgstr "強制有効" -#: users/models/user.py:913 users/serializers/user.py:269 +#: users/models/user.py:913 users/serializers/user.py:271 msgid "Is service account" msgstr "サービスアカウントです" @@ -8339,7 +8416,7 @@ msgstr "OTP 秘密" # msgid "Private key" # msgstr "ssh秘密鍵" #: users/models/user.py:936 users/serializers/profile.py:124 -#: users/serializers/user.py:266 +#: users/serializers/user.py:268 msgid "Is first login" msgstr "最初のログインです" @@ -8355,31 +8432,31 @@ msgstr "更新パスワードが必要" msgid "Date api key used" msgstr "API key 最後に使用した日付" -#: users/models/user.py:1106 +#: users/models/user.py:1119 msgid "Can not delete admin user" msgstr "管理者ユーザーを削除できませんでした" -#: users/models/user.py:1120 +#: users/models/user.py:1133 msgid "Can invite user" msgstr "ユーザーを招待できます" -#: users/models/user.py:1121 +#: users/models/user.py:1134 msgid "Can remove user" msgstr "ユーザーを削除できます" -#: users/models/user.py:1122 +#: users/models/user.py:1135 msgid "Can match user" msgstr "ユーザーに一致できます" -#: users/models/user.py:1133 +#: users/models/user.py:1146 msgid "Administrator" msgstr "管理者" -#: users/models/user.py:1136 +#: users/models/user.py:1149 msgid "Administrator is the super user of system" msgstr "管理者はシステムのスーパーユーザーです" -#: users/models/user.py:1168 +#: users/models/user.py:1181 msgid "User password history" msgstr "ユーザーパスワード履歴" @@ -8525,111 +8602,111 @@ msgstr "パスワードがセキュリティルールと一致しない" msgid "The new password cannot be the last {} passwords" msgstr "新しいパスワードを最後の {} 個のパスワードにすることはできません" -#: users/serializers/user.py:50 +#: users/serializers/user.py:51 msgid "System roles" msgstr "システムの役割" -#: users/serializers/user.py:54 +#: users/serializers/user.py:55 msgid "" "System roles are roles at the system level, and they will take effect across " "all organizations" msgstr "" -#: users/serializers/user.py:60 +#: users/serializers/user.py:61 msgid "Org roles" msgstr "組織ロール" -#: users/serializers/user.py:65 +#: users/serializers/user.py:66 msgid "" "Org roles are roles at the organization level, and they will only take " "effect within current organization" msgstr "" -#: users/serializers/user.py:69 +#: users/serializers/user.py:70 msgid "Organizations and roles" msgstr "そしきとやくわり" -#: users/serializers/user.py:119 +#: users/serializers/user.py:120 msgid "Password setting" msgstr "パスワード戦略" -#: users/serializers/user.py:121 +#: users/serializers/user.py:122 msgid "MFA enabled" msgstr "MFA有効化" -#: users/serializers/user.py:123 +#: users/serializers/user.py:124 msgid "MFA force enabled" msgstr "MFAフォース有効化" -#: users/serializers/user.py:125 +#: users/serializers/user.py:126 msgid "Login blocked" msgstr "ログインがロックされました" -#: users/serializers/user.py:129 users/serializers/user.py:275 +#: users/serializers/user.py:130 users/serializers/user.py:277 msgid "Is OTP bound" msgstr "仮想MFAがバインドされているか" -#: users/serializers/user.py:132 +#: users/serializers/user.py:133 msgid "Super Administrator" msgstr "スーパーアドミニストレーター" -#: users/serializers/user.py:135 +#: users/serializers/user.py:136 msgid "Organization Administrator" msgstr "組織管理者" -#: users/serializers/user.py:139 +#: users/serializers/user.py:140 msgid "Can public key authentication" msgstr "公開鍵認証が可能" -#: users/serializers/user.py:240 +#: users/serializers/user.py:242 msgid "Full name" msgstr "フルバリュー" -#: users/serializers/user.py:243 +#: users/serializers/user.py:245 msgid "Login username" msgstr "ログインユーザー" -#: users/serializers/user.py:246 +#: users/serializers/user.py:248 msgid "Email address" msgstr "無効なアドレス。" -#: users/serializers/user.py:256 +#: users/serializers/user.py:258 msgid "User groups to join" msgstr "ユーザーグループの数" -#: users/serializers/user.py:260 +#: users/serializers/user.py:262 msgid "" "User source identifies where the user was created, which could be AD or " "other sources.There are security settings that can restrict users to log in " "to the system only from the sources." msgstr "" -#: users/serializers/user.py:264 +#: users/serializers/user.py:266 msgid "Superuser" msgstr "システムユーザー" -#: users/serializers/user.py:270 +#: users/serializers/user.py:272 msgid "Is org admin" msgstr "組織管理者です" -#: users/serializers/user.py:272 +#: users/serializers/user.py:274 msgid "Avatar url" msgstr "アバターURL" -#: users/serializers/user.py:277 +#: users/serializers/user.py:279 msgid "MFA level" msgstr "MFA レベル" -#: users/serializers/user.py:278 +#: users/serializers/user.py:280 msgid "Multi-Factor Authentication" msgstr "認証" -#: users/serializers/user.py:421 +#: users/serializers/user.py:426 msgid "" "* For security, only a partial of users is displayed. You can search for more" msgstr "" -#: users/serializers/user.py:456 +#: users/serializers/user.py:461 msgid "name not unique" msgstr "名前が一意ではない" @@ -8642,7 +8719,7 @@ msgstr "" "管理者は「既存のユーザーのみログインを許可」をオンにしており、現在のユーザー" "はユーザーリストにありません。管理者に連絡してください。" -#: users/signal_handlers.py:169 +#: users/signal_handlers.py:171 msgid "Clean up expired user sessions" msgstr "期限切れのユーザー・セッションのパージ" diff --git a/apps/i18n/core/zh/LC_MESSAGES/django.po b/apps/i18n/core/zh/LC_MESSAGES/django.po index 51e6f8ea0..7dc8a0ddb 100644 --- a/apps/i18n/core/zh/LC_MESSAGES/django.po +++ b/apps/i18n/core/zh/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: JumpServer 0.3.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-06-27 11:11+0800\n" +"POT-Creation-Date: 2024-07-01 11:35+0800\n" "PO-Revision-Date: 2021-05-20 10:54+0800\n" "Last-Translator: ibuler \n" "Language-Team: JumpServer team\n" @@ -21,6 +21,92 @@ msgstr "" msgid "The parameter 'action' must be [{}]" msgstr "参数 'action' 必须是 [{}]" +#: accounts/automations/backup_account/handlers.py:21 +msgid "The account key will be split into two parts and sent" +msgstr "账号的密钥将被拆分成前后两部分发送" + +#: accounts/automations/backup_account/handlers.py:119 +msgid "Number of backup accounts" +msgstr "备份账号数量" + +#: accounts/automations/backup_account/handlers.py:131 +msgid "Generating asset or application related backup information files" +msgstr "" + +#: accounts/automations/backup_account/handlers.py:156 +#: accounts/automations/backup_account/handlers.py:295 +#: accounts/automations/backup_account/manager.py:40 ops/serializers/job.py:76 +#: settings/templates/ldap/_msg_import_ldap_user.html:7 +msgid "Time cost" +msgstr "花费时间" + +#: accounts/automations/backup_account/handlers.py:157 +msgid "Backup file creation completed" +msgstr "创建备份文件完成" + +#: accounts/automations/backup_account/handlers.py:179 +msgid "Email sent to" +msgstr "邮件已发送至" + +#: accounts/automations/backup_account/handlers.py:194 +msgid "Encrypting files using encryption password" +msgstr "使用加密密码对文件进行加密中" + +#: accounts/automations/backup_account/handlers.py:204 +msgid "The backup file will be sent to" +msgstr "备份文件将被发送至" + +#: accounts/automations/backup_account/handlers.py:213 +#: users/forms/profile.py:75 +msgid "Finish" +msgstr "完成" + +#: accounts/automations/backup_account/handlers.py:219 +#: accounts/const/automation.py:110 +#: accounts/serializers/automations/change_secret.py:166 audits/const.py:64 +#: audits/models.py:64 audits/signal_handlers/activity_log.py:33 +#: common/const/choices.py:18 ops/const.py:74 ops/serializers/celery.py:48 +#: terminal/const.py:78 terminal/models/session/sharing.py:121 +#: tickets/views/approve.py:128 +msgid "Success" +msgstr "成功" + +#: accounts/automations/backup_account/handlers.py:221 +#: accounts/const/account.py:34 accounts/const/automation.py:109 +#: accounts/serializers/automations/change_secret.py:167 audits/const.py:65 +#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 +#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47 +msgid "Failed" +msgstr "失败" + +#: accounts/automations/backup_account/handlers.py:248 +msgid "The backup task has no assigned sftp server" +msgstr "该备份任务未分配sftp服务器" + +#: accounts/automations/backup_account/handlers.py:270 +msgid "The backup task has no assigned recipient" +msgstr "备份任务没有指定收件人" + +#: accounts/automations/backup_account/handlers.py:293 +msgid "Plan start" +msgstr "任务开始" + +#: accounts/automations/backup_account/handlers.py:294 +msgid "Plan end" +msgstr "任务结束" + +#: accounts/automations/backup_account/handlers.py:296 +msgid "An exception occurred during task execution" +msgstr "任务运行出现异常" + +#: accounts/automations/backup_account/manager.py:23 +msgid "The account backup plan is being executed" +msgstr "账号备份计划正在执行" + +#: accounts/automations/backup_account/manager.py:37 +msgid "Plan execution end" +msgstr "计划执行结束" + #: accounts/automations/change_secret/manager.py:102 #, python-brace-format msgid "" @@ -41,7 +127,7 @@ msgstr "成功: %s, 失败: %s, 总数: %s" #: settings/serializers/auth/ldap.py:25 settings/serializers/auth/ldap.py:50 #: settings/serializers/msg.py:36 settings/serializers/terminal.py:28 #: terminal/serializers/storage.py:123 terminal/serializers/storage.py:142 -#: users/forms/profile.py:21 users/serializers/user.py:143 +#: users/forms/profile.py:21 users/serializers/user.py:144 #: users/templates/users/_msg_user_created.html:13 #: users/templates/users/user_password_verify.html:18 #: xpack/plugins/cloud/serializers/account_attrs.py:28 @@ -110,13 +196,6 @@ msgstr "跳过" msgid "Update" msgstr "更新" -#: accounts/const/account.py:34 accounts/const/automation.py:109 -#: accounts/serializers/automations/change_secret.py:167 audits/const.py:65 -#: audits/signal_handlers/activity_log.py:33 common/const/choices.py:19 -#: ops/const.py:76 terminal/const.py:79 xpack/plugins/cloud/const.py:47 -msgid "Failed" -msgstr "失败" - #: accounts/const/automation.py:24 rbac/tree.py:52 msgid "Push account" msgstr "账号推送" @@ -225,15 +304,6 @@ msgstr "邮箱" msgid "SFTP" msgstr "SFTP" -#: accounts/const/automation.py:110 -#: accounts/serializers/automations/change_secret.py:166 audits/const.py:64 -#: audits/models.py:64 audits/signal_handlers/activity_log.py:33 -#: common/const/choices.py:18 ops/const.py:74 ops/serializers/celery.py:48 -#: terminal/const.py:78 terminal/models/session/sharing.py:121 -#: tickets/views/approve.py:128 -msgid "Success" -msgstr "成功" - #: accounts/const/automation.py:111 common/const/choices.py:16 #: terminal/const.py:77 tickets/const.py:29 tickets/const.py:38 msgid "Pending" @@ -661,7 +731,7 @@ msgstr "特权账号" #: assets/models/cmd_filter.py:39 assets/models/label.py:22 #: authentication/serializers/connect_token_secret.py:117 #: terminal/models/applet/applet.py:40 -#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:267 +#: terminal/models/virtualapp/virtualapp.py:23 users/serializers/user.py:269 msgid "Is active" msgstr "激活" @@ -877,8 +947,8 @@ msgstr "ID" #: terminal/serializers/command.py:16 #: terminal/templates/terminal/_msg_command_warning.html:6 #: terminal/templates/terminal/_msg_session_sharing.html:6 -#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1111 -#: users/models/user.py:1155 +#: tickets/models/comment.py:21 users/const.py:14 users/models/user.py:1124 +#: users/models/user.py:1168 msgid "User" msgstr "用户" @@ -1177,7 +1247,7 @@ msgstr "激活中" #: acls/models/base.py:81 perms/serializers/permission.py:32 #: users/models/preference.py:16 users/serializers/group.py:21 -#: users/serializers/user.py:419 +#: users/serializers/user.py:424 msgid "Users" msgstr "用户" @@ -1810,7 +1880,7 @@ msgstr "资产自动化任务" # msgstr "备注" #: assets/models/automations/base.py:114 assets/models/cmd_filter.py:41 #: common/db/models.py:34 ops/models/base.py:54 ops/models/job.py:241 -#: users/models/user.py:1158 +#: users/models/user.py:1171 msgid "Date created" msgstr "创建日期" @@ -1878,7 +1948,7 @@ msgstr "收藏的资产" msgid "Gateway" msgstr "网关" -#: assets/models/label.py:15 rbac/const.py:6 users/models/user.py:1137 +#: assets/models/label.py:15 rbac/const.py:6 users/models/user.py:1150 msgid "System" msgstr "系统" @@ -1901,7 +1971,7 @@ msgstr "值" msgid "Label" msgstr "标签" -#: assets/models/node.py:169 +#: assets/models/node.py:168 msgid "New node" msgstr "新节点" @@ -2720,11 +2790,11 @@ msgstr "临时密码" msgid "Passkey" msgstr "Passkey" -#: audits/tasks.py:117 +#: audits/tasks.py:130 msgid "Clean audits session task log" msgstr "清理资产审计会话任务日志" -#: audits/tasks.py:130 +#: audits/tasks.py:143 msgid "Upload FTP file to external storage" msgstr "上传 FTP 文件到外部存储" @@ -3305,7 +3375,7 @@ msgstr "动作" #: authentication/serializers/connection_token.py:42 #: perms/serializers/permission.py:44 perms/serializers/permission.py:65 -#: users/serializers/user.py:126 users/serializers/user.py:271 +#: users/serializers/user.py:127 users/serializers/user.py:273 msgid "Is expired" msgstr "已过期" @@ -3319,8 +3389,8 @@ msgid "Access IP" msgstr "IP 白名单" #: authentication/serializers/token.py:92 perms/serializers/permission.py:43 -#: perms/serializers/permission.py:66 users/serializers/user.py:127 -#: users/serializers/user.py:268 +#: perms/serializers/permission.py:66 users/serializers/user.py:128 +#: users/serializers/user.py:270 msgid "Is valid" msgstr "是否有效" @@ -3632,23 +3702,23 @@ msgstr "Lark 已经绑定" msgid "Failed to get user from Lark" msgstr "从 Lark 获取用户失败" -#: authentication/views/login.py:220 +#: authentication/views/login.py:221 msgid "Redirecting" msgstr "跳转中" -#: authentication/views/login.py:221 +#: authentication/views/login.py:222 msgid "Redirecting to {} authentication" msgstr "正在跳转到 {} 认证" -#: authentication/views/login.py:244 +#: authentication/views/login.py:245 msgid "Login timeout, please try again." msgstr "登录超时,请重新登录" -#: authentication/views/login.py:289 +#: authentication/views/login.py:290 msgid "User email already exists ({})" msgstr "用户邮箱已存在 ({})" -#: authentication/views/login.py:366 +#: authentication/views/login.py:367 msgid "" "Wait for {} confirm, You also can copy link to her/him
\n" " Don't close this page" @@ -3656,15 +3726,15 @@ msgstr "" "等待 {} 确认, 你也可以复制链接发给他/她
\n" " 不要关闭本页面" -#: authentication/views/login.py:371 +#: authentication/views/login.py:372 msgid "No ticket found" msgstr "没有发现工单" -#: authentication/views/login.py:407 +#: authentication/views/login.py:408 msgid "Logout success" msgstr "退出登录成功" -#: authentication/views/login.py:408 +#: authentication/views/login.py:409 msgid "Logout success, return login page" msgstr "退出登录成功,返回到登录页面" @@ -3724,10 +3794,6 @@ msgstr "运行中" msgid "Canceled" msgstr "取消" -#: common/const/choices.py:25 settings/serializers/terminal.py:15 -msgid "Auto" -msgstr "自动" - #: common/const/common.py:5 xpack/plugins/cloud/manager.py:408 #, python-format msgid "%(name)s was created successfully" @@ -4066,11 +4132,11 @@ msgstr "" "
Luna是单独部署的一个程序,你需要部署luna,koko,
如果你看到了" "这个页面,证明你访问的不是nginx监听的端口,祝你好运
" -#: jumpserver/views/other.py:72 +#: jumpserver/views/other.py:75 msgid "Websocket server run on port: {}, you should proxy it on nginx" msgstr "Websocket 服务运行在端口: {}, 请检查nginx是否代理是否设置" -#: jumpserver/views/other.py:86 +#: jumpserver/views/other.py:89 msgid "" "
Koko is a separately deployed program, you need to deploy Koko, " "configure nginx for url distribution,
If you see this page, " @@ -4517,11 +4583,6 @@ msgstr "任务类型" msgid "Is finished" msgstr "是否完成" -#: ops/serializers/job.py:76 -#: settings/templates/ldap/_msg_import_ldap_user.html:7 -msgid "Time cost" -msgstr "花费时间" - #: ops/serializers/job.py:90 msgid "You do not have permission for the current job." msgstr "你没有当前作业的权限。" @@ -4784,7 +4845,7 @@ msgstr "资产授权规则将要过期" msgid "asset permissions of organization {}" msgstr "组织 ({}) 的资产授权" -#: perms/serializers/permission.py:34 users/serializers/user.py:255 +#: perms/serializers/permission.py:34 users/serializers/user.py:257 msgid "Groups" msgstr "用户组" @@ -5623,7 +5684,7 @@ msgid "Template code" msgstr "模板" #: settings/serializers/auth/sms.py:40 users/models/user.py:920 -#: users/serializers/user.py:154 +#: users/serializers/user.py:155 msgid "Phone" msgstr "手机" @@ -6265,6 +6326,10 @@ msgstr "多个用户,使用 , 分割" msgid "[%s] %s" msgstr "[%s] %s" +#: settings/serializers/terminal.py:15 +msgid "Auto" +msgstr "自动" + #: settings/serializers/terminal.py:22 msgid "Registration" msgstr "组件注册" @@ -8163,10 +8228,6 @@ msgstr "" "为了保护您和公司的安全,请妥善保管您的账号、密码和密钥等重要敏感信息; (如:" "设置复杂密码,并启用 MFA 多因子认证)" -#: users/forms/profile.py:75 -msgid "Finish" -msgstr "完成" - #: users/forms/profile.py:82 users/serializers/preference/lina.py:21 msgid "New password" msgstr "新密码" @@ -8224,7 +8285,7 @@ msgstr "用户设置" msgid "Force enabled" msgstr "强制启用" -#: users/models/user.py:913 users/serializers/user.py:269 +#: users/models/user.py:913 users/serializers/user.py:271 msgid "Is service account" msgstr "服务账号" @@ -8243,7 +8304,7 @@ msgstr "OTP 密钥" # msgid "Private key" # msgstr "ssh私钥" #: users/models/user.py:936 users/serializers/profile.py:124 -#: users/serializers/user.py:266 +#: users/serializers/user.py:268 msgid "Is first login" msgstr "首次登录" @@ -8259,31 +8320,31 @@ msgstr "需要更新密码" msgid "Date api key used" msgstr "API key 最后使用日期" -#: users/models/user.py:1106 +#: users/models/user.py:1119 msgid "Can not delete admin user" msgstr "无法删除管理员用户" -#: users/models/user.py:1120 +#: users/models/user.py:1133 msgid "Can invite user" msgstr "可以邀请用户" -#: users/models/user.py:1121 +#: users/models/user.py:1134 msgid "Can remove user" msgstr "可以移除用户" -#: users/models/user.py:1122 +#: users/models/user.py:1135 msgid "Can match user" msgstr "可以匹配用户" -#: users/models/user.py:1133 +#: users/models/user.py:1146 msgid "Administrator" msgstr "管理员" -#: users/models/user.py:1136 +#: users/models/user.py:1149 msgid "Administrator is the super user of system" msgstr "Administrator是初始的超级管理员" -#: users/models/user.py:1168 +#: users/models/user.py:1181 msgid "User password history" msgstr "用户密码历史" @@ -8424,79 +8485,79 @@ msgstr "密码不满足安全规则" msgid "The new password cannot be the last {} passwords" msgstr "新密码不能是最近 {} 次的密码" -#: users/serializers/user.py:50 +#: users/serializers/user.py:51 msgid "System roles" msgstr "系统角色" -#: users/serializers/user.py:54 +#: users/serializers/user.py:55 msgid "" "System roles are roles at the system level, and they will take effect across " "all organizations" msgstr "系统角色是系统级别的角色,将在所有组织中生效" -#: users/serializers/user.py:60 +#: users/serializers/user.py:61 msgid "Org roles" msgstr "组织角色" -#: users/serializers/user.py:65 +#: users/serializers/user.py:66 msgid "" "Org roles are roles at the organization level, and they will only take " "effect within current organization" msgstr "组织角色是组织级别的角色,仅在当前组织内有效" -#: users/serializers/user.py:69 +#: users/serializers/user.py:70 msgid "Organizations and roles" msgstr "组织角色" -#: users/serializers/user.py:119 +#: users/serializers/user.py:120 msgid "Password setting" msgstr "密码选项" -#: users/serializers/user.py:121 +#: users/serializers/user.py:122 msgid "MFA enabled" msgstr "MFA 已启用" -#: users/serializers/user.py:123 +#: users/serializers/user.py:124 msgid "MFA force enabled" msgstr "强制 MFA" -#: users/serializers/user.py:125 +#: users/serializers/user.py:126 msgid "Login blocked" msgstr "登录被锁定" -#: users/serializers/user.py:129 users/serializers/user.py:275 +#: users/serializers/user.py:130 users/serializers/user.py:277 msgid "Is OTP bound" msgstr "是否绑定了虚拟 MFA" -#: users/serializers/user.py:132 +#: users/serializers/user.py:133 msgid "Super Administrator" msgstr "超级管理员" -#: users/serializers/user.py:135 +#: users/serializers/user.py:136 msgid "Organization Administrator" msgstr "组织管理员" -#: users/serializers/user.py:139 +#: users/serializers/user.py:140 msgid "Can public key authentication" msgstr "可以公钥认证吗" -#: users/serializers/user.py:240 +#: users/serializers/user.py:242 msgid "Full name" msgstr "全称" -#: users/serializers/user.py:243 +#: users/serializers/user.py:245 msgid "Login username" msgstr "登录用户" -#: users/serializers/user.py:246 +#: users/serializers/user.py:248 msgid "Email address" msgstr "无效地址" -#: users/serializers/user.py:256 +#: users/serializers/user.py:258 msgid "User groups to join" msgstr "用户组数量" -#: users/serializers/user.py:260 +#: users/serializers/user.py:262 msgid "" "User source identifies where the user was created, which could be AD or " "other sources.There are security settings that can restrict users to log in " @@ -8505,32 +8566,32 @@ msgstr "" "用户来源标识用户的创建位置,可以是 AD 或其他来源。安全设置可以限制用户只能从" "指定来源登录系统。" -#: users/serializers/user.py:264 +#: users/serializers/user.py:266 msgid "Superuser" msgstr "超级用户" -#: users/serializers/user.py:270 +#: users/serializers/user.py:272 msgid "Is org admin" msgstr "组织管理员" -#: users/serializers/user.py:272 +#: users/serializers/user.py:274 msgid "Avatar url" msgstr "头像路径" -#: users/serializers/user.py:277 +#: users/serializers/user.py:279 msgid "MFA level" msgstr "MFA" -#: users/serializers/user.py:278 +#: users/serializers/user.py:280 msgid "Multi-Factor Authentication" msgstr "认证" -#: users/serializers/user.py:421 +#: users/serializers/user.py:426 msgid "" "* For security, only a partial of users is displayed. You can search for more" msgstr "* 为安全起见,只显示部分用户。您可以搜索更多" -#: users/serializers/user.py:456 +#: users/serializers/user.py:461 msgid "name not unique" msgstr "名称重复" @@ -8542,7 +8603,7 @@ msgid "" msgstr "" "管理员已开启'仅允许已存在用户登录',当前用户不在用户列表中,请联系管理员。" -#: users/signal_handlers.py:169 +#: users/signal_handlers.py:171 msgid "Clean up expired user sessions" msgstr "清除过期的用户会话" diff --git a/apps/i18n/lina/en.json b/apps/i18n/lina/en.json index 4565ebfb4..cf079d853 100644 --- a/apps/i18n/lina/en.json +++ b/apps/i18n/lina/en.json @@ -179,7 +179,36 @@ "BadRequestErrorMsg": "Request error, please check the filled content", "BadRoleErrorMsg": "Request error, no permission for this action", "BaiduCloud": "Baidu cloud", + "BaseAccount": "Account", + "BaseAccountBackup": "Account Backup", + "BaseAccountChangeSecret": "Account Change Secret", + "BaseAccountGather": "Account Gather", + "BaseAccountPush": "Account Push", + "BaseAccountTemplate": "Account Template", + "BaseApplets": "Applets", + "BaseAssetAclList": "Login Asset ACLs", + "BaseAssetList": "Asset List", + "BaseAssetPermission": "Asset Permission", + "BaseCloudAccountList": "Cloud Account List", + "BaseCloudSync": "Cloud Sync", + "BaseCmdACL": "Cmd ACL", + "BaseCmdGroups": "Cmd Groups", + "BaseCommandFilterAclList": "Command filter", + "BaseConnectMethodACL": "Connect Method ACL", + "BaseFlowSetUp": "Flow Set Up", + "BaseJobManagement": "Job Management", + "BaseLoginLog": "Login Log", + "BaseMyAssets": "My Assets", + "BaseOperateLog": "Operate Log", "BasePort": "Listening ports", + "BaseSessions": "Sessions", + "BaseStorage": "Storage", + "BaseStrategy": "Strategy", + "BaseSystemTasks": "System Tasks", + "BaseTags": "Tags", + "BaseTerminal": "Terminal", + "BaseTickets": "Tickets", + "BaseUserLoginAclList": "User Login ACL List", "Basic": "Basic", "BasicInfo": "Basic information", "BasicSettings": "General", @@ -267,7 +296,6 @@ "CommandFilterACLHelpText": "By filtering commands, you can control if commands can be sent to assets. based on your set rules, some commands can be allowed while others are prohibited.", "CommandFilterAclCreate": "Create command filter rule", "CommandFilterAclDetail": "Details of command filter rule", - "BaseCommandFilterAclList": "Command filter", "CommandFilterAclUpdate": "Update the command filter rule", "CommandFilterRuleContentHelpText": "One command per line", "CommandFilterRules": "Command filter rules", @@ -325,6 +353,7 @@ "CreatePlaybook": "Create playbook", "CreateReplayStorage": "Create object storage", "CreateSuccessMsg": "Successfully created !", + "CreateUserContent": "Creating User Content", "CreateUserSetting": "User creation", "Created": "Created", "CreatedBy": "Creator", @@ -391,7 +420,6 @@ "DeleteSuccess": "Successfully deleted", "DeleteSuccessMsg": "Successfully deleted", "DeleteWarningMsg": "Are you sure you want to delete", - "RemoveWarningMsg": "Are you sure you want to remove", "Deploy": "Deployment", "Description": "Description", "DestinationIP": "Destination address", @@ -428,6 +456,7 @@ "EmailTest": "Test connection", "Empty": "Empty", "Enable": "Enable", + "EnableDomain": "Gateway enabled", "EnableKoKoSSHHelpText": "When switched on, connecting to the asset will display ssh client pull-up method", "Endpoint": "Endpoint", "EndpointListHelpMessage": "The service endpoint is the address (port) for users to access the service. when users connect to assets, they choose service endpoints based on endpoint rules and asset tags, using them as access points to establish connections and achieve distributed connections to assets", @@ -504,6 +533,7 @@ "GCP": "Google cloud", "GPTCreate": "Create asset - gpt", "GPTUpdate": "Update the asset - gpt", + "Gateway": "Gateway", "GatewayCreate": "Create gateway", "GatewayList": "Gateways", "GatewayUpdate": "Update the gateway", @@ -521,13 +551,13 @@ "GrantedAssets": "Authorized assets", "GreatEqualThan": "Greater than or equal to", "GroupsAmount": "User group", + "HTTPSRequiredForSupport": "HTTPS is required for support", "HandleTicket": "Handle ticket", "Hardware": "Hardware information", "HardwareInfo": "Hardware information", "HasImportErrorItemMsg": "There are import failures, click on the left x to view the failure reasons, after editing the table, you can continue to import failures.", "Help": "Help", "HighLoad": "Higher", - "HTTPSRequiredForSupport": "HTTPS is required for support", "HistoricalSessionNum": "Total historical sessions", "History": "History", "HistoryDate": "Date", @@ -544,9 +574,14 @@ "HuaweiPrivateCloud": "Huawei private cloud", "IAgree": "I agree", "ID": "ID", + "IP": "IP", + "IPDomain": "Address", + "IPGroup": "IP group", + "IPGroupHelpText": "* indicates match all. for example: 192.168.10.1, 192.168.1.0/24, 10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64", "IPLoginLimit": "IP restriction", "IPMatch": "IP matching", "IPNetworkSegment": "IP segment", + "IPType": "IP type", "Id": "Id", "IdeaContent": "I want you to act as a linux terminal. i will input the commands, you will respond with what the terminal should display. i hope you to reply only in a unique code block, not others. no interpretations. when i need to tell you something, i'm gonna put the words in braces {note text}", "IdeaTitle": "🌱 linux terminal", @@ -587,10 +622,6 @@ "InviteSuccess": "Invitation successful", "InviteUser": "Invite", "InviteUserInOrg": "Invite users to join this organization", - "IP": "IP", - "IPDomain": "Address", - "IPGroup": "IP group", - "IPGroupHelpText": "* indicates match all. for example: 192.168.10.1, 192.168.1.0/24, 10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64", "IsActive": "Active", "IsAlwaysUpdate": "Keeping assets up to date", "IsAlwaysUpdateHelpTip": "Whether to synchronize and update asset information, including hostname, ip, platform, domain, node, etc. each time a synchronization task is performed", @@ -764,8 +795,10 @@ "OnlineSessionHelpMsg": "Unable to log out of the current session because it is the current user's online session. currently only users logged in via web are being logged.", "OnlineSessions": "Online sessions", "OnlineUserDevices": "Online user devices", + "OnlyInitialDeploy": "Only initial deployment", "OnlyMailSend": "Current support for email sending", "OnlySearchCurrentNodePerm": "Only search the current node's authorization", + "Open": "Open", "OpenCommand": "Open command", "OpenStack": "Openstack", "OpenStatus": "In approval", @@ -842,6 +875,7 @@ "Primary": "Primary", "Priority": "Priority", "PrivateCloud": "Private cloud", + "PrivateIP": "Private IP", "PrivateKey": "Private key", "Privileged": "Privileged", "PrivilegedFirst": "Privileged first", @@ -858,6 +892,7 @@ "Provider": "Provider", "Proxy": "Agent", "PublicCloud": "Public cloud", + "PublicIP": "Public IP", "PublicKey": "Public key", "Publish": "Publish", "PublishAllApplets": "Publish all applications", @@ -908,6 +943,7 @@ "RemoveAssetFromNode": "Remove assets from node", "RemoveSelected": "Remove selected", "RemoveSuccessMsg": "Successfully removed", + "RemoveWarningMsg": "Are you sure you want to remove", "Rename": "Rename", "RenameNode": "Rename node", "ReplaceNodeAssetsAdminUserWithThis": "Replace asset admin", @@ -1093,6 +1129,7 @@ "StatusYellow": "There have been recent failures", "Step": "Step", "Stop": "Stop", + "StopLogOutput": "Task Canceled: The current task (currentTaskId) has been manually stopped. Since the progress of each task varies, the following is the final execution result of the task. A failed execution indicates that the task has been successfully stopped.", "Storage": "Storage", "StorageSetting": "Storage", "Strategy": "Strategy", @@ -1101,7 +1138,7 @@ "StrategyHelpTip": "Identify the unique attributes of assets (such as platforms) based on priority of strategies; when an asset's attribute (like nodes) can be configured to multiple, all actions of the strategies will be executed.", "StrategyList": "Policy", "StrategyUpdate": "Update the policy", - "EnableDomain": "Gateway enabled", + "SuEnabled": "Enabled su", "SuFrom": "Switch from", "Submit": "Submit", "SubscriptionID": "ID", @@ -1109,6 +1146,7 @@ "Success/Total": "Success/Total", "SuccessAsset": "Successful assets", "SuccessfulOperation": "Action successful", + "Summary": "Summary", "Summary(success/total)": " overview( successful/total )", "Sunday": "Sun", "SuperAdmin": "Super administrator", @@ -1149,11 +1187,11 @@ "SystemTools": "Tools", "TableColSetting": "Select visible attribute columns", "TableSetting": "Table preferences", - "Tags": "Tags", "TagCreate": "Create tag", "TagInputFormatValidation": "Tag format error, the correct format is: name:value", "TagList": "Tags", "TagUpdate": "Update the tag", + "Tags": "Tags", "TailLog": "Tail Log", "Target": "Target", "TargetResources": "Target resource", @@ -1215,6 +1253,7 @@ "TotalSyncRegion": "Regions", "TotalSyncStrategy": "Number of strategies", "Transfer": "Transfer", + "TriggerMode": "Trigger mode", "Tuesday": "Tue", "TwoAssignee": "Subscribe to authorization id", "TwoAssigneeType": "Secondary recipient type", @@ -1223,6 +1262,7 @@ "Types": "Type", "UCloud": "Ucloud uhost", "UPPER_CASE_REQUIRED": "Must contain uppercase letters", + "UnFavoriteSucceed": "Unfavorite Successful", "UnSyncCount": "Not synced", "Unbind": "Unlink", "UnbindHelpText": "Local users are the source of this authentication and cannot be unbound", @@ -1230,6 +1270,7 @@ "UnblockSelected": "Unblock selected", "UnblockSuccessMsg": "Unlock successful", "UnblockUser": "Unlock user", + "Uninstall": "Uninstall", "UniqueError": "Only one of the following properties can be set", "UnlockSuccessMsg": "Unlock successful", "UnselectedOrg": "No organization selected", @@ -1293,6 +1334,7 @@ "Valid": "Valid", "Variable": "Variable", "VariableHelpText": "You can use {{ key }} to read built-in variables in commands", + "VaultHCPMountPoint": "The mount point of the Vault server, default is jumpserver", "VaultHelpText": "1. for security reasons, vault storage must be enabled in the configuration file.
2. after enabled, fill in other configurations, and perform tests.
3. carry out data synchronization, which is one-way, only syncing from the local database to the distant vault, once synchronization is completed, the local database will no longer store passwords, please back up your data.
4. after modifying vault configuration the second time, you need to restart the service.", "VerificationCodeSent": "Verification code has been sent", "VerifySignTmpl": "Sms template", @@ -1310,6 +1352,7 @@ "VirtualApps": "VirtualApp", "Volcengine": "Volcengine", "Warning": "Warning", + "WeChat": "WeChat", "WeCom": "WeCom", "WeComOAuth": "WeCom OAuth", "WeComTest": "Test", @@ -1336,48 +1379,5 @@ "ZoneHelpMessage": "The zone is the location where assets are located, which can be a data center, public cloud, or VPC. Gateways can be set up within the region. When the network cannot be directly accessed, users can utilize gateways to login to the assets.", "ZoneList": "Zones", "ZoneUpdate": "Update the zone", - "IPType": "IP type", - "PublicIP": "Public IP", - "PrivateIP": "Private IP", - "VaultHCPMountPoint": "The mount point of the Vault server, default is jumpserver", - "WeChat": "WeChat", - "SuEnabled": "Enabled su", - "Gateway": "Gateway", - "StopLogOutput": "Task Canceled: The current task (currentTaskId) has been manually stopped. Since the progress of each task varies, the following is the final execution result of the task. A failed execution indicates that the task has been successfully stopped.", - "OnlyInitialDeploy": "Only initial deployment", - "Uninstall": "Uninstall", - "Summary": "Summary", - "removeWarningMsg": "Are you sure you want to remove", - "UnFavoriteSucceed": "Unfavorite Successful", - "TriggerMode": "Trigger mode", - "CreateUserContent": "Creating User Content", - "BaseAssetList": "Asset List", - "BaseCloudSync": "Cloud Sync", - "BaseCloudAccountList": "Cloud Account List", - "BaseStrategy": "Strategy", - "BaseAccount": "Account", - "BaseAccountTemplate": "Account Template", - "BaseAccountPush": "Account Push", - "BaseAccountChangeSecret": "Account Change Secret", - "BaseAccountGather": "Account Gather", - "BaseAccountBackup": "Account Backup", - "BaseAssetPermission": "Asset Permission", - "BaseUserLoginAclList": "User Login ACL List", - "BaseCmdACL": "Cmd ACL", - "BaseAssetAclList": "Login Asset ACLs", - "BaseCmdGroups": "Cmd Groups", - "BaseConnectMethodACL": "Connect Method ACL", - "BaseTags": "Tags", - "BaseSessions": "Sessions", - "BaseLoginLog": "Login Log", - "BaseOperateLog": "Operate Log", - "BaseMyAssets": "My Assets", - "BaseJobManagement": "Job Management", - "BaseFlowSetUp": "Flow Set Up", - "BaseStorage": "Storage", - "BaseTerminal": "Terminal", - "BaseApplets": "Applets", - "BaseSystemTasks": "System Tasks", - "Open": "Open", - "BaseTickets": "Tickets" -} + "removeWarningMsg": "Are you sure you want to remove" +} \ No newline at end of file diff --git a/apps/i18n/lina/ja.json b/apps/i18n/lina/ja.json index c9246af7d..8348ac107 100644 --- a/apps/i18n/lina/ja.json +++ b/apps/i18n/lina/ja.json @@ -179,7 +179,36 @@ "BadRequestErrorMsg": "リクエストエラーです。入力内容を確認してください", "BadRoleErrorMsg": "リクエストエラー、該当する操作権限がありません", "BaiduCloud": "百度クラウド", + "BaseAccount": "アカウント", + "BaseAccountBackup": "アカウントバックアップ", + "BaseAccountChangeSecret": "アカウントのパスワード変更", + "BaseAccountGather": "アカウント収集", + "BaseAccountPush": "アカウントプッシュ", + "BaseAccountTemplate": "アカウントテンプレート", + "BaseApplets": "アプリケーション", + "BaseAssetAclList": "ログイン許可", + "BaseAssetList": "資産リスト", + "BaseAssetPermission": "資産承認", + "BaseCloudAccountList": "クラウドアカウントリスト", + "BaseCloudSync": "クラウド同期", + "BaseCmdACL": "コマンド認証", + "BaseCmdGroups": "コマンドグループ", + "BaseCommandFilterAclList": "コマンドフィルタ", + "BaseConnectMethodACL": "接続方法の承認", + "BaseFlowSetUp": "フロー設定", + "BaseJobManagement": "作業管理", + "BaseLoginLog": "ログインログ", + "BaseMyAssets": "私の資産", + "BaseOperateLog": "Actionログ", "BasePort": "リスニングポート", + "BaseSessions": "会話", + "BaseStorage": "ストレージ", + "BaseStrategy": "戦略", + "BaseSystemTasks": "タスク", + "BaseTags": "タグ", + "BaseTerminal": "エンドポイント", + "BaseTickets": "ワークオーダーリスト", + "BaseUserLoginAclList": "ユーザーログイン", "Basic": "基本設定", "BasicInfo": "基本情報", "BasicSetting": "基本設定", @@ -282,7 +311,6 @@ "CommandFilterACLHelpText": "コマンドフィルターを使用すると、コマンドが資産に送信できるかどうかを制御できます。設定したルールにより、一部のコマンドは許可され、他のコマンドは禁止されます。", "CommandFilterAclCreate": "コマンドフィルタールールを作成", "CommandFilterAclDetail": "コマンドフィルタールールの詳細", - "BaseCommandFilterAclList": "コマンドフィルタ", "CommandFilterAclUpdate": "コマンドフィルタルールを更新する", "CommandFilterRuleContentHelpText": "コマンドを一行ずつ", "CommandFilterRules": "コマンドフィルター規則", @@ -340,6 +368,7 @@ "CreatePlaybook": "Playbookの作成", "CreateReplayStorage": "オブジェクトストレージの作成", "CreateSuccessMsg": "作成成功", + "CreateUserContent": "ユーザーコンテンツの作成", "CreateUserSetting": "ユーザーコンテンツを作成", "Created": "作成済み", "CreatedBy": "作成者", @@ -442,6 +471,7 @@ "EmailTest": "接続テスト", "Empty": "空", "Enable": "有効化", + "EnableDomain": "ドメインの有効化", "EnableKoKoSSHHelpText": "起動時にアセットに接続すると、 SSH Client の起動方法が表示されます", "Endpoint": "サーバーエンドポイント", "EndpointListHelpMessage": "サービスエンドポイントはユーザーがサービスにアクセスするアドレス(ポート)で、ユーザーが資産に接続する際、エンドポイントルールと資産ラベルに基づいてサービスエンドポイントを選択し、アクセスポイントを設定して分散接続資産を実現します", @@ -518,6 +548,7 @@ "GCP": "Google Cloud", "GPTCreate": "アセット作成-GPT", "GPTUpdate": "資産を更新-GPT", + "Gateway": "ゲートウェイ", "GatewayCreate": "ゲートウェイの作成", "GatewayList": "ゲートウェイリスト", "GatewayUpdate": "ゲートウェイの更新", @@ -536,6 +567,7 @@ "GrantedAssets": "資産の承認", "GreatEqualThan": "以上または等しい", "GroupsAmount": "ユーザーグループ", + "HTTPSRequiredForSupport": "HTTPS サポートが必要で、それを有効にする", "HandleTicket": "ワークオーダーを処理", "Hardware": "ハードウェア情報", "HardwareInfo": "ハードウェア情報", @@ -608,6 +640,7 @@ "IpDomain": "IP ドメイン", "IpGroup": "IPグループ", "IpGroupHelpText": "*はすべてに一致します。例えば: 192.168.10.1, 192.168.1.0/24, 10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64", + "IpType": "IP タイプ", "IsActive": "Activate", "IsAlwaysUpdate": "最新の資産を保持", "IsAlwaysUpdateHelpTip": "同期タスクを実行するたびに、資産情報(ホスト名、ip、プラットフォーム、ドメイン、ノードなど)を同期更新するかどうか", @@ -741,6 +774,7 @@ "NewPassword": "新しいパスワード", "NewPublicKey": "新しい SSH 公開鍵", "NewSSHKey": "SSH公開鍵", + "NewSecret": "新しい暗号文", "NewSyncCount": "新規同期", "Next": "次へ", "No": "いいえ", @@ -783,6 +817,7 @@ "OfflineUpload": "オフラインアップロード", "OldPassword": "旧パスワード", "OldPublicKey": "旧 SSH 公開鍵", + "OldSecret": "オリジナル暗号文", "OneAssignee": "一次審査員", "OneAssigneeType": "一次受理者タイプ", "OneClickReadMsg": "すべてを既読にしますか?", @@ -790,8 +825,10 @@ "OnlineSessionHelpMsg": "現在のセッションをオフラインにすることはできません。そのため、現在のユーザーがオンラインセッションです。現在、Webでログインするユーザーだけが記録されます。", "OnlineSessions": "オンラインセッション数", "OnlineUserDevices": "オンラインユーザーデバイス", + "OnlyInitialDeploy": "初期設定のみ", "OnlyMailSend": "現在、メール送信のみをサポートしています", "OnlySearchCurrentNodePerm": "現在のノードの認可のみを検索", + "Open": "開く", "OpenCommand": "コマンドを開く", "OpenStack": "OpenStack", "OpenStatus": "審査中", @@ -870,6 +907,7 @@ "Priority": "優先順位", "PriorityHelpMessage": "1-100、1最低優先度、100最高優先度。複数のユーザーを許可する場合、優先度の高いシステムユーザーはデフォルトのログインユーザーになります", "PrivateCloud": "プライベートクラウド", + "PrivateIp": "プライベート IP", "PrivateKey": "秘密鍵", "Privileged": "特権アカウント", "PrivilegedFirst": "優先的な特権アカウント", @@ -886,6 +924,7 @@ "Provider": "供給業者", "Proxy": "代理", "PublicCloud": "パブリッククラウド", + "PublicIp": "パブリック IP", "PublicKey": "公開鍵", "Publish": "公開", "PublishAllApplets": "すべてのアプリを公開", @@ -936,6 +975,7 @@ "RemoveAssetFromNode": "ノードから資産を削除", "RemoveSelected": "選択したものを削除", "RemoveSuccessMsg": "削除成功", + "RemoveWarningMsg": "削除してもよろしいですか", "Rename": "名前変更", "RenameNode": "ノードの名前を変更", "ReplaceNodeAssetsAdminUserWithThis": "アセットの管理者を交換する", @@ -1122,6 +1162,7 @@ "StatusYellow": "最近、実行に失敗があり。", "Step": "ステップ", "Stop": "停止", + "StopLogOutput": "ask Canceled:現在のタスク(currentTaskId)は手動で停止されました。各タスクの進行状況が異なるため、以下はタスクの最終実行結果です。実行が失敗した場合は、タスクが正常に停止されました。", "Storage": "ストレージ", "StorageSetting": "ストレージ設定", "Strategy": "ポリシー", @@ -1138,6 +1179,7 @@ "Success/Total": "成功/合計数", "SuccessAsset": "成功な資産", "SuccessfulOperation": "操作成功", + "Summary": "まとめ", "Summary(success/total)": "概要(成功/総数)", "Sunday": "日曜日", "SuperAdmin": "スーパー管理者", @@ -1183,11 +1225,11 @@ "SystemTools": "システムツール", "TableColSetting": "表示属性列の選択", "TableSetting": "テーブル環境設定", - "Tags": "ラベル", "TagCreate": "ラベルの作成", "TagInputFormatValidation": "ラベルの形式が間違っています、正しい形式は:name:value", "TagList": "タグ一覧", "TagUpdate": "タグの更新", + "Tags": "ラベル", "TailLog": "ログの追跡", "Target": "目標", "TargetResources": "目標リソース", @@ -1249,6 +1291,7 @@ "TotalSyncRegion": "同期地域数(個)", "TotalSyncStrategy": "バインドポリシー数(個)", "Transfer": "転送", + "TriggerMode": "トリガーメソッド", "True": "はい", "Tuesday": "火曜日", "TwoAssignee": "二次受理者", @@ -1258,6 +1301,7 @@ "Types": "タイプ", "UCloud": "UCloud(ユウコクデ)", "UPPER_CASE_REQUIRED": "大文字を含む必要があります", + "UnFavoriteSucceed": "取消收藏成功", "UnSyncCount": "未同期化", "Unbind": "解除", "UnbindHelpText": "このユーザーはローカル認証源であり、解除できません", @@ -1265,6 +1309,7 @@ "UnblockSelected": "選択解除", "UnblockSuccessMsg": "解除成功", "UnblockUser": "ユーザーのロック解除", + "Uninstall": "アンインストール", "UniqueError": "以下の属性は一つだけ設定できます", "UnlockSuccessMsg": "アンロックに成功しました", "UnselectedOrg": "組織が選択されていません", @@ -1345,6 +1390,7 @@ "VirtualApps": "仮想アプリケーション", "Volcengine": "ヴォルケーノエンジン", "Warning": "警告", + "WeChat": "WeChat", "WeCom": "企業WeChat", "WeComOAuth": "企業WeChat認証", "WeComTest": "テスト", @@ -1371,7 +1417,5 @@ "ZoneHelpMessage": "エリアとはアセットの位置で、データセンターやパブリッククラウド、あるいはVPCが該当します。エリアにはゲートウェイを設定でき、ネットワークが直接接続できない場合、ゲートウェイを経由してアセットにログインすることができます", "ZoneList": "地域リスト", "ZoneUpdate": "更新エリア", - "StopLogOutput": "ask Canceled:現在のタスク(currentTaskId)は手動で停止されました。各タスクの進行状況が異なるため、以下はタスクの最終実行結果です。実行が失敗した場合は、タスクが正常に停止されました。", - "UnFavoriteSucceed": "取消收藏成功", - "Open": "開く" + "removeWarningMsg": "削除してもよろしいですか" } \ No newline at end of file diff --git a/apps/i18n/lina/zh.json b/apps/i18n/lina/zh.json index 4d8f0dddf..3d1a77771 100644 --- a/apps/i18n/lina/zh.json +++ b/apps/i18n/lina/zh.json @@ -179,7 +179,36 @@ "BadRequestErrorMsg": "请求错误,请检查填写内容", "BadRoleErrorMsg": "请求错误,无该操作权限", "BaiduCloud": "百度云", + "BaseAccount": "账号", + "BaseAccountBackup": "账号备份", + "BaseAccountChangeSecret": "账号改密", + "BaseAccountGather": "账号采集", + "BaseAccountPush": "账号推送", + "BaseAccountTemplate": "账号模版", + "BaseApplets": "应用", + "BaseAssetAclList": "登录授权", + "BaseAssetList": "资产列表", + "BaseAssetPermission": "资产授权", + "BaseCloudAccountList": "云账号列表", + "BaseCloudSync": "云同步", + "BaseCmdACL": "命令授权", + "BaseCmdGroups": "命令组", + "BaseCommandFilterAclList": "命令过滤", + "BaseConnectMethodACL": "连接方式授权", + "BaseFlowSetUp": "流程设置", + "BaseJobManagement": "作业管理", + "BaseLoginLog": "登录日志", + "BaseMyAssets": "我的资产", + "BaseOperateLog": "操作日志", "BasePort": "监听端口", + "BaseSessions": "会话", + "BaseStorage": "存储", + "BaseStrategy": "策略", + "BaseSystemTasks": "任务", + "BaseTags": "标签", + "BaseTerminal": "终端", + "BaseTickets": "工单列表", + "BaseUserLoginAclList": "用户登录", "Basic": "基本设置", "BasicInfo": "基本信息", "BasicSettings": "基本设置", @@ -267,7 +296,6 @@ "CommandFilterACLHelpText": "通过命令过滤,您可以控制命令是否可以发送到资产上。根据您设定的规则,某些命令可以被放行,而另一些命令则被禁止", "CommandFilterAclCreate": "创建命令过滤规则", "CommandFilterAclDetail": "命令过滤规则详情", - "BaseCommandFilterAclList": "命令过滤", "CommandFilterAclUpdate": "更新命令过滤规则", "CommandFilterRuleContentHelpText": "每行一个命令", "CommandFilterRules": "命令过滤器规则", @@ -325,6 +353,7 @@ "CreatePlaybook": "创建 Playbook", "CreateReplayStorage": "创建对象存储", "CreateSuccessMsg": "创建成功", + "CreateUserContent": "创建用户内容", "CreateUserSetting": "创建用户内容", "Created": "已创建", "CreatedBy": "创建者", @@ -391,7 +420,6 @@ "DeleteSuccess": "删除成功", "DeleteSuccessMsg": "删除成功", "DeleteWarningMsg": "你确定要删除", - "RemoveWarningMsg": "你确定要移除", "Deploy": "部署", "Description": "描述", "DestinationIP": "目的地址", @@ -428,6 +456,7 @@ "EmailTest": "测试连接", "Empty": "空", "Enable": "启用", + "EnableDomain": "启用网域", "EnableKoKoSSHHelpText": "开启时连接资产会显示 SSH Client 拉起方式", "Endpoint": "服务端点", "EndpointListHelpMessage": "服务端点是用户访问服务的地址(端口),当用户在连接资产时,会根据端点规则和资产标签选择服务端点,作为访问入口建立连接,实现分布式连接资产", @@ -469,7 +498,6 @@ "ExportRange": "导出范围", "FC": "Fusion Compute", "Failed": "失败", - "HTTPSRequiredForSupport": "需要 HTTPS 支持,才能开启", "FailedAsset": "失败的资产", "FaviconTip": "提示:网站图标(建议图片大小为: 16px*16px)", "Features": "功能设置", @@ -505,6 +533,7 @@ "GCP": "谷歌云", "GPTCreate": "创建资产-GPT", "GPTUpdate": "更新资产-GPT", + "Gateway": "网关", "GatewayCreate": "创建网关", "GatewayList": "网关列表", "GatewayUpdate": "更新网关", @@ -522,6 +551,7 @@ "GrantedAssets": "授权的资产", "GreatEqualThan": "大于等于", "GroupsAmount": "用户组", + "HTTPSRequiredForSupport": "需要 HTTPS 支持,才能开启", "HandleTicket": "处理工单", "Hardware": "硬件信息", "HardwareInfo": "硬件信息", @@ -592,6 +622,7 @@ "IpDomain": "IP 域", "IpGroup": "IP 组", "IpGroupHelpText": "* 表示匹配所有。例如: 192.168.10.1, 192.168.1.0/24, 10.1.1.1-10.1.1.20, 2001:db8:2de::e13, 2001:db8:1a:1110::/64", + "IpType": "IP 类型", "IsActive": "激活", "IsAlwaysUpdate": "资产保持最新", "IsAlwaysUpdateHelpTip": "每次执行同步任务时是否同步更新资产信息,包括主机名、ip、平台、域、节点等", @@ -765,8 +796,10 @@ "OnlineSessionHelpMsg": "无法下线当前会话,因为该会话是当前用户的在线会话。当前只记录以 Web 方式登录的用户。", "OnlineSessions": "在线会话数", "OnlineUserDevices": "在线用户设备", + "OnlyInitialDeploy": "仅初始化配置", "OnlyMailSend": "当前只支持邮件发送", "OnlySearchCurrentNodePerm": "仅搜索当前节点的授权", + "Open": "打开", "OpenCommand": "打开命令", "OpenStack": "OpenStack", "OpenStatus": "审批中", @@ -843,6 +876,7 @@ "Primary": "主要的", "Priority": "优先级", "PrivateCloud": "私有云", + "PrivateIp": "私有 IP", "PrivateKey": "私钥", "Privileged": "特权账号", "PrivilegedFirst": "优先特权账号", @@ -859,6 +893,7 @@ "Provider": "供应商", "Proxy": "代理", "PublicCloud": "公有云", + "PublicIp": "公有 IP", "PublicKey": "公钥", "Publish": "发布", "PublishAllApplets": "发布所有应用", @@ -909,6 +944,7 @@ "RemoveAssetFromNode": "从节点移除资产", "RemoveSelected": "移除所选", "RemoveSuccessMsg": "移除成功", + "RemoveWarningMsg": "你确定要移除", "Rename": "重命名", "RenameNode": "重命名节点", "ReplaceNodeAssetsAdminUserWithThis": "替换资产的管理员", @@ -1094,6 +1130,7 @@ "StatusYellow": "近期存在在执行失败", "Step": "步骤", "Stop": "停止", + "StopLogOutput": "Task Canceled:当前任务(currentTaskId)已手动停止,由于每个任务的执行进度不一样,下面是任务最终的执行结果,执行失败表示已成功停止任务执行。", "Storage": "存储", "StorageSetting": "存储设置", "Strategy": "策略", @@ -1103,7 +1140,6 @@ "StrategyList": "策略列表", "StrategyUpdate": "更新策略", "SuEnabled": "启用账号切换", - "EnableDomain": "启用网域", "SuFrom": "切换自", "Submit": "提交", "SubscriptionID": "订阅授权 ID", @@ -1111,6 +1147,7 @@ "Success/Total": "成功/总数", "SuccessAsset": "成功的资产", "SuccessfulOperation": "操作成功", + "Summary": "汇总", "Summary(success/total)": "概况( 成功/总数 )", "Sunday": "周日", "SuperAdmin": "超级管理员", @@ -1151,11 +1188,11 @@ "SystemTools": "系统工具", "TableColSetting": "选择可见属性列", "TableSetting": "表格偏好", - "Tags": "标签", "TagCreate": "创建标签", "TagInputFormatValidation": "标签格式错误,正确格式为:name:value", "TagList": "标签列表", "TagUpdate": "更新标签", + "Tags": "标签", "TailLog": "追踪日志", "Target": "目标", "TargetResources": "目标资源", @@ -1217,6 +1254,7 @@ "TotalSyncRegion": "同步地域数(个)", "TotalSyncStrategy": "绑定策略数(个)", "Transfer": "传输", + "TriggerMode": "触发方式", "Tuesday": "周二", "TwoAssignee": "二级受理人", "TwoAssigneeType": "二级受理人类型", @@ -1225,6 +1263,7 @@ "Types": "类型", "UCloud": "优刻得(UCloud)", "UPPER_CASE_REQUIRED": "必须包含大写字母", + "UnFavoriteSucceed": "取消收藏成功", "UnSyncCount": "未同步", "Unbind": "解绑", "UnbindHelpText": "本地用户为此认证来源用户,无法解绑", @@ -1232,6 +1271,7 @@ "UnblockSelected": "解锁所选", "UnblockSuccessMsg": "解锁成功", "UnblockUser": "解锁用户", + "Uninstall": "卸载", "UniqueError": "以下属性只能设置一个", "UnlockSuccessMsg": "解锁成功", "UnselectedOrg": "没有选择组织", @@ -1312,6 +1352,7 @@ "VirtualApps": "虚拟应用", "Volcengine": "火山引擎", "Warning": "警告", + "WeChat": "微信", "WeCom": "企业微信", "WeComOAuth": "企业微信认证", "WeComTest": "测试", @@ -1338,46 +1379,5 @@ "ZoneHelpMessage": "网域是资产所在的位置,可以是机房,公有云 或者 VPC。网域中可以设置网关,当网络不能直达的时候,可以使用网关跳转登录到资产", "ZoneList": "网域列表", "ZoneUpdate": "更新网域", - "IpType": "IP 类型", - "PublicIp": "公有 IP", - "PrivateIp": "私有 IP", - "WeChat": "微信", - "Gateway": "网关", - "StopLogOutput": "Task Canceled:当前任务(currentTaskId)已手动停止,由于每个任务的执行进度不一样,下面是任务最终的执行结果,执行失败表示已成功停止任务执行。", - "OnlyInitialDeploy": "仅初始化配置", - "Uninstall": "卸载", - "Summary": "汇总", - "removeWarningMsg": "你确定要移除", - "UnFavoriteSucceed": "取消收藏成功", - "TriggerMode": "触发方式", - "CreateUserContent": "创建用户内容", - "BaseAssetList": "资产列表", - "BaseCloudSync": "云同步", - "BaseCloudAccountList": "云账号列表", - "BaseStrategy": "策略", - "BaseAccount": "账号", - "BaseAccountTemplate": "账号模版", - "BaseAccountPush": "账号推送", - "BaseAccountChangeSecret": "账号改密", - "BaseAccountGather": "账号采集", - "BaseAccountBackup": "账号备份", - "BaseAssetPermission": "资产授权", - "BaseUserLoginAclList": "用户登录", - "BaseCmdACL": "命令授权", - "BaseAssetAclList": "登录授权", - "BaseCmdGroups": "命令组", - "BaseConnectMethodACL": "连接方式授权", - "BaseTags": "标签", - "BaseSessions": "会话", - "BaseLoginLog": "登录日志", - "BaseOperateLog": "操作日志", - "BaseMyAssets": "我的资产", - "BaseJobManagement": "作业管理", - "BaseFlowSetUp": "流程设置", - "BaseStorage": "存储", - "BaseTerminal": "终端", - "BaseApplets": "应用", - "BaseSystemTasks": "任务", - "Open": "打开", - "BaseTickets": "工单列表" -} + "removeWarningMsg": "你确定要移除" +} \ No newline at end of file diff --git a/apps/i18n/lina/zh_hant.json b/apps/i18n/lina/zh_hant.json index 13e7aefd5..5d964b727 100644 --- a/apps/i18n/lina/zh_hant.json +++ b/apps/i18n/lina/zh_hant.json @@ -215,6 +215,7 @@ "BadRequestErrorMsg": "請求錯誤,請檢查填寫內容", "BadRoleErrorMsg": "請求錯誤,無該操作權限", "BaiduCloud": "百度雲", + "BaseCommandFilterAclList": "命令過濾", "BasePlatform": "基礎平台", "BasePort": "監聽埠", "Basic": "基本設置", @@ -328,7 +329,6 @@ "CommandFilterACLHelpMsg": "通過命令過濾,您可以控制命令是否可以發送到資產上。根據您設定的規則,某些命令可以被放行,而另一些命令則被禁止。", "CommandFilterAclCreate": "創建命令過濾規則", "CommandFilterAclDetail": "命令過濾規則詳情", - "BaseCommandFilterAclList": "命令過濾", "CommandFilterAclUpdate": "更新命令過濾規則", "CommandFilterCreate": "創建命令過濾器", "CommandFilterDetail": "命令過濾器詳情", @@ -890,6 +890,7 @@ "OnlyLatestVersion": "僅最新版本", "OnlyMailSend": "當前只支持郵件發送", "OnlySearchCurrentNodePerm": "僅搜索當前節點的授權", + "Open": "打開", "OpenCommand": "打開命令", "OpenId": "OpenID設置", "OpenStack": "OpenStack", @@ -1401,6 +1402,7 @@ "Types": "類型", "UCloud": "UCloud優刻得", "UPPER_CASE_REQUIRED": "須包含大寫字母", + "UnFavoriteSucceed": "取消收藏成功", "UnSyncCount": "未同步", "UnbindHelpText": "本地用戶為此認證來源用戶,無法解綁", "Unblock": "解鎖", @@ -1962,7 +1964,5 @@ "weComTest": "測試", "week": "周", "weekOf": "周的星期", - "wildcardsAllowed": "允許的通配符", - "UnFavoriteSucceed": "取消收藏成功", - "Open": "打開" + "wildcardsAllowed": "允許的通配符" } \ No newline at end of file diff --git a/apps/i18n/lion/en.json b/apps/i18n/lion/en.json index 3e5220931..b7f2ca241 100644 --- a/apps/i18n/lion/en.json +++ b/apps/i18n/lion/en.json @@ -1,79 +1,78 @@ { - "Shortcuts": "Shortcuts", - "Clipboard": "Clipboard", - "Files": "Files", - "WebSocketError": "WebSocket connect failed, please check network", - "UploadFile": "Upload File", + "ActionPerm": "Actions", + "AutoFit": "Auto Fit", + "Cancel": "Cancel", "ClearDone": "Clear done", + "Clipboard": "Clipboard", + "Close": "Close", + "ConfirmBtn": "Confirm", "Connecting": "Connecting", + "CopyLink": "Copy Link Address and Code", + "CreateLink": "Create Share Link", + "CreateSuccess": "Success", + "Display": "Display", "ErrTitle": "Connect Error", - "JMSErrPermission": "Permission deny", - "JMSErrNoSession": "Not found session", - "JMSErrAuthUser": "Not auth user", - "JMSErrBadParams": "Bad request params", - "JMSErrIdleTimeOut": "Connect idle more than {PLACEHOLDER} minutes, disconnect", - "JMSErrPermissionExpired": "Terminated by permission expired", - "JMSErrTerminatedByAdmin": "Terminated by Admin", - "JMSErrAPIFailed": "Core API failed", - "JMSErrGatewayFailed": "Gateway not available", - "JMSErrGuacamoleServer": "Connect guacamole server failed", - "JMSErrDisconnected": "Session Disconnected", - "JMSErrMaxSession": "Session connection time more than {PLACEHOLDER} hours, disconnect", - "GuaErrUpstreamNotFound": "The remote desktop server does not appear to exist, or cannot be reached over the network.", - "GuaErrSessionConflict": "The session has ended because it conflicts with another session.", + "ExpiredTime": "Expired", + "Files": "Files", + "GetShareUser": "Enter username", "GuaErrClientUnauthorized": "User failed to logged in. (username and password are incorrect)", + "GuaErrSessionConflict": "The session has ended because it conflicts with another session.", "GuaErrUnSupport": "The requested operation is unsupported.", "GuaErrUpStreamTimeout": "The remote desktop server is not responding.", - "OK": "Ok", - "Submit": "Submit", - "Cancel": "Cancel", - "Skip": "Skip", - "Username": "Username", - "Password": "Password", - "RequireParams": "Require Params", - "Settings": "Settings", - "UploadSuccess": "Upload success", - "Display": "Display", - "AutoFit": "Auto Fit", - "PauseSession": "Pause Session", - "ResumeSession": "Resume Session", - "ExpiredTime": "Expired", - "SelectAction": "Select", - "Close": "Close", - "ActionPerm": "Actions", - "ShareUser": "ForUser", - "GetShareUser": "Enter username", - "ShareUserHelpText": "If left blank, everyone could join the session.", - "CreateLink": "Create Share Link", - "CreateSuccess": "Success", - "LinkAddr": "Link", - "VerifyCode": "Verify Code", - "CopyLink": "Copy Link Address and Code", - "Writable": "Writable", - "ReadOnly": "Read-Only", - "ConfirmBtn": "Confirm", + "GuaErrUpstreamNotFound": "The remote desktop server does not appear to exist, or cannot be reached over the network.", + "GuacamoleErrAccessDenied": "Access denied by server (account locked/disabled?)", + "GuacamoleErrActiveSessionTimeLimitExceeded": "Active session time limit exceeded.", + "GuacamoleErrAuthenticationFailure": "Authentication failure (invalid credentials?)", + "GuacamoleErrConnectionFailed": "Connection failed (server unreachable?)", + "GuacamoleErrCredentialsExpired": "Credentials expired.", + "GuacamoleErrDNSLookupFailed": "DNS lookup failed (incorrect hostname?)", + "GuacamoleErrDisconnected": "Disconnected.", + "GuacamoleErrDisconnectedByOtherConnection": "Disconnected by other connection.", + "GuacamoleErrForciblyDisconnected": "Forcibly disconnected.", + "GuacamoleErrIdleSessionTimeLimitExceeded": "Idle session time limit exceeded.", + "GuacamoleErrInsufficientPrivileges": "Insufficient privileges.", + "GuacamoleErrLoggedOff": "Logged off.", + "GuacamoleErrManuallyDisconnected": "Manually disconnected.", + "GuacamoleErrManuallyLoggedOff": "Manually logged off.", + "GuacamoleErrSSLTLSConnectionFailed": "SSL/TLS connection failed (untrusted/self-signed certificate?)", + "GuacamoleErrSecurityNegotiationFailed": "Security negotiation failed (wrong security type?)", + "GuacamoleErrServerRefusedConnection": "Server refused connection.", + "GuacamoleErrServerRefusedConnectionBySecurityType": "Server refused connection (wrong security type?)", + "GuacamoleErrUnsupportedCredentialTypeRequested": "Unsupported credential type requested.", + "GuacamoleErrUpstreamError": "Upstream error.", + "JMSErrAPIFailed": "Core API failed", + "JMSErrAuthUser": "Not auth user", + "JMSErrBadParams": "Bad request params", + "JMSErrDisconnected": "Session Disconnected", + "JMSErrGatewayFailed": "Gateway not available", + "JMSErrGuacamoleServer": "Connect guacamole server failed", + "JMSErrIdleTimeOut": "Connect idle more than {PLACEHOLDER} minutes, disconnect", + "JMSErrMaxSession": "Session connection time more than {PLACEHOLDER} hours, disconnect", + "JMSErrNoSession": "Not found session", + "JMSErrPermission": "Permission deny", + "JMSErrPermissionExpired": "Terminated by permission expired", + "JMSErrTerminatedByAdmin": "Terminated by Admin", + "LinkAddr": "Link", "Minute": "Minute", "Minutes": "Minutes", + "OK": "Ok", + "Password": "Password", + "PauseSession": "Pause Session", + "ReadOnly": "Read-Only", + "RequireParams": "Require Params", + "ResumeSession": "Resume Session", + "SelectAction": "Select", + "Settings": "Settings", "Share": "Share", - - "GuacamoleErrDisconnected": "Disconnected.", - "GuacamoleErrCredentialsExpired": "Credentials expired.", - "GuacamoleErrSecurityNegotiationFailed": "Security negotiation failed (wrong security type?)", - "GuacamoleErrAccessDenied": "Access denied by server (account locked/disabled?)", - "GuacamoleErrAuthenticationFailure": "Authentication failure (invalid credentials?)", - "GuacamoleErrSSLTLSConnectionFailed": "SSL/TLS connection failed (untrusted/self-signed certificate?)", - "GuacamoleErrDNSLookupFailed": "DNS lookup failed (incorrect hostname?)", - "GuacamoleErrServerRefusedConnectionBySecurityType": "Server refused connection (wrong security type?)", - "GuacamoleErrConnectionFailed": "Connection failed (server unreachable?)", - "GuacamoleErrUpstreamError": "Upstream error.", - "GuacamoleErrForciblyDisconnected": "Forcibly disconnected.", - "GuacamoleErrLoggedOff": "Logged off.", - "GuacamoleErrIdleSessionTimeLimitExceeded": "Idle session time limit exceeded.", - "GuacamoleErrActiveSessionTimeLimitExceeded": "Active session time limit exceeded.", - "GuacamoleErrDisconnectedByOtherConnection": "Disconnected by other connection.", - "GuacamoleErrServerRefusedConnection": "Server refused connection.", - "GuacamoleErrInsufficientPrivileges": "Insufficient privileges.", - "GuacamoleErrManuallyDisconnected": "Manually disconnected.", - "GuacamoleErrManuallyLoggedOff": "Manually logged off.", - "GuacamoleErrUnsupportedCredentialTypeRequested": "Unsupported credential type requested." -} + "ShareUser": "ForUser", + "ShareUserHelpText": "If left blank, everyone could join the session.", + "Shortcuts": "Shortcuts", + "Skip": "Skip", + "Submit": "Submit", + "UploadFile": "Upload File", + "UploadSuccess": "Upload success", + "Username": "Username", + "VerifyCode": "Verify Code", + "WebSocketError": "WebSocket connect failed, please check network", + "Writable": "Writable" +} \ No newline at end of file diff --git a/apps/i18n/lion/ja.json b/apps/i18n/lion/ja.json index 2c63c0851..dfa824777 100644 --- a/apps/i18n/lion/ja.json +++ b/apps/i18n/lion/ja.json @@ -1,2 +1,78 @@ { -} + "ActionPerm": "操作権限", + "AutoFit": "自動適応", + "Cancel": "キャンセル", + "ClearDone": "クリーニング終了", + "Clipboard": "クリップボード", + "Close": "閉じる", + "ConfirmBtn": "確定", + "Connecting": "接続中", + "CopyLink": "リンクと認証コードをコピー", + "CreateLink": "共有リンクを作成", + "CreateSuccess": "作成に成功しました", + "Display": "表示", + "ErrTitle": "接続異常", + "ExpiredTime": "有効期限", + "Files": "ファイル管理", + "GetShareUser": "ユーザー名を入力してください", + "GuaErrClientUnauthorized": "ユーザー名とパスワードの認証エラー、ログインに失敗しました", + "GuaErrSessionConflict": "他の接続との競合により、リモートデスクトップサーバーがこの接続をシャットダウンしました。しばらくしてから再試行してください。", + "GuaErrUnSupport": "この操作リクエストは禁止されています", + "GuaErrUpStreamTimeout": "リモートデスクトップサーバーが応答しない", + "GuaErrUpstreamNotFound": "リモートデスクトップサーバーに接続できません(ネットワークに到達できない | セキュリティポリシーエラー)", + "GuacamoleErrAccessDenied": "リモート接続へのアクセスが拒否されました", + "GuacamoleErrActiveSessionTimeLimitExceeded": "リモート接続のアクティブ時間が制限を超えました", + "GuacamoleErrAuthenticationFailure": "リモート接続の認証失敗", + "GuacamoleErrConnectionFailed": "リモート接続が失敗しました", + "GuacamoleErrCredentialsExpired": "リモート接続のクレデンシャルが期限切れです", + "GuacamoleErrDNSLookupFailed": "リモート接続の DNS クエリ失敗", + "GuacamoleErrDisconnected": "リモート接続が切断されました", + "GuacamoleErrDisconnectedByOtherConnection": "リモート接続が他の接続により切断されました", + "GuacamoleErrForciblyDisconnected": "リモート接続は強制的に切断されました", + "GuacamoleErrIdleSessionTimeLimitExceeded": "リモート接続のアイドル時間が制限を超過", + "GuacamoleErrInsufficientPrivileges": "リモート接続のユーザー権限不足", + "GuacamoleErrLoggedOff": "リモート接続のユーザーがログアウトしました", + "GuacamoleErrManuallyDisconnected": "リモート接続が手動で切断されました", + "GuacamoleErrManuallyLoggedOff": "リモート接続のユーザーが手動でログオフされました", + "GuacamoleErrSSLTLSConnectionFailed": "リモート接続の SSL / TLS が失敗しました", + "GuacamoleErrSecurityNegotiationFailed": "リモート接続のセキュリティネゴシエーションが失敗しました", + "GuacamoleErrServerRefusedConnection": "リモート接続のサーバーが接続を拒否しました", + "GuacamoleErrServerRefusedConnectionBySecurityType": "リモート接続のサーバーが接続を拒否しました、セキュリティタイプが一致していない可能性があります", + "GuacamoleErrUnsupportedCredentialTypeRequested": "リモート接続の資格タイプがサポートされていません", + "GuacamoleErrUpstreamError": "リモート接続のサーバーにエラーが発生", + "JMSErrAPIFailed": "Core APIエラーが発生", + "JMSErrAuthUser": "ユーザーは認証されていません", + "JMSErrBadParams": "リクエストパラメータが間違っています", + "JMSErrDisconnected": "セッション接続が切断されました", + "JMSErrGatewayFailed": "ゲートウェイ接続エラー", + "JMSErrGuacamoleServer": "Guacamoleサーバーに接続できません", + "JMSErrIdleTimeOut": "最大アイドル時間{PLACEHOLDER}分を超えたため、接続が切断されました", + "JMSErrMaxSession": "最大セッション時間{PLACEHOLDER}時間を超えたため、接続が切断されました", + "JMSErrNoSession": "セッションが見つかりませんでした", + "JMSErrPermission": "接続権限がありません", + "JMSErrPermissionExpired": "認証が期限切れ、接続が切断されました", + "JMSErrTerminatedByAdmin": "管理者がセッションを終了", + "LinkAddr": "リンクアドレス", + "Minute": "分", + "Minutes": "分", + "OK": "確定", + "Password": "パスワード", + "PauseSession": "セッションを一時停止", + "ReadOnly": "読み取り専用", + "RequireParams": "必須パラメータ", + "ResumeSession": "セッションの回復", + "SelectAction": "選択してください", + "Settings": "設定", + "Share": "共有", + "ShareUser": "共有ユーザー", + "ShareUserHelpText": "ユーザーが選択されていない、つまり誰でも参加できます", + "Shortcuts": "ショートカットキー", + "Skip": "スキップ", + "Submit": "提出", + "UploadFile": "ファイルをアップロード", + "UploadSuccess": "アップロードに成功しました", + "Username": "ユーザー名", + "VerifyCode": "検証コード", + "WebSocketError": "WebSocketの接続に失敗しました、ネットワークを確認してください", + "Writable": "読み書き" +} \ No newline at end of file diff --git a/apps/i18n/lion/zh.json b/apps/i18n/lion/zh.json index 36bca1991..2df47abff 100644 --- a/apps/i18n/lion/zh.json +++ b/apps/i18n/lion/zh.json @@ -1,79 +1,78 @@ { - "Shortcuts": "快捷键", - "Clipboard": "剪贴板", - "Files": "文件管理", - "WebSocketError": "WebSocket 连接失败,请检查网络", - "UploadFile": "上传文件", - "ClearDone": "清理已完成", - "Connecting": "连接中", - "ErrTitle": "连接异常", - "JMSErrPermission": "无连接权限", - "JMSErrNoSession": "未能找到会话", - "JMSErrAuthUser": "用户未认证", - "JMSErrBadParams": "请求参数错误", - "JMSErrIdleTimeOut": "超过最大空闲时间{PLACEHOLDER}分钟,断开连接", - "JMSErrPermissionExpired": "授权已过期,断开连接", - "JMSErrTerminatedByAdmin": "管理员终断会话", - "JMSErrAPIFailed": "Core API 发生错误", - "JMSErrGatewayFailed": "网关连接失败", - "JMSErrGuacamoleServer": "无法连接 Guacamole 服务器", - "JMSErrDisconnected": "会话连接已断开", - "JMSErrMaxSession": "超过最大会话时间{PLACEHOLDER}小时,断开连接", - "GuaErrUpstreamNotFound": "无法连接到远程桌面服务器(网络不可达 | 安全策略错误)", - "GuaErrSessionConflict": "因与另一个连接冲突,远程桌面服务器关闭了本连接。请稍后重试。", - "GuaErrClientUnauthorized": "用户名和密码认证错误,登录失败", - "GuaErrUnSupport": "该操作请求被禁止", - "GuaErrUpStreamTimeout": "远程桌面服务器无响应", - "OK": "确定", - "Submit": "提交", - "Cancel": "取消", - "Skip": "跳过", - "Username": "用户名", - "Password": "密码", - "RequireParams": "必填参数", - "Settings": "设置", - "UploadSuccess": "上传成功", - "Display": "显示", - "AutoFit": "自动适应", - "PauseSession": "暂停会话", - "ResumeSession": "恢复会话", - "ExpiredTime": "有效期限", - "SelectAction": "请选择", - "Close": "关闭", "ActionPerm": "操作权限", - "ShareUser": "分享用户", - "GetShareUser": "输入用户名", - "ShareUserHelpText": "未选择用户,即允许所有人加入", + "AutoFit": "自动适应", + "Cancel": "取消", + "ClearDone": "清理已完成", + "Clipboard": "剪贴板", + "Close": "关闭", + "ConfirmBtn": "确定", + "Connecting": "连接中", + "CopyLink": "复制链接及验证码", "CreateLink": "创建分享链接", "CreateSuccess": "创建成功", - "LinkAddr": "链接地址", - "VerifyCode": "验证码", - "CopyLink": "复制链接及验证码", - "Writable": "读写", - "ReadOnly": "只读", - "ConfirmBtn": "确定", - "Minute": "分钟", - "Minutes": "分钟", - "Share": "分享", - - "GuacamoleErrDisconnected": "远程连接断开", - "GuacamoleErrCredentialsExpired": "远程连接的凭证过期", - "GuacamoleErrSecurityNegotiationFailed": "远程连接的安全协商失败", + "Display": "显示", + "ErrTitle": "连接异常", + "ExpiredTime": "有效期限", + "Files": "文件管理", + "GetShareUser": "输入用户名", + "GuaErrClientUnauthorized": "用户名和密码认证错误,登录失败", + "GuaErrSessionConflict": "因与另一个连接冲突,远程桌面服务器关闭了本连接。请稍后重试。", + "GuaErrUnSupport": "该操作请求被禁止", + "GuaErrUpStreamTimeout": "远程桌面服务器无响应", + "GuaErrUpstreamNotFound": "无法连接到远程桌面服务器(网络不可达 | 安全策略错误)", "GuacamoleErrAccessDenied": "远程连接的访问被拒绝", - "GuacamoleErrAuthenticationFailure": "远程连接的认证失败", - "GuacamoleErrSSLTLSConnectionFailed": "远程连接的 SSL/TLS 连接失败", - "GuacamoleErrDNSLookupFailed": "远程连接的 DNS 查询失败", - "GuacamoleErrServerRefusedConnectionBySecurityType": "远程连接的服务器拒绝连接,可能安全类型不匹配", - "GuacamoleErrConnectionFailed": "远程连接失败", - "GuacamoleErrUpstreamError": "远程连接的服务器发生错误", - "GuacamoleErrForciblyDisconnected": "远程连接被强制断开", - "GuacamoleErrLoggedOff": "远程连接的用户已注销", - "GuacamoleErrIdleSessionTimeLimitExceeded": "远程连接的空闲时间超过限制", "GuacamoleErrActiveSessionTimeLimitExceeded": "远程连接的活动时间超过限制", + "GuacamoleErrAuthenticationFailure": "远程连接的认证失败", + "GuacamoleErrConnectionFailed": "远程连接失败", + "GuacamoleErrCredentialsExpired": "远程连接的凭证过期", + "GuacamoleErrDNSLookupFailed": "远程连接的 DNS 查询失败", + "GuacamoleErrDisconnected": "远程连接断开", "GuacamoleErrDisconnectedByOtherConnection": "远程连接被其他连接断开", - "GuacamoleErrServerRefusedConnection": "远程连接的服务器拒绝连接", + "GuacamoleErrForciblyDisconnected": "远程连接被强制断开", + "GuacamoleErrIdleSessionTimeLimitExceeded": "远程连接的空闲时间超过限制", "GuacamoleErrInsufficientPrivileges": "远程连接的用户权限不足", + "GuacamoleErrLoggedOff": "远程连接的用户已注销", "GuacamoleErrManuallyDisconnected": "远程连接被手动断开", "GuacamoleErrManuallyLoggedOff": "远程连接的用户被手动注销", - "GuacamoleErrUnsupportedCredentialTypeRequested": "远程连接的凭证类型不支持" -} + "GuacamoleErrSSLTLSConnectionFailed": "远程连接的 SSL/TLS 连接失败", + "GuacamoleErrSecurityNegotiationFailed": "远程连接的安全协商失败", + "GuacamoleErrServerRefusedConnection": "远程连接的服务器拒绝连接", + "GuacamoleErrServerRefusedConnectionBySecurityType": "远程连接的服务器拒绝连接,可能安全类型不匹配", + "GuacamoleErrUnsupportedCredentialTypeRequested": "远程连接的凭证类型不支持", + "GuacamoleErrUpstreamError": "远程连接的服务器发生错误", + "JMSErrAPIFailed": "Core API 发生错误", + "JMSErrAuthUser": "用户未认证", + "JMSErrBadParams": "请求参数错误", + "JMSErrDisconnected": "会话连接已断开", + "JMSErrGatewayFailed": "网关连接失败", + "JMSErrGuacamoleServer": "无法连接 Guacamole 服务器", + "JMSErrIdleTimeOut": "超过最大空闲时间{PLACEHOLDER}分钟,断开连接", + "JMSErrMaxSession": "超过最大会话时间{PLACEHOLDER}小时,断开连接", + "JMSErrNoSession": "未能找到会话", + "JMSErrPermission": "无连接权限", + "JMSErrPermissionExpired": "授权已过期,断开连接", + "JMSErrTerminatedByAdmin": "管理员终断会话", + "LinkAddr": "链接地址", + "Minute": "分钟", + "Minutes": "分钟", + "OK": "确定", + "Password": "密码", + "PauseSession": "暂停会话", + "ReadOnly": "只读", + "RequireParams": "必填参数", + "ResumeSession": "恢复会话", + "SelectAction": "请选择", + "Settings": "设置", + "Share": "分享", + "ShareUser": "分享用户", + "ShareUserHelpText": "未选择用户,即允许所有人加入", + "Shortcuts": "快捷键", + "Skip": "跳过", + "Submit": "提交", + "UploadFile": "上传文件", + "UploadSuccess": "上传成功", + "Username": "用户名", + "VerifyCode": "验证码", + "WebSocketError": "WebSocket 连接失败,请检查网络", + "Writable": "读写" +} \ No newline at end of file diff --git a/apps/i18n/lion/zh_Hant.json b/apps/i18n/lion/zh_Hant.json index fa303a77a..1ca0efc1d 100644 --- a/apps/i18n/lion/zh_Hant.json +++ b/apps/i18n/lion/zh_Hant.json @@ -1,79 +1,78 @@ { - "Shortcuts": "快捷鍵", - "Clipboard": "剪貼板", - "Files": "文件管理", - "WebSocketError": "WebSocket 連接失敗,請檢查網路", - "UploadFile": "上傳文件", - "ClearDone": "清理已完成", - "Connecting": "連線中", - "ErrTitle": "連接異常", - "JMSErrPermission": "無連接權限", - "JMSErrNoSession": "未能找到會話", - "JMSErrAuthUser": "用戶未認證", - "JMSErrBadParams": "請求參數錯誤", - "JMSErrIdleTimeOut": "超過最大空閒時間{PLACEHOLDER}分鐘,斷開連接", - "JMSErrPermissionExpired": "授權已過期,斷開連接", - "JMSErrTerminatedByAdmin": "管理員終斷會話", - "JMSErrAPIFailed": "Core API 發生錯誤", - "JMSErrGatewayFailed": "網關連接失敗", - "JMSErrGuacamoleServer": "無法連接 Guacamole 伺服器", - "JMSErrDisconnected": "會話連接已斷開", - "JMSErrMaxSession": "超過最大會話時間{PLACEHOLDER}小時,斷開連接", - "GuaErrUpstreamNotFound": "無法連接到遠程桌面伺服器(網路不可達 | 安全策略錯誤)", - "GuaErrSessionConflict": "因與另一個連接衝突,遠程桌面伺服器關閉了本連接。請稍後重試。", - "GuaErrClientUnauthorized": "使用者名稱和密碼認證錯誤,登錄失敗", - "GuaErrUnSupport": "該操作請求被禁止", - "GuaErrUpStreamTimeout": "遠程桌面伺服器無響應", - "OK": "確定", - "Submit": "提交", - "Cancel": "取消", - "Skip": "跳過", - "Username": "使用者名稱", - "Password": "密碼", - "RequireParams": "必填參數", - "Settings": "設置", - "UploadSuccess": "上傳成功", - "Display": "顯示", - "AutoFit": "自動適應", - "PauseSession": "暫停會話", - "ResumeSession": "恢復會話", - "ExpiredTime": "有效期限", - "SelectAction": "請選擇", - "Close": "關閉", "ActionPerm": "操作權限", - "ShareUser": "分享用户", - "GetShareUser": "輸入用户名", - "ShareUserHelpText": "未選擇用戶,即允許所有人加入", + "AutoFit": "自動適應", + "Cancel": "取消", + "ClearDone": "清理已完成", + "Clipboard": "剪貼板", + "Close": "關閉", + "ConfirmBtn": "確定", + "Connecting": "連線中", + "CopyLink": "複製鏈接及驗證碼", "CreateLink": "創建分享鏈接", "CreateSuccess": "創建成功", - "LinkAddr": "鏈接地址", - "VerifyCode": "驗證碼", - "CopyLink": "複製鏈接及驗證碼", - "Writable": "讀寫", - "ReadOnly": "只讀", - "ConfirmBtn": "確定", - "Minute": "分鐘", - "Minutes": "分鐘", - "Share": "分享", - - "GuacamoleErrDisconnected": "遠程連接斷開", - "GuacamoleErrCredentialsExpired": "遠程連接的憑證過期", - "GuacamoleErrSecurityNegotiationFailed": "遠程連接的安全協商失敗", + "Display": "顯示", + "ErrTitle": "連接異常", + "ExpiredTime": "有效期限", + "Files": "文件管理", + "GetShareUser": "輸入用户名", + "GuaErrClientUnauthorized": "使用者名稱和密碼認證錯誤,登錄失敗", + "GuaErrSessionConflict": "因與另一個連接衝突,遠程桌面伺服器關閉了本連接。請稍後重試。", + "GuaErrUnSupport": "該操作請求被禁止", + "GuaErrUpStreamTimeout": "遠程桌面伺服器無響應", + "GuaErrUpstreamNotFound": "無法連接到遠程桌面伺服器(網路不可達 | 安全策略錯誤)", "GuacamoleErrAccessDenied": "遠程連接的訪問被拒絕", - "GuacamoleErrAuthenticationFailure": "遠程連接的認證失敗", - "GuacamoleErrSSLTLSConnectionFailed": "遠程連接的 SSL/TLS 連接失敗", - "GuacamoleErrDNSLookupFailed": "遠程連接的 DNS 查詢失敗", - "GuacamoleErrServerRefusedConnectionBySecurityType": "遠程連接的伺服器拒絕連接,可能安全類型不匹配", - "GuacamoleErrConnectionFailed": "遠程連接失敗", - "GuacamoleErrUpstreamError": "遠程連接的伺服器發生錯誤", - "GuacamoleErrForciblyDisconnected": "遠程連接被強制斷開", - "GuacamoleErrLoggedOff": "遠程連接的用戶已註銷", - "GuacamoleErrIdleSessionTimeLimitExceeded": "遠程連接的空閒時間超過限制", "GuacamoleErrActiveSessionTimeLimitExceeded": "遠程連接的活動時間超過限制", + "GuacamoleErrAuthenticationFailure": "遠程連接的認證失敗", + "GuacamoleErrConnectionFailed": "遠程連接失敗", + "GuacamoleErrCredentialsExpired": "遠程連接的憑證過期", + "GuacamoleErrDNSLookupFailed": "遠程連接的 DNS 查詢失敗", + "GuacamoleErrDisconnected": "遠程連接斷開", "GuacamoleErrDisconnectedByOtherConnection": "遠程連接被其他連接斷開", - "GuacamoleErrServerRefusedConnection": "遠程連接的伺服器拒絕連接", + "GuacamoleErrForciblyDisconnected": "遠程連接被強制斷開", + "GuacamoleErrIdleSessionTimeLimitExceeded": "遠程連接的空閒時間超過限制", "GuacamoleErrInsufficientPrivileges": "遠程連接的用戶權限不足", + "GuacamoleErrLoggedOff": "遠程連接的用戶已註銷", "GuacamoleErrManuallyDisconnected": "遠程連接被手動斷開", "GuacamoleErrManuallyLoggedOff": "遠程連接的用戶被手動註銷", - "GuacamoleErrUnsupportedCredentialTypeRequested": "遠程連接的憑證類型不支持" -} + "GuacamoleErrSSLTLSConnectionFailed": "遠程連接的 SSL/TLS 連接失敗", + "GuacamoleErrSecurityNegotiationFailed": "遠程連接的安全協商失敗", + "GuacamoleErrServerRefusedConnection": "遠程連接的伺服器拒絕連接", + "GuacamoleErrServerRefusedConnectionBySecurityType": "遠程連接的伺服器拒絕連接,可能安全類型不匹配", + "GuacamoleErrUnsupportedCredentialTypeRequested": "遠程連接的憑證類型不支持", + "GuacamoleErrUpstreamError": "遠程連接的伺服器發生錯誤", + "JMSErrAPIFailed": "Core API 發生錯誤", + "JMSErrAuthUser": "用戶未認證", + "JMSErrBadParams": "請求參數錯誤", + "JMSErrDisconnected": "會話連接已斷開", + "JMSErrGatewayFailed": "網關連接失敗", + "JMSErrGuacamoleServer": "無法連接 Guacamole 伺服器", + "JMSErrIdleTimeOut": "超過最大空閒時間{PLACEHOLDER}分鐘,斷開連接", + "JMSErrMaxSession": "超過最大會話時間{PLACEHOLDER}小時,斷開連接", + "JMSErrNoSession": "未能找到會話", + "JMSErrPermission": "無連接權限", + "JMSErrPermissionExpired": "授權已過期,斷開連接", + "JMSErrTerminatedByAdmin": "管理員終斷會話", + "LinkAddr": "鏈接地址", + "Minute": "分鐘", + "Minutes": "分鐘", + "OK": "確定", + "Password": "密碼", + "PauseSession": "暫停會話", + "ReadOnly": "只讀", + "RequireParams": "必填參數", + "ResumeSession": "恢復會話", + "SelectAction": "請選擇", + "Settings": "設置", + "Share": "分享", + "ShareUser": "分享用户", + "ShareUserHelpText": "未選擇用戶,即允許所有人加入", + "Shortcuts": "快捷鍵", + "Skip": "跳過", + "Submit": "提交", + "UploadFile": "上傳文件", + "UploadSuccess": "上傳成功", + "Username": "使用者名稱", + "VerifyCode": "驗證碼", + "WebSocketError": "WebSocket 連接失敗,請檢查網路", + "Writable": "讀寫" +} \ No newline at end of file