From a1e9382275141feb3b2e6557a2c11d7e8fe2ed3d Mon Sep 17 00:00:00 2001 From: Bai Date: Mon, 27 May 2024 11:13:13 +0800 Subject: [PATCH] perf: i18n bai --- apps/common/local.py | 1 + apps/i18n/core/en/LC_MESSAGES/django.po | 8 ++------ apps/i18n/core/ja/LC_MESSAGES/django.po | 4 ---- apps/i18n/core/zh/LC_MESSAGES/django.po | 4 ---- apps/i18n/lina/en.json | 2 +- apps/jumpserver/conf.py | 1 + apps/jumpserver/settings/custom.py | 2 ++ apps/settings/api/settings.py | 1 + apps/settings/serializers/__init__.py | 1 + apps/settings/serializers/feature.py | 2 +- apps/settings/serializers/public.py | 1 + apps/settings/serializers/tool.py | 15 +++++++++++++++ apps/terminal/models/applet/applet.py | 2 +- apps/users/serializers/preference/lina.py | 4 ++-- 14 files changed, 29 insertions(+), 19 deletions(-) create mode 100644 apps/settings/serializers/tool.py diff --git a/apps/common/local.py b/apps/common/local.py index 41b0cffe3..f5fd01f19 100644 --- a/apps/common/local.py +++ b/apps/common/local.py @@ -12,6 +12,7 @@ def _find(attr): def add_encrypted_field_set(label): + return if label: with translation.override('en'): encrypted_field_set.add(str(label)) diff --git a/apps/i18n/core/en/LC_MESSAGES/django.po b/apps/i18n/core/en/LC_MESSAGES/django.po index 238e55a65..33cf25294 100644 --- a/apps/i18n/core/en/LC_MESSAGES/django.po +++ b/apps/i18n/core/en/LC_MESSAGES/django.po @@ -3941,7 +3941,7 @@ msgstr "" #: jumpserver/context_processor.py:14 msgid "JumpServer Open Source Bastion Host" -msgstr "" +msgstr "JumpServer" #: jumpserver/views/celery_flower.py:22 msgid "

Flower service unavailable, check it

