diff --git a/apps/common/templates/common/flash_message_standalone.html b/apps/common/templates/common/flash_message_standalone.html index 869bd53c6..e7cb481f7 100644 --- a/apps/common/templates/common/flash_message_standalone.html +++ b/apps/common/templates/common/flash_message_standalone.html @@ -71,7 +71,7 @@ } } {% if auto_redirect %} - window.onload = redirect_page + window.onload = redirect_page; {% endif %} diff --git a/apps/jumpserver/settings.py b/apps/jumpserver/settings.py index 523403fe8..c388c3874 100644 --- a/apps/jumpserver/settings.py +++ b/apps/jumpserver/settings.py @@ -215,7 +215,7 @@ LOGGING = { # Internationalization # https://docs.djangoproject.com/en/1.10/topics/i18n/ -LANGUAGE_CODE = 'en-us' +LANGUAGE_CODE = 'en_US' TIME_ZONE = 'Asia/Shanghai' @@ -225,6 +225,9 @@ USE_L10N = True USE_TZ = True +# I18N translation +LOCALE_PATHS = [os.path.join(BASE_DIR, 'locale'),] + # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/1.10/howto/static-files/ @@ -246,7 +249,6 @@ BOOTSTRAP_COLUMN_COUNT = 11 # Init data or generate fake data source for development FIXTURE_DIRS = [os.path.join(BASE_DIR, 'fixtures'), ] - # Email config EMAIL_HOST = CONFIG.EMAIL_HOST EMAIL_PORT = CONFIG.EMAIL_PORT diff --git a/apps/locale/zh_CN/LC_MESSAGES/django.mo b/apps/locale/zh_CN/LC_MESSAGES/django.mo new file mode 100644 index 000000000..c7fe93931 Binary files /dev/null and b/apps/locale/zh_CN/LC_MESSAGES/django.mo differ diff --git a/apps/locale/zh_CN/LC_MESSAGES/django.po b/apps/locale/zh_CN/LC_MESSAGES/django.po new file mode 100644 index 000000000..d1e5d24c3 --- /dev/null +++ b/apps/locale/zh_CN/LC_MESSAGES/django.po @@ -0,0 +1,504 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-09-04 00:49+0800\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: templates/_header_bar.html:8 users/templates/users/user_detail.html:29 +msgid "Search" +msgstr "搜索" + +#: templates/_header_bar.html:14 +msgid "Welcome use Jumpserver system" +msgstr "欢迎使用Jumpserver开源跳板机系统" + +#: templates/_header_bar.html:18 +msgid "Help" +msgstr "帮助" + +#: templates/_header_bar.html:35 templates/_nav.html:4 +msgid "Home" +msgstr "仪表盘" + +#: templates/_nav.html:9 users/views.py:100 users/views.py:113 +#: users/views.py:155 users/views.py:173 users/views.py:197 users/views.py:210 +msgid "Users" +msgstr "用户管理" + +#: templates/_nav.html:12 users/models.py:103 +#, fuzzy +#| msgid "Users" +msgid "User" +msgstr "用户管理" + +#: templates/_nav.html:13 users/models.py:109 +#: users/templates/users/user_detail.html:181 +#: users/templates/users/user_list.html:15 +msgid "Usergroup" +msgstr "用户组" + +#: templates/_nav.html:18 +msgid "Assets" +msgstr "资产管理" + +#: templates/_nav.html:21 +msgid "Asset" +msgstr "资产管理" + +#: templates/_nav.html:22 +msgid "Assetgroup" +msgstr "用户组" + +#: templates/_nav.html:23 +msgid "IDC" +msgstr "机房" + +#: templates/_nav.html:24 +msgid "Opsuser" +msgstr "管理用户" + +#: templates/_nav.html:25 +msgid "Sysuser" +msgstr "系统用户" + +#: templates/_nav.html:26 +msgid "Label" +msgstr "标签" + +#: templates/_nav.html:30 +msgid "Perms" +msgstr "权限" + +#: templates/_nav.html:33 +msgid "Perm" +msgstr "权限" + +#: templates/_nav.html:36 +msgid "Create perm" +msgstr "创建权限" + +#: templates/_nav.html:42 +msgid "Audit" +msgstr "审计" + +#: templates/_nav.html:47 +msgid "File" +msgstr "文件" + +#: templates/_nav.html:50 +msgid "File upload" +msgstr "文件上传" + +#: templates/_nav.html:51 +msgid "File download" +msgstr "文件下载" + +#: templates/_nav.html:56 +msgid "Settings" +msgstr "设置" + +#: templates/_nav.html:61 +msgid "Visit us" +msgstr "访问官网" + +#: templates/_user_profile.html:19 users/templates/users/_user.html:62 +msgid "Profile" +msgstr "个人信息" + +#: templates/_user_profile.html:21 +msgid "Logout" +msgstr "注销登录" + +#: templates/captcha/image.html:3 +msgid "Play CAPTCHA as audio file" +msgstr "" + +#: users/forms.py:12 users/models.py:106 users/templates/users/login.html:57 +#: users/templates/users/user_detail.html:73 +#: users/templates/users/user_edit.html:5 +#: users/templates/users/user_list.html:13 +msgid "Username" +msgstr "用户名" + +#: users/forms.py:13 users/templates/users/login.html:60 +#: users/templates/users/reset_password.html:52 +#: users/templates/users/user_add.html:8 +#: users/templates/users/user_add.html:10 +#: users/templates/users/user_edit.html:12 +#: users/templates/users/user_edit.html:14 +msgid "Password" +msgstr "密码" + +#: users/forms.py:31 users/forms.py:50 +#, fuzzy +msgid "Join usergroups" +msgstr "添加到用户组" + +#: users/models.py:60 users/models.py:107 +#: users/templates/users/user_detail.html:69 +#: users/templates/users/user_list.html:12 +msgid "Name" +msgstr "名称" + +#: users/models.py:61 users/models.py:118 +#: users/templates/users/user_detail.html:113 +msgid "Comment" +msgstr "备注" + +#: users/models.py:102 users/models.py:225 +msgid "Administrator" +msgstr "管理员" + +#: users/models.py:108 users/templates/users/user_detail.html:77 +msgid "Email" +msgstr "邮件" + +#: users/models.py:110 users/templates/users/user_detail.html:93 +#: users/templates/users/user_list.html:14 +msgid "Role" +msgstr "角色" + +#: users/models.py:111 +msgid "Avatar" +msgstr "头像" + +#: users/models.py:112 users/templates/users/user_detail.html:88 +msgid "Wechat" +msgstr "微信" + +#: users/models.py:113 users/templates/users/user_detail.html:82 +msgid "Phone" +msgstr "手机" + +#: users/models.py:114 users/templates/users/_user.html:56 +msgid "Enable OTP" +msgstr "二次验证" + +#: users/models.py:116 +msgid "ssh private key" +msgstr "ssh密钥" + +#: users/models.py:117 +msgid "ssh public key" +msgstr "ssh公钥" + +#: users/models.py:121 users/templates/users/user_detail.html:97 +msgid "Date expired" +msgstr "失效日期" + +#: users/models.py:228 +msgid "Administrator is the super user of system" +msgstr "Administrator是初始的超级管理员" + +#: users/models.py:229 +msgid "System" +msgstr "系统" + +#: users/templates/users/_user.html:17 users/templates/users/user_list.html:5 +#: users/views.py:113 +msgid "Create user" +msgstr "创建用户" + +#: users/templates/users/_user.html:33 +msgid "Account" +msgstr "账户" + +#: users/templates/users/_user.html:43 +msgid "Security and Role" +msgstr "角色安全" + +#: users/templates/users/_user.html:69 +#: users/templates/users/user_detail.html:162 +#: users/templates/users/user_detail.html:170 +msgid "Reset" +msgstr "重置" + +#: users/templates/users/_user.html:70 +#: users/templates/users/forget_password.html:44 +#: users/templates/users/user_list.html:63 +msgid "Commit" +msgstr "提交" + +#: users/templates/users/forget_password.html:26 +msgid "Forget password" +msgstr "忘记密码" + +#: users/templates/users/forget_password.html:33 +msgid "Input your email, that will send a mail to your" +msgstr "输入您的邮箱, 将会发一封重置短信邮件到您的邮箱中" + +#: users/templates/users/login.html:45 users/templates/users/login.html:65 +msgid "Login" +msgstr "登录" + +#: users/templates/users/login.html:50 +msgid "Captcha invalid" +msgstr "验证码错误" + +#: users/templates/users/reset_password.html:45 +#: users/templates/users/user_detail.html:159 users/utils.py:98 +msgid "Reset password" +msgstr "重置密码" + +#: users/templates/users/reset_password.html:55 +msgid "Password again" +msgstr "再次输入密码" + +#: users/templates/users/reset_password.html:57 +msgid "Setting" +msgstr "设置" + +#: users/templates/users/user_add.html:12 +msgid "Reset link will be generated and sent to the user. " +msgstr "生成重置密码连接,通过邮件发送给用户" + +#: users/templates/users/user_delete_confirm.html:6 +msgid "Confirm delete" +msgstr "确认删除" + +#: users/templates/users/user_detail.html:18 users/views.py:173 +msgid "User detail" +msgstr "用户详情" + +#: users/templates/users/user_detail.html:20 +msgid "User assets" +msgstr "用户资产" + +#: users/templates/users/user_detail.html:21 +msgid "User log" +msgstr "登录日志" + +#: users/templates/users/user_detail.html:101 +msgid "Created by" +msgstr "创建者" + +#: users/templates/users/user_detail.html:105 +msgid "Date joined" +msgstr "加入日期" + +#: users/templates/users/user_detail.html:109 +msgid "Last login" +msgstr "最后登录" + +#: users/templates/users/user_detail.html:124 +msgid "Quick modify" +msgstr "快速修改" + +#: users/templates/users/user_detail.html:167 +msgid "Reset ssh key" +msgstr "重置密钥" + +#: users/templates/users/user_detail.html:189 +msgid "Select usergroups" +msgstr "选择用户组" + +#: users/templates/users/user_detail.html:198 +msgid "Add" +msgstr "添加" + +#: users/templates/users/user_list.html:16 +msgid "Asset num" +msgstr "资产数量" + +#: users/templates/users/user_list.html:17 +msgid "Active" +msgstr "有效" + +#: users/templates/users/user_list.html:44 +msgid "Edit" +msgstr "编辑" + +#: users/templates/users/user_list.html:45 +msgid "Delete" +msgstr "删除" + +#: users/templates/users/user_list.html:55 +msgid "Delete selected" +msgstr "批量删除" + +#: users/templates/users/user_list.html:56 +msgid "Update selected" +msgstr "批量更新" + +#: users/templates/users/user_list.html:57 +msgid "Deactive selected" +msgstr "禁用所选" + +#: users/templates/users/user_list.html:58 +msgid "Export selected" +msgstr "批量导出" + +#: users/utils.py:47 +msgid "Begin to generate ssh private key ..." +msgstr "开始生成ssh密钥" + +#: users/utils.py:59 +msgid "Finish to generate ssh private key ..." +msgstr "生成ssh密钥成功" + +#: users/utils.py:63 +msgid "These is error when generate ssh key." +msgstr "创建密钥失败" + +#: users/utils.py:67 +msgid "Create account successfully" +msgstr "创建账户成功" + +#: users/utils.py:69 +#, python-format +msgid "" +"\n" +" Hello %(name)s:\n" +"
\n" +" Your account has been created successfully\n" +"
\n" +" click " +"here to set your password\n" +"
\n" +" This link is valid for 1 hour. After it expires, request new one\n" +"\n" +"
\n" +" ---\n" +"\n" +"
\n" +" Login direct\n" +"\n" +"
\n" +" " +msgstr "" +"\n" +" 你好 %(name)s:\n" +"
\n" +" 恭喜您,您的账号已经创建成功
\n" +" 请点击这" +"里设置密码
\n" +" 这个链接有效期1小时, 超过时间您可以 重新申请\n" +"\n" +"
\n" +" ---\n" +"\n" +"
\n" +" Login direct\n" +"\n" +"
\n" +" " + +#: users/utils.py:100 +#, python-format +msgid "" +"\n" +" Hello %(name)s:\n" +"
\n" +" Please click the link below to reset your password, if not your request, " +"concern your account security\n" +"
\n" +" Click " +"here reset password\n" +"
\n" +" This link is valid for 1 hour. After it expires, request new one<\n" +"\n" +"
\n" +" ---\n" +"\n" +"
\n" +" Login direct\n" +"\n" +"
\n" +" " +msgstr "" +"\n" +" 您好 %(name)s:\n" +"
\n" +" 请点击下面链接重置密码, 如果不是您申请的,请关注账号安全\n" +"
\n" +" 请点击这" +"里设置密码 /a>\n" +"
\n" +" 这个链接有效期1小时, 超过时间您可以
重新申请\n" +"\n" +"
\n" +" ---\n" +"\n" +"
\n" +" 直接登录\n" +"\n" +"
\n" +" " + +#: users/views.py:53 +msgid "Username or password invalid" +msgstr "用户名或密码错误" + +#: users/views.py:70 +msgid "Logout success" +msgstr "退出登录成功" + +#: users/views.py:71 +msgid "Logout success, return login page" +msgstr "退出登录成功,返回到登录页面" + +#: users/views.py:100 +msgid "User list" +msgstr "用户列表" + +#: users/views.py:109 +#, python-format +msgid "Create user%s success." +msgstr "创建用户%s 成功" + +#: users/views.py:155 +msgid "Edit user" +msgstr "编辑用户" + +#: users/views.py:197 +msgid "Usergroup list" +msgstr "用户组列表" + +#: users/views.py:210 +msgid "Create usergroup" +msgstr "创建用户组" + +#: users/views.py:242 +msgid "Email address invalid, input again" +msgstr "邮箱地址错误,重新输入" + +#: users/views.py:253 +msgid "Send reset password message" +msgstr "发送重置密码邮件" + +#: users/views.py:254 +msgid "Send reset password mail success, login your mail box and follow it " +msgstr "" +"发送重置邮件成功, 请登录邮箱查看, 按照提示操作 (如果没收到,请等待3-5分钟)" + +#: users/views.py:266 +msgid "Reset password success" +msgstr "重置密码成功" + +#: users/views.py:267 +msgid "Reset password success, return to login page" +msgstr "重置密码成功,返回到登录页面" + +#: users/views.py:283 users/views.py:296 +msgid "Token invalid or expired" +msgstr "Token错误或失效" + +#: users/views.py:292 +msgid "Password not same" +msgstr "密码不一致" diff --git a/apps/templates/_header_bar.html b/apps/templates/_header_bar.html index b594f9650..012b6f013 100644 --- a/apps/templates/_header_bar.html +++ b/apps/templates/_header_bar.html @@ -1,20 +1,21 @@ +{% load i18n %}
{% endif %}