diff --git a/apps/authentication/views/dingtalk.py b/apps/authentication/views/dingtalk.py index 24861b979..6243b80b7 100644 --- a/apps/authentication/views/dingtalk.py +++ b/apps/authentication/views/dingtalk.py @@ -2,7 +2,7 @@ import urllib from django.http.response import HttpResponseRedirect from django.utils.decorators import method_decorator -from django.utils.translation import ugettext as _ +from django.utils.translation import ugettext_lazy as _ from django.views.decorators.cache import never_cache from django.views.generic import TemplateView from django.views import View diff --git a/apps/authentication/views/wecom.py b/apps/authentication/views/wecom.py index 981c12508..b7b2a707b 100644 --- a/apps/authentication/views/wecom.py +++ b/apps/authentication/views/wecom.py @@ -2,7 +2,7 @@ import urllib from django.http.response import HttpResponseRedirect from django.utils.decorators import method_decorator -from django.utils.translation import ugettext as _ +from django.utils.translation import ugettext_lazy as _ from django.views.decorators.cache import never_cache from django.views.generic import TemplateView from django.views import View diff --git a/apps/locale/zh/LC_MESSAGES/django.mo b/apps/locale/zh/LC_MESSAGES/django.mo index a43fbc6ce..4056fe77c 100644 Binary files a/apps/locale/zh/LC_MESSAGES/django.mo and b/apps/locale/zh/LC_MESSAGES/django.mo differ diff --git a/apps/locale/zh/LC_MESSAGES/django.po b/apps/locale/zh/LC_MESSAGES/django.po index 2f6862ff8..c456368c8 100644 --- a/apps/locale/zh/LC_MESSAGES/django.po +++ b/apps/locale/zh/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: JumpServer 0.3.3\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2021-05-19 14:48+0800\n" +"POT-Creation-Date: 2021-05-19 16:27+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: ibuler \n" "Language-Team: JumpServer team\n" @@ -2146,13 +2146,9 @@ msgstr "邮件已经发送{}, 请检查" msgid "Welcome to the JumpServer open source Bastion Host" msgstr "欢迎使用JumpServer开源堡垒机" -#: settings/api/dingtalk.py:29 -msgid "AppSecret is required" -msgstr "AppSecret 是必须的" - -#: settings/api/dingtalk.py:35 settings/api/wecom.py:35 -msgid "OK" -msgstr "" +#: settings/api/dingtalk.py:36 settings/api/wecom.py:36 +msgid "Test success" +msgstr "测试成功" #: settings/api/ldap.py:189 msgid "Get ldap users is None" @@ -2162,10 +2158,6 @@ msgstr "获取 LDAP 用户为 None" msgid "Imported {} users successfully" msgstr "导入 {} 个用户成功" -#: settings/api/wecom.py:29 -msgid "Secret is required" -msgstr "Secret 是必须的" - #: settings/models.py:123 users/templates/users/reset_password.html:29 msgid "Setting" msgstr "设置" @@ -3096,7 +3088,7 @@ msgstr "测试成功" msgid "Test failure: Account invalid" msgstr "测试失败: 账户无效" -#: terminal/api/terminal.py:38 terminal/api/terminal.py:43 +#: terminal/api/terminal.py:39 msgid "Have online sessions" msgstr "有在线会话" @@ -5049,6 +5041,12 @@ msgstr "旗舰版" msgid "Community edition" msgstr "社区版" +#~ msgid "AppSecret is required" +#~ msgstr "AppSecret 是必须的" + +#~ msgid "Secret is required" +#~ msgstr "Secret 是必须的" + #~ msgid "Corporation ID(corpid)" #~ msgstr "企业 ID(CorpId)" diff --git a/apps/settings/api/dingtalk.py b/apps/settings/api/dingtalk.py index 4e4a73bf7..bbbfc28a8 100644 --- a/apps/settings/api/dingtalk.py +++ b/apps/settings/api/dingtalk.py @@ -25,13 +25,18 @@ class DingTalkTestingAPI(GenericAPIView): if not dingtalk_appsecret: secret = Setting.objects.filter(name='DINGTALK_APPSECRET').first() - if not secret: - return Response(status=status.HTTP_400_BAD_REQUEST, data={'error': _('AppSecret is required')}) - dingtalk_appsecret = secret.cleaned_value + if secret: + dingtalk_appsecret = secret.cleaned_value + + dingtalk_appsecret = dingtalk_appsecret or '' try: dingtalk = DingTalk(appid=dingtalk_appkey, appsecret=dingtalk_appsecret, agentid=dingtalk_agentid) dingtalk.send_text(['test'], 'test') - return Response(status=status.HTTP_200_OK, data={'msg': _('OK')}) + return Response(status=status.HTTP_200_OK, data={'msg': _('Test success')}) except APIException as e: - return Response(status=status.HTTP_400_BAD_REQUEST, data={'error': e.detail}) + try: + error = e.detail['errmsg'] + except: + error = e.detail + return Response(status=status.HTTP_400_BAD_REQUEST, data={'error': error}) diff --git a/apps/settings/api/wecom.py b/apps/settings/api/wecom.py index 5059b7647..39d1576b5 100644 --- a/apps/settings/api/wecom.py +++ b/apps/settings/api/wecom.py @@ -25,13 +25,18 @@ class WeComTestingAPI(GenericAPIView): if not wecom_corpsecret: secret = Setting.objects.filter(name='WECOM_SECRET').first() - if not secret: - return Response(status=status.HTTP_400_BAD_REQUEST, data={'error': _('Secret is required')}) - wecom_corpsecret = secret.cleaned_value + if secret: + wecom_corpsecret = secret.cleaned_value + + wecom_corpsecret = wecom_corpsecret or '' try: wecom = WeCom(corpid=wecom_corpid, corpsecret=wecom_corpsecret, agentid=wecom_agentid) wecom.send_text(['test'], 'test') - return Response(status=status.HTTP_200_OK, data={'msg': _('OK')}) + return Response(status=status.HTTP_200_OK, data={'msg': _('Test success')}) except APIException as e: - return Response(status=status.HTTP_400_BAD_REQUEST, data={'error': e.detail}) + try: + error = e.detail['errmsg'] + except: + error = e.detail + return Response(status=status.HTTP_400_BAD_REQUEST, data={'error': error})