" @@ -5734,10 +5734,6 @@ msgstr "" msgid "Virtual App" msgstr "" -#: settings/serializers/feature.py:148 -msgid "vApp" -msgstr "" - #: settings/serializers/feature.py:150 msgid "" "Virtual applications, you can use the Linux operating system as an " @@ -6385,7 +6381,7 @@ msgstr "" #: templates/_without_nav_base.html:26 msgid "Home page" -msgstr "" +msgstr "Home" #: templates/resource_download.html:18 templates/resource_download.html:33 #: users/const.py:65 diff --git a/apps/i18n/core/ja/LC_MESSAGES/django.po b/apps/i18n/core/ja/LC_MESSAGES/django.po index 0fbd71d98..8c7a4eb37 100644 --- a/apps/i18n/core/ja/LC_MESSAGES/django.po +++ b/apps/i18n/core/ja/LC_MESSAGES/django.po @@ -5954,10 +5954,6 @@ msgstr "コマンドフィルタリング" msgid "Virtual App" msgstr "仮想アプリケーション" -#: settings/serializers/feature.py:148 -msgid "vApp" -msgstr "" - #: settings/serializers/feature.py:150 msgid "" "Virtual applications, you can use the Linux operating system as an " diff --git a/apps/i18n/core/zh/LC_MESSAGES/django.po b/apps/i18n/core/zh/LC_MESSAGES/django.po index 69f0fa73f..e71470107 100644 --- a/apps/i18n/core/zh/LC_MESSAGES/django.po +++ b/apps/i18n/core/zh/LC_MESSAGES/django.po @@ -5824,10 +5824,6 @@ msgstr "作业中心命令黑名单" msgid "Virtual App" msgstr "虚拟应用" -#: settings/serializers/feature.py:148 -msgid "vApp" -msgstr "" - #: settings/serializers/feature.py:150 msgid "" "Virtual applications, you can use the Linux operating system as an " diff --git a/apps/i18n/lina/en.json b/apps/i18n/lina/en.json index 4e1b4e66a..72d0f4c28 100644 --- a/apps/i18n/lina/en.json +++ b/apps/i18n/lina/en.json @@ -405,7 +405,7 @@ "DisplayName": "Name", "Docs": "Document", "Download": "Download", - "DownloadCenter": "Download center", + "DownloadCenter": "Download", "DownloadFTPFileTip": "The current action does not record files, or the file size exceeds the threshold (default 100m), or it has not yet been saved to the corresponding storage", "DownloadImportTemplateMsg": "Download creation template", "DownloadReplay": "Download recording", diff --git a/apps/jumpserver/conf.py b/apps/jumpserver/conf.py index a7fb03114..f284782a9 100644 --- a/apps/jumpserver/conf.py +++ b/apps/jumpserver/conf.py @@ -624,6 +624,7 @@ class Config(dict): 'LOKI_LOG_ENABLED': False, 'LOKI_BASE_URL': 'http://loki:3100', + 'TOOL_USER_ENABLED': False, } old_config_map = { diff --git a/apps/jumpserver/settings/custom.py b/apps/jumpserver/settings/custom.py index fb18e55ef..35e6f246c 100644 --- a/apps/jumpserver/settings/custom.py +++ b/apps/jumpserver/settings/custom.py @@ -238,3 +238,5 @@ ANSIBLE_RECEPTOR_TCP_LISTEN_ADDRESS = CONFIG.ANSIBLE_RECEPTOR_TCP_LISTEN_ADDRESS LOKI_LOG_ENABLED = CONFIG.LOKI_LOG_ENABLED LOKI_BASE_URL = CONFIG.LOKI_BASE_URL + +TOOL_USER_ENABLED = CONFIG.TOOL_USER_ENABLED \ No newline at end of file diff --git a/apps/settings/api/settings.py b/apps/settings/api/settings.py index a801ab2f8..776ff8736 100644 --- a/apps/settings/api/settings.py +++ b/apps/settings/api/settings.py @@ -63,6 +63,7 @@ class SettingsApi(generics.RetrieveUpdateAPIView): 'ticket': serializers.TicketSettingSerializer, 'ops': serializers.OpsSettingSerializer, 'virtualapp': serializers.VirtualAppSerializer, + 'tool': serializers.ToolSerializer, } rbac_category_permissions = { diff --git a/apps/settings/serializers/__init__.py b/apps/settings/serializers/__init__.py index 600684387..b95087fef 100644 --- a/apps/settings/serializers/__init__.py +++ b/apps/settings/serializers/__init__.py @@ -13,3 +13,4 @@ from .public import * from .security import * from .settings import * from .terminal import * +from .tool import * diff --git a/apps/settings/serializers/feature.py b/apps/settings/serializers/feature.py index cac937d57..55b0043b4 100644 --- a/apps/settings/serializers/feature.py +++ b/apps/settings/serializers/feature.py @@ -145,7 +145,7 @@ class VirtualAppSerializer(serializers.Serializer): PREFIX_TITLE = _('Virtual app') VIRTUAL_APP_ENABLED = serializers.BooleanField( - required=False, label=_('vApp'), + required=False, label=_('Virtual App'), help_text=_( 'Virtual applications, you can use the Linux operating system as an application server ' 'in remote applications.' diff --git a/apps/settings/serializers/public.py b/apps/settings/serializers/public.py index ca5c80de5..b1c099aab 100644 --- a/apps/settings/serializers/public.py +++ b/apps/settings/serializers/public.py @@ -63,6 +63,7 @@ class PrivateSettingSerializer(PublicSettingSerializer): GPT_MODEL = serializers.CharField() FILE_UPLOAD_SIZE_LIMIT_MB = serializers.IntegerField() LOKI_LOG_ENABLED = serializers.BooleanField() + TOOL_USER_ENABLED = serializers.BooleanField() class ServerInfoSerializer(serializers.Serializer): diff --git a/apps/settings/serializers/tool.py b/apps/settings/serializers/tool.py new file mode 100644 index 000000000..731ea955d --- /dev/null +++ b/apps/settings/serializers/tool.py @@ -0,0 +1,15 @@ +from django.utils.translation import gettext_lazy as _ +from rest_framework import serializers + +__all__ = [ + 'ToolSerializer' +] + + +class ToolSerializer(serializers.Serializer): + PREFIX_TITLE = _('Tool') + + TOOL_USER_ENABLED = serializers.BooleanField( + label=_('User tool'), default=True, + help_text=_("If enabled, users can utilize all tools in the workspace") + ) \ No newline at end of file diff --git a/apps/terminal/models/applet/applet.py b/apps/terminal/models/applet/applet.py index 9e501eb50..08a7b809a 100644 --- a/apps/terminal/models/applet/applet.py +++ b/apps/terminal/models/applet/applet.py @@ -176,7 +176,7 @@ class Applet(JMSBaseModel): label_value = spec_label.label.value matched = [host for host in hosts if host.name == label_value] if matched: - return matched[0] + return random.choice(matched) hosts = [h for h in hosts if h.auto_create_accounts] prefer_key = self.host_prefer_key_tpl.format(user.id) diff --git a/apps/users/serializers/preference/lina.py b/apps/users/serializers/preference/lina.py index 2dd09a370..5e45715e1 100644 --- a/apps/users/serializers/preference/lina.py +++ b/apps/users/serializers/preference/lina.py @@ -8,7 +8,7 @@ from ...models import Preference class BasicSerializer(serializers.Serializer): has_secret_key = serializers.SerializerMethodField( help_text=_( - 'The password for file encryption, ' + '*! 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' @@ -43,4 +43,4 @@ class BasicSerializer(serializers.Serializer): class LinaSerializer(serializers.Serializer): - basic = BasicSerializer(required=False, label=_('Basic')) + basic = BasicSerializer(required=False, label=_('File Encryption'))