Commit 485a178c authored by BaiJiangJie's avatar BaiJiangJie Committed by 老广

[Update] 创建/更新用户的role选项;密码强度提示信息中英文; (#1623)

* [Update] 修改 超级管理员/组织管理员 在 创建/更新 用户时role的选项 问题

* [Update] 用户密码强度提示信息支持中英文
parent 227cc4e9
......@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Jumpserver 0.3.3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-19 18:29+0800\n"
"POT-Creation-Date: 2018-07-31 19:18+0800\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: ibuler <ibuler@qq.com>\n"
"Language-Team: Jumpserver team<ibuler@qq.com>\n"
......@@ -17,57 +17,57 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: assets/api/node.py:99
#: assets/api/node.py:97
msgid "New node {}"
msgstr "新节点 {}"
#: assets/api/node.py:234
#: assets/api/node.py:232
msgid "更新节点资产硬件信息: {}"
msgstr ""
#: assets/api/node.py:247
#: assets/api/node.py:245
msgid "测试节点下资产是否可连接: {}"
msgstr ""
#: assets/forms/asset.py:24 assets/models/asset.py:89 assets/models/user.py:112
#: assets/forms/asset.py:27 assets/models/asset.py:80 assets/models/user.py:113
#: assets/templates/assets/asset_detail.html:183
#: assets/templates/assets/asset_detail.html:191
#: assets/templates/assets/system_user_detail.html:178 perms/models.py:33
#: assets/templates/assets/system_user_detail.html:178 perms/models.py:32
msgid "Nodes"
msgstr "节点管理"
#: assets/forms/asset.py:27 assets/forms/asset.py:66 assets/forms/asset.py:109
#: assets/forms/asset.py:113 assets/models/asset.py:94
#: assets/models/cluster.py:19 assets/models/user.py:72
#: assets/forms/asset.py:30 assets/forms/asset.py:69 assets/forms/asset.py:112
#: assets/forms/asset.py:116 assets/models/asset.py:85
#: assets/models/cluster.py:19 assets/models/user.py:73
#: assets/templates/assets/asset_detail.html:73 templates/_nav.html:25
msgid "Admin user"
msgstr "管理用户"
#: assets/forms/asset.py:30 assets/forms/asset.py:69 assets/forms/asset.py:125
#: assets/forms/asset.py:33 assets/forms/asset.py:72 assets/forms/asset.py:128
#: assets/templates/assets/asset_create.html:36
#: assets/templates/assets/asset_create.html:38
#: assets/templates/assets/asset_list.html:75
#: assets/templates/assets/asset_list.html:80
#: assets/templates/assets/asset_update.html:41
#: assets/templates/assets/asset_update.html:43
#: assets/templates/assets/user_asset_list.html:34
msgid "Label"
msgstr "标签"
#: assets/forms/asset.py:34 assets/forms/asset.py:73 assets/models/asset.py:85
#: assets/models/domain.py:46
#: assets/forms/asset.py:37 assets/forms/asset.py:76 assets/models/asset.py:76
#: assets/models/domain.py:47 assets/templates/assets/user_asset_list.html:188
msgid "Domain"
msgstr "网域"
#: assets/forms/asset.py:38 assets/forms/asset.py:63 assets/forms/asset.py:77
#: assets/forms/asset.py:128 assets/templates/assets/asset_create.html:30
#: assets/templates/assets/asset_update.html:35 perms/forms.py:40
#: perms/forms.py:47 perms/models.py:76
#: assets/forms/asset.py:41 assets/forms/asset.py:66 assets/forms/asset.py:80
#: assets/forms/asset.py:131 assets/templates/assets/asset_create.html:30
#: assets/templates/assets/asset_update.html:35 perms/forms.py:50
#: perms/forms.py:57 perms/models.py:78
#: perms/templates/perms/asset_permission_list.html:57
#: perms/templates/perms/asset_permission_list.html:142
msgid "Node"
msgstr "节点"
#: assets/forms/asset.py:45 assets/forms/asset.py:85
#: assets/forms/asset.py:48 assets/forms/asset.py:88
msgid ""
"root or other NOPASSWD sudo privilege user existed in asset,If asset is "
"windows or other set any one, more see admin user left menu"
......@@ -75,42 +75,39 @@ msgstr ""
"root或其他拥有NOPASSWD: ALL权限的用户, 如果是windows或其它硬件可以随意设置一"
"个, 更多信息查看左侧 `管理用户` 菜单"
#: assets/forms/asset.py:48 assets/forms/asset.py:88
msgid "* required Must set exact system platform, Windows, Linux ..."
msgstr "* required 必须准确设置操作系统平台,如Windows, Linux ..."
#: assets/forms/asset.py:49 assets/forms/asset.py:89
#: assets/forms/asset.py:52 assets/forms/asset.py:92
msgid ""
"If your have some network not connect with each other, you can set domain"
msgstr "如果有多个的互相隔离的网络,设置资产属于的网域,使用网域网关跳转登录"
#: assets/forms/asset.py:96 assets/forms/asset.py:100 assets/forms/domain.py:16
#: assets/forms/asset.py:99 assets/forms/asset.py:103 assets/forms/domain.py:17
#: assets/forms/label.py:15
#: perms/templates/perms/asset_permission_asset.html:88
msgid "Select assets"
msgstr "选择资产"
#: assets/forms/asset.py:105 assets/models/asset.py:81
#: assets/models/domain.py:44 assets/templates/assets/admin_user_assets.html:53
#: assets/forms/asset.py:108 assets/models/asset.py:73
#: assets/models/domain.py:45 assets/templates/assets/admin_user_assets.html:53
#: assets/templates/assets/asset_detail.html:69
#: assets/templates/assets/domain_gateway_list.html:58
#: assets/templates/assets/system_user_asset.html:51
#: assets/templates/assets/user_asset_list.html:183
msgid "Port"
msgstr "端口"
#: assets/forms/domain.py:14 assets/forms/label.py:13
#: assets/models/asset.py:237 assets/templates/assets/admin_user_list.html:25
#: assets/forms/domain.py:15 assets/forms/label.py:13
#: assets/models/asset.py:225 assets/templates/assets/admin_user_list.html:25
#: assets/templates/assets/domain_detail.html:60
#: assets/templates/assets/domain_list.html:23
#: assets/templates/assets/label_list.html:16
#: assets/templates/assets/system_user_list.html:30 audits/models.py:11
#: assets/templates/assets/system_user_list.html:30 audits/models.py:13
#: audits/templates/audits/ftp_log_list.html:41
#: audits/templates/audits/ftp_log_list.html:72 perms/forms.py:37
#: perms/models.py:32
#: audits/templates/audits/ftp_log_list.html:72 perms/forms.py:47
#: perms/models.py:31
#: perms/templates/perms/asset_permission_create_update.html:40
#: perms/templates/perms/asset_permission_list.html:56
#: perms/templates/perms/asset_permission_list.html:139
#: terminal/backends/command/models.py:11 terminal/models.py:127
#: terminal/backends/command/models.py:13 terminal/models.py:128
#: terminal/templates/terminal/command_list.html:40
#: terminal/templates/terminal/command_list.html:73
#: terminal/templates/terminal/session_list.html:41
......@@ -118,9 +115,9 @@ msgstr "端口"
msgid "Asset"
msgstr "资产"
#: assets/forms/domain.py:54 assets/forms/user.py:79 assets/forms/user.py:139
#: assets/models/base.py:21 assets/models/cluster.py:18
#: assets/models/domain.py:17 assets/models/group.py:20
#: assets/forms/domain.py:55 assets/forms/user.py:79 assets/forms/user.py:139
#: assets/models/base.py:22 assets/models/cluster.py:18
#: assets/models/domain.py:18 assets/models/group.py:20
#: assets/models/label.py:17 assets/templates/assets/admin_user_detail.html:56
#: assets/templates/assets/admin_user_list.html:23
#: assets/templates/assets/domain_detail.html:56
......@@ -132,12 +129,13 @@ msgstr "资产"
#: common/templates/common/terminal_setting.html:72
#: common/templates/common/terminal_setting.html:90 ops/models/adhoc.py:36
#: ops/templates/ops/task_detail.html:59 ops/templates/ops/task_list.html:35
#: perms/models.py:29 perms/templates/perms/asset_permission_detail.html:62
#: orgs/models.py:10 perms/models.py:28
#: perms/templates/perms/asset_permission_detail.html:62
#: perms/templates/perms/asset_permission_list.html:53
#: perms/templates/perms/asset_permission_user.html:54 terminal/models.py:16
#: terminal/models.py:154 terminal/templates/terminal/terminal_detail.html:43
#: terminal/templates/terminal/terminal_list.html:29 users/models/group.py:12
#: users/models/user.py:49 users/templates/users/_select_user_modal.html:13
#: perms/templates/perms/asset_permission_user.html:54 terminal/models.py:17
#: terminal/models.py:155 terminal/templates/terminal/terminal_detail.html:43
#: terminal/templates/terminal/terminal_list.html:29 users/models/group.py:14
#: users/models/user.py:51 users/templates/users/_select_user_modal.html:13
#: users/templates/users/user_detail.html:63
#: users/templates/users/user_group_detail.html:55
#: users/templates/users/user_group_list.html:12
......@@ -147,14 +145,14 @@ msgstr "资产"
msgid "Name"
msgstr "名称"
#: assets/forms/domain.py:55 assets/forms/user.py:80 assets/forms/user.py:140
#: assets/models/base.py:22 assets/templates/assets/admin_user_detail.html:60
#: assets/forms/domain.py:56 assets/forms/user.py:80 assets/forms/user.py:140
#: assets/models/base.py:23 assets/templates/assets/admin_user_detail.html:60
#: assets/templates/assets/admin_user_list.html:24
#: assets/templates/assets/domain_gateway_list.html:60
#: assets/templates/assets/system_user_detail.html:62
#: assets/templates/assets/system_user_list.html:27
#: perms/templates/perms/asset_permission_user.html:55 users/forms.py:13
#: users/forms.py:31 users/models/authentication.py:70 users/models/user.py:47
#: perms/templates/perms/asset_permission_user.html:55 users/forms.py:15
#: users/forms.py:33 users/models/authentication.py:70 users/models/user.py:49
#: users/templates/users/_select_user_modal.html:14
#: users/templates/users/login.html:60
#: users/templates/users/login_log_list.html:49
......@@ -168,8 +166,8 @@ msgstr "用户名"
msgid "Password or private key passphrase"
msgstr "密码或密钥密码"
#: assets/forms/user.py:25 assets/models/base.py:23 common/forms.py:113
#: users/forms.py:15 users/forms.py:33 users/forms.py:45
#: assets/forms/user.py:25 assets/models/base.py:24 common/forms.py:113
#: users/forms.py:17 users/forms.py:35 users/forms.py:47
#: users/templates/users/login.html:63
#: users/templates/users/reset_password.html:53
#: users/templates/users/user_create.html:10
......@@ -180,7 +178,7 @@ msgstr "密码或密钥密码"
msgid "Password"
msgstr "密码"
#: assets/forms/user.py:28 users/models/user.py:76
#: assets/forms/user.py:28 users/models/user.py:78
msgid "Private key"
msgstr "ssh私钥"
......@@ -212,14 +210,15 @@ msgid ""
"password."
msgstr "如果选择手动登录模式,用户名和密码则不需要填写"
#: assets/models/asset.py:74 assets/models/domain.py:43
#: assets/models/asset.py:70 assets/models/domain.py:44
#: assets/templates/assets/_asset_list_modal.html:46
#: assets/templates/assets/admin_user_assets.html:52
#: assets/templates/assets/asset_detail.html:61
#: assets/templates/assets/asset_list.html:87
#: assets/templates/assets/asset_list.html:92
#: assets/templates/assets/domain_gateway_list.html:57
#: assets/templates/assets/system_user_asset.html:50
#: assets/templates/assets/user_asset_list.html:46 common/forms.py:144
#: assets/templates/assets/user_asset_list.html:46
#: assets/templates/assets/user_asset_list.html:182 common/forms.py:144
#: perms/templates/perms/asset_permission_asset.html:55
#: users/templates/users/login_log_list.html:52
#: users/templates/users/user_granted_asset.html:45
......@@ -227,130 +226,135 @@ msgstr "如果选择手动登录模式,用户名和密码则不需要填写"
msgid "IP"
msgstr "IP"
#: assets/models/asset.py:77 assets/templates/assets/_asset_list_modal.html:45
#: assets/models/asset.py:71 assets/templates/assets/_asset_list_modal.html:45
#: assets/templates/assets/admin_user_assets.html:51
#: assets/templates/assets/asset_detail.html:57
#: assets/templates/assets/asset_list.html:86
#: assets/templates/assets/asset_list.html:91
#: assets/templates/assets/system_user_asset.html:49
#: assets/templates/assets/user_asset_list.html:45 common/forms.py:143
#: assets/templates/assets/user_asset_list.html:45
#: assets/templates/assets/user_asset_list.html:181 common/forms.py:143
#: perms/templates/perms/asset_permission_asset.html:54
#: users/templates/users/user_granted_asset.html:44
#: users/templates/users/user_group_granted_asset.html:44
msgid "Hostname"
msgstr "主机名"
#: assets/models/asset.py:80 assets/models/domain.py:45
#: assets/models/user.py:115
#: assets/models/asset.py:72 assets/models/domain.py:46
#: assets/models/user.py:116
#: assets/templates/assets/domain_gateway_list.html:59
#: assets/templates/assets/system_user_detail.html:70
#: assets/templates/assets/system_user_list.html:28
#: assets/templates/assets/user_asset_list.html:184
#: terminal/templates/terminal/session_list.html:75
msgid "Protocol"
msgstr "协议"
#: assets/models/asset.py:83 assets/templates/assets/asset_detail.html:97
#: assets/models/asset.py:74 assets/templates/assets/asset_detail.html:97
#: assets/templates/assets/user_asset_list.html:185
msgid "Platform"
msgstr "系统平台"
#: assets/models/asset.py:90 assets/models/domain.py:48
#: assets/models/asset.py:81 assets/models/domain.py:49
#: assets/models/label.py:20 assets/templates/assets/asset_detail.html:105
#: assets/templates/assets/user_asset_list.html:189
msgid "Is active"
msgstr "激活"
#: assets/models/asset.py:99 assets/templates/assets/asset_detail.html:65
#: assets/models/asset.py:88 assets/templates/assets/asset_detail.html:65
msgid "Public IP"
msgstr "公网IP"
#: assets/models/asset.py:101 assets/templates/assets/asset_detail.html:113
#: assets/models/asset.py:89 assets/templates/assets/asset_detail.html:113
msgid "Asset number"
msgstr "资产编号"
#: assets/models/asset.py:105 assets/templates/assets/asset_detail.html:77
#: assets/models/asset.py:93 assets/templates/assets/asset_detail.html:77
msgid "Vendor"
msgstr "制造商"
#: assets/models/asset.py:107 assets/templates/assets/asset_detail.html:81
#: assets/models/asset.py:95 assets/templates/assets/asset_detail.html:81
msgid "Model"
msgstr "型号"
#: assets/models/asset.py:109 assets/templates/assets/asset_detail.html:109
#: assets/models/asset.py:97 assets/templates/assets/asset_detail.html:109
msgid "Serial number"
msgstr "序列号"
#: assets/models/asset.py:112
#: assets/models/asset.py:100
msgid "CPU model"
msgstr "CPU型号"
#: assets/models/asset.py:113
#: assets/models/asset.py:101
msgid "CPU count"
msgstr "CPU数量"
#: assets/models/asset.py:114
#: assets/models/asset.py:102
msgid "CPU cores"
msgstr "CPU核数"
#: assets/models/asset.py:116 assets/templates/assets/asset_detail.html:89
#: assets/models/asset.py:104 assets/templates/assets/asset_detail.html:89
msgid "Memory"
msgstr "内存"
#: assets/models/asset.py:118
#: assets/models/asset.py:106
msgid "Disk total"
msgstr "硬盘大小"
#: assets/models/asset.py:120
#: assets/models/asset.py:108
msgid "Disk info"
msgstr "硬盘信息"
#: assets/models/asset.py:123 assets/templates/assets/asset_detail.html:101
#: assets/models/asset.py:111 assets/templates/assets/asset_detail.html:101
#: assets/templates/assets/user_asset_list.html:186
msgid "OS"
msgstr "操作系统"
#: assets/models/asset.py:125
#: assets/models/asset.py:113
msgid "OS version"
msgstr "系统版本"
#: assets/models/asset.py:127
#: assets/models/asset.py:115
msgid "OS arch"
msgstr "系统架构"
#: assets/models/asset.py:129
#: assets/models/asset.py:117
msgid "Hostname raw"
msgstr "主机名原始"
#: assets/models/asset.py:133 assets/templates/assets/asset_create.html:34
#: assets/models/asset.py:121 assets/templates/assets/asset_create.html:34
#: assets/templates/assets/asset_detail.html:220
#: assets/templates/assets/asset_update.html:39 templates/_nav.html:27
msgid "Labels"
msgstr "标签管理"
#: assets/models/asset.py:135 assets/models/base.py:29
#: assets/models/asset.py:123 assets/models/base.py:30
#: assets/models/cluster.py:28 assets/models/group.py:21
#: assets/templates/assets/admin_user_detail.html:68
#: assets/templates/assets/asset_detail.html:117
#: assets/templates/assets/domain_detail.html:72
#: assets/templates/assets/system_user_detail.html:100
#: ops/templates/ops/adhoc_detail.html:86 perms/models.py:38 perms/models.py:81
#: perms/templates/perms/asset_permission_detail.html:98
#: users/models/user.py:90 users/templates/users/user_detail.html:111
#: ops/templates/ops/adhoc_detail.html:86 orgs/models.py:13 perms/models.py:37
#: perms/models.py:83 perms/templates/perms/asset_permission_detail.html:98
#: users/models/user.py:92 users/templates/users/user_detail.html:111
msgid "Created by"
msgstr "创建者"
#: assets/models/asset.py:138 assets/models/cluster.py:26
#: assets/models/domain.py:20 assets/models/group.py:22
#: assets/models/asset.py:126 assets/models/cluster.py:26
#: assets/models/domain.py:21 assets/models/group.py:22
#: assets/models/label.py:23 assets/templates/assets/admin_user_detail.html:64
#: assets/templates/assets/domain_detail.html:68
#: assets/templates/assets/system_user_detail.html:96
#: ops/templates/ops/adhoc_detail.html:90 ops/templates/ops/task_detail.html:63
#: perms/models.py:39 perms/models.py:82
#: orgs/models.py:14 perms/models.py:38 perms/models.py:84
#: perms/templates/perms/asset_permission_detail.html:94
#: terminal/templates/terminal/terminal_detail.html:59 users/models/group.py:15
#: terminal/templates/terminal/terminal_detail.html:59 users/models/group.py:17
#: users/templates/users/user_group_detail.html:63
msgid "Date created"
msgstr "创建日期"
#: assets/models/asset.py:140 assets/models/base.py:26
#: assets/models/cluster.py:29 assets/models/domain.py:18
#: assets/models/domain.py:47 assets/models/group.py:23
#: assets/models/asset.py:128 assets/models/base.py:27
#: assets/models/cluster.py:29 assets/models/domain.py:19
#: assets/models/domain.py:48 assets/models/group.py:23
#: assets/models/label.py:21 assets/templates/assets/admin_user_detail.html:72
#: assets/templates/assets/admin_user_list.html:29
#: assets/templates/assets/asset_detail.html:125
......@@ -358,22 +362,24 @@ msgstr "创建日期"
#: assets/templates/assets/domain_gateway_list.html:61
#: assets/templates/assets/domain_list.html:25
#: assets/templates/assets/system_user_detail.html:104
#: assets/templates/assets/system_user_list.html:34 common/models.py:30
#: ops/models/adhoc.py:42 perms/models.py:40 perms/models.py:83
#: perms/templates/perms/asset_permission_detail.html:102 terminal/models.py:26
#: terminal/templates/terminal/terminal_detail.html:63 users/models/group.py:13
#: users/models/user.py:82 users/templates/users/user_detail.html:123
#: assets/templates/assets/system_user_list.html:34
#: assets/templates/assets/user_asset_list.html:190 common/models.py:30
#: ops/models/adhoc.py:42 orgs/models.py:15 perms/models.py:39
#: perms/models.py:85 perms/templates/perms/asset_permission_detail.html:102
#: terminal/models.py:27 terminal/templates/terminal/terminal_detail.html:63
#: users/models/group.py:15 users/models/user.py:84
#: users/templates/users/user_detail.html:123
#: users/templates/users/user_group_detail.html:67
#: users/templates/users/user_group_list.html:14
#: users/templates/users/user_profile.html:130
msgid "Comment"
msgstr "备注"
#: assets/models/base.py:24
#: assets/models/base.py:25
msgid "SSH private key"
msgstr "ssh密钥"
#: assets/models/base.py:25
#: assets/models/base.py:26
msgid "SSH public key"
msgstr "ssh公钥"
......@@ -385,7 +391,7 @@ msgstr "带宽"
msgid "Contact"
msgstr "联系人"
#: assets/models/cluster.py:22 users/models/user.py:68
#: assets/models/cluster.py:22 users/models/user.py:70
#: users/templates/users/user_detail.html:76
msgid "Phone"
msgstr "手机"
......@@ -411,7 +417,7 @@ msgid "Default"
msgstr "默认"
#: assets/models/cluster.py:36 assets/models/label.py:13
#: users/models/user.py:345
#: users/models/user.py:360
msgid "System"
msgstr "系统"
......@@ -431,25 +437,25 @@ msgstr "资产组"
msgid "Default asset group"
msgstr "默认资产组"
#: assets/models/label.py:14 audits/models.py:9
#: assets/models/label.py:14 audits/models.py:11
#: audits/templates/audits/ftp_log_list.html:33
#: audits/templates/audits/ftp_log_list.html:71 perms/forms.py:14
#: perms/forms.py:31 perms/models.py:30
#: audits/templates/audits/ftp_log_list.html:71 perms/forms.py:16
#: perms/forms.py:41 perms/models.py:29
#: perms/templates/perms/asset_permission_create_update.html:36
#: perms/templates/perms/asset_permission_list.html:54
#: perms/templates/perms/asset_permission_list.html:133
#: terminal/backends/command/models.py:10 terminal/models.py:126
#: terminal/backends/command/models.py:12 terminal/models.py:127
#: terminal/templates/terminal/command_list.html:32
#: terminal/templates/terminal/command_list.html:72
#: terminal/templates/terminal/session_list.html:33
#: terminal/templates/terminal/session_list.html:71 users/forms.py:282
#: users/models/user.py:31 users/models/user.py:333
#: terminal/templates/terminal/session_list.html:71 users/forms.py:312
#: users/models/user.py:33 users/models/user.py:348
#: users/templates/users/user_group_detail.html:78
#: users/templates/users/user_group_list.html:13 users/views/user.py:367
#: users/templates/users/user_group_list.html:13 users/views/user.py:380
msgid "User"
msgstr "用户"
#: assets/models/label.py:18 assets/models/node.py:16
#: assets/models/label.py:18 assets/models/node.py:19
#: assets/templates/assets/label_list.html:15 common/models.py:27
msgid "Value"
msgstr "值"
......@@ -458,19 +464,19 @@ msgstr "值"
msgid "Category"
msgstr "分类"
#: assets/models/node.py:15
#: assets/models/node.py:18
msgid "Key"
msgstr ""
#: assets/models/user.py:108
#: assets/models/user.py:109
msgid "Automatic login"
msgstr "自动登录"
#: assets/models/user.py:109
#: assets/models/user.py:110
msgid "Manually login"
msgstr "手动登录"
#: assets/models/user.py:113
#: assets/models/user.py:114
#: assets/templates/assets/_asset_group_bulk_update_modal.html:11
#: assets/templates/assets/system_user_asset.html:21
#: assets/views/admin_user.py:29 assets/views/admin_user.py:47
......@@ -488,37 +494,37 @@ msgstr "手动登录"
msgid "Assets"
msgstr "资产管理"
#: assets/models/user.py:114
#: assets/models/user.py:115
msgid "Priority"
msgstr "优先级"
#: assets/models/user.py:116 assets/templates/assets/_system_user.html:59
#: assets/models/user.py:117 assets/templates/assets/_system_user.html:59
#: assets/templates/assets/system_user_detail.html:122
#: assets/templates/assets/system_user_update.html:10
msgid "Auto push"
msgstr "自动推送"
#: assets/models/user.py:117 assets/templates/assets/system_user_detail.html:74
#: assets/models/user.py:118 assets/templates/assets/system_user_detail.html:74
msgid "Sudo"
msgstr "Sudo"
#: assets/models/user.py:118 assets/templates/assets/system_user_detail.html:79
#: assets/models/user.py:119 assets/templates/assets/system_user_detail.html:79
msgid "Shell"
msgstr "Shell"
#: assets/models/user.py:119 assets/templates/assets/system_user_detail.html:66
#: assets/models/user.py:120 assets/templates/assets/system_user_detail.html:66
#: assets/templates/assets/system_user_list.html:29
msgid "Login mode"
msgstr "登录模式"
#: assets/models/user.py:159 audits/models.py:12
#: audits/templates/audits/ftp_log_list.html:49
#: audits/templates/audits/ftp_log_list.html:73 perms/forms.py:43
#: perms/models.py:34 perms/models.py:78
#: assets/models/user.py:181 assets/templates/assets/user_asset_list.html:187
#: audits/models.py:14 audits/templates/audits/ftp_log_list.html:49
#: audits/templates/audits/ftp_log_list.html:73 perms/forms.py:53
#: perms/models.py:33 perms/models.py:80
#: perms/templates/perms/asset_permission_detail.html:140
#: perms/templates/perms/asset_permission_list.html:58
#: perms/templates/perms/asset_permission_list.html:145 templates/_nav.html:26
#: terminal/backends/command/models.py:12 terminal/models.py:128
#: terminal/backends/command/models.py:14 terminal/models.py:129
#: terminal/templates/terminal/command_list.html:48
#: terminal/templates/terminal/command_list.html:74
#: terminal/templates/terminal/session_list.html:49
......@@ -674,7 +680,7 @@ msgstr "重置"
#: assets/templates/assets/admin_user_create_update.html:46
#: assets/templates/assets/asset_bulk_update.html:24
#: assets/templates/assets/asset_create.html:68
#: assets/templates/assets/asset_list.html:108
#: assets/templates/assets/asset_list.html:113
#: assets/templates/assets/asset_update.html:72
#: assets/templates/assets/domain_create_update.html:17
#: assets/templates/assets/gateway_create_update.html:59
......@@ -698,6 +704,16 @@ msgstr "重置"
msgid "Submit"
msgstr "提交"
#: assets/templates/assets/_user_asset_detail_modal.html:7
#: assets/templates/assets/asset_detail.html:20 assets/views/asset.py:198
msgid "Asset detail"
msgstr "资产详情"
#: assets/templates/assets/_user_asset_detail_modal.html:20
#: templates/_modal.html:21
msgid "Close"
msgstr "关闭"
#: assets/templates/assets/admin_user_assets.html:18
#: assets/templates/assets/admin_user_detail.html:18
#: assets/templates/assets/domain_detail.html:18
......@@ -753,7 +769,7 @@ msgstr "测试"
#: assets/templates/assets/admin_user_detail.html:24
#: assets/templates/assets/admin_user_list.html:85
#: assets/templates/assets/asset_detail.html:24
#: assets/templates/assets/asset_list.html:175
#: assets/templates/assets/asset_list.html:180
#: assets/templates/assets/domain_detail.html:24
#: assets/templates/assets/domain_detail.html:103
#: assets/templates/assets/domain_gateway_list.html:85
......@@ -777,7 +793,7 @@ msgstr "更新"
#: assets/templates/assets/admin_user_detail.html:28
#: assets/templates/assets/admin_user_list.html:86
#: assets/templates/assets/asset_detail.html:28
#: assets/templates/assets/asset_list.html:176
#: assets/templates/assets/asset_list.html:181
#: assets/templates/assets/domain_detail.html:28
#: assets/templates/assets/domain_detail.html:104
#: assets/templates/assets/domain_gateway_list.html:86
......@@ -808,7 +824,7 @@ msgstr "选择节点"
#: assets/templates/assets/admin_user_detail.html:100
#: assets/templates/assets/asset_detail.html:200
#: assets/templates/assets/asset_list.html:638
#: assets/templates/assets/asset_list.html:646
#: assets/templates/assets/system_user_detail.html:195
#: assets/templates/assets/system_user_list.html:139 templates/_modal.html:22
#: terminal/templates/terminal/session_detail.html:108
......@@ -841,7 +857,7 @@ msgid "Ratio"
msgstr "比例"
#: assets/templates/assets/admin_user_list.html:30
#: assets/templates/assets/asset_list.html:91
#: assets/templates/assets/asset_list.html:96
#: assets/templates/assets/domain_gateway_list.html:62
#: assets/templates/assets/domain_list.html:26
#: assets/templates/assets/label_list.html:17
......@@ -856,10 +872,6 @@ msgstr "比例"
msgid "Action"
msgstr "动作"
#: assets/templates/assets/asset_detail.html:20 assets/views/asset.py:198
msgid "Asset detail"
msgstr "资产详情"
#: assets/templates/assets/asset_detail.html:85
msgid "CPU"
msgstr "CPU"
......@@ -882,9 +894,9 @@ msgid "Quick modify"
msgstr "快速修改"
#: assets/templates/assets/asset_detail.html:143
#: assets/templates/assets/asset_list.html:89
#: assets/templates/assets/user_asset_list.html:47 perms/models.py:35
#: perms/models.py:79
#: assets/templates/assets/asset_list.html:94
#: assets/templates/assets/user_asset_list.html:47 perms/models.py:34
#: perms/models.py:81
#: perms/templates/perms/asset_permission_create_update.html:47
#: perms/templates/perms/asset_permission_detail.html:120
#: perms/templates/perms/asset_permission_list.html:59
......@@ -912,97 +924,97 @@ msgstr "刷新"
msgid "Update successfully!"
msgstr "更新成功"
#: assets/templates/assets/asset_list.html:63 assets/views/asset.py:97
#: assets/templates/assets/asset_list.html:68 assets/views/asset.py:97
msgid "Create asset"
msgstr "创建资产"
#: assets/templates/assets/asset_list.html:67
#: assets/templates/assets/asset_list.html:72
#: users/templates/users/user_list.html:7
msgid "Import"
msgstr "导入"
#: assets/templates/assets/asset_list.html:70
#: assets/templates/assets/asset_list.html:75
#: users/templates/users/user_list.html:10
msgid "Export"
msgstr "导出"
#: assets/templates/assets/asset_list.html:88
#: assets/templates/assets/asset_list.html:93
msgid "Hardware"
msgstr "硬件"
#: assets/templates/assets/asset_list.html:100
#: assets/templates/assets/asset_list.html:105
#: users/templates/users/user_list.html:38
msgid "Delete selected"
msgstr "批量删除"
#: assets/templates/assets/asset_list.html:101
#: assets/templates/assets/asset_list.html:106
#: users/templates/users/user_list.html:39
msgid "Update selected"
msgstr "批量更新"
#: assets/templates/assets/asset_list.html:102
#: assets/templates/assets/asset_list.html:107
msgid "Remove from this node"
msgstr "从节点移除"
#: assets/templates/assets/asset_list.html:103
#: assets/templates/assets/asset_list.html:108
#: users/templates/users/user_list.html:40
msgid "Deactive selected"
msgstr "禁用所选"
#: assets/templates/assets/asset_list.html:104
#: assets/templates/assets/asset_list.html:109
#: users/templates/users/user_list.html:41
msgid "Active selected"
msgstr "激活所选"
#: assets/templates/assets/asset_list.html:121
#: assets/templates/assets/asset_list.html:126
msgid "Add node"
msgstr "新建节点"
#: assets/templates/assets/asset_list.html:122
#: assets/templates/assets/asset_list.html:127
msgid "Rename node"
msgstr "重命名节点"
#: assets/templates/assets/asset_list.html:123
#: assets/templates/assets/asset_list.html:128
msgid "Delete node"
msgstr "删除节点"
#: assets/templates/assets/asset_list.html:125
#: assets/templates/assets/asset_list.html:130
msgid "Add assets to node"
msgstr "添加资产到节点"
#: assets/templates/assets/asset_list.html:126
#: assets/templates/assets/asset_list.html:131
msgid "Move assets to node"
msgstr "移动资产到节点"
#: assets/templates/assets/asset_list.html:128
#: assets/templates/assets/asset_list.html:133
msgid "Refresh node hardware info"
msgstr "更新节点资产硬件信息"
#: assets/templates/assets/asset_list.html:129
#: assets/templates/assets/asset_list.html:134
msgid "Test node connective"
msgstr "测试节点资产可连接性"
#: assets/templates/assets/asset_list.html:131
#: assets/templates/assets/asset_list.html:136
msgid "Display only current node assets"
msgstr "仅显示当前节点资产"
#: assets/templates/assets/asset_list.html:132
#: assets/templates/assets/asset_list.html:137
msgid "Displays all child node assets"
msgstr "显示所有子节点资产"
#: assets/templates/assets/asset_list.html:218
#: assets/templates/assets/asset_list.html:223
msgid "Create node failed"
msgstr "创建节点失败"
#: assets/templates/assets/asset_list.html:230
#: assets/templates/assets/asset_list.html:235
msgid "Have child node, cancel"
msgstr "存在子节点,不能删除"
#: assets/templates/assets/asset_list.html:232
#: assets/templates/assets/asset_list.html:237
msgid "Have assets, cancel"
msgstr "存在资产,不能删除"
#: assets/templates/assets/asset_list.html:633
#: assets/templates/assets/asset_list.html:641
#: assets/templates/assets/system_user_list.html:134
#: users/templates/users/user_detail.html:369
#: users/templates/users/user_detail.html:394
......@@ -1012,20 +1024,20 @@ msgstr "存在资产,不能删除"
msgid "Are you sure?"
msgstr "你确认吗?"
#: assets/templates/assets/asset_list.html:634
#: assets/templates/assets/asset_list.html:642
msgid "This will delete the selected assets !!!"
msgstr "删除选择资产"
#: assets/templates/assets/asset_list.html:642
#: assets/templates/assets/asset_list.html:650
msgid "Asset Deleted."
msgstr "已被删除"
#: assets/templates/assets/asset_list.html:643
#: assets/templates/assets/asset_list.html:648
#: assets/templates/assets/asset_list.html:651
#: assets/templates/assets/asset_list.html:656
msgid "Asset Delete"
msgstr "删除"
#: assets/templates/assets/asset_list.html:647
#: assets/templates/assets/asset_list.html:655
msgid "Asset Deleting failed."
msgstr "删除失败"
......@@ -1219,22 +1231,22 @@ msgstr "资产管理"
msgid "System user asset"
msgstr "系统用户集群资产"
#: audits/models.py:10 audits/templates/audits/ftp_log_list.html:74
#: terminal/models.py:130 terminal/templates/terminal/session_list.html:74
#: audits/models.py:12 audits/templates/audits/ftp_log_list.html:74
#: terminal/models.py:131 terminal/templates/terminal/session_list.html:74
#: terminal/templates/terminal/terminal_detail.html:47
msgid "Remote addr"
msgstr "远端地址"
#: audits/models.py:13 audits/templates/audits/ftp_log_list.html:75
#: audits/models.py:15 audits/templates/audits/ftp_log_list.html:75
msgid "Operate"
msgstr "操作"
#: audits/models.py:14 audits/templates/audits/ftp_log_list.html:56
#: audits/models.py:16 audits/templates/audits/ftp_log_list.html:56
#: audits/templates/audits/ftp_log_list.html:76
msgid "Filename"
msgstr "文件名"
#: audits/models.py:15 audits/templates/audits/ftp_log_list.html:77
#: audits/models.py:17 audits/templates/audits/ftp_log_list.html:77
#: ops/templates/ops/task_list.html:39 users/models/authentication.py:66
#: users/templates/users/user_detail.html:443
msgid "Success"
......@@ -1243,17 +1255,17 @@ msgstr "成功"
#: audits/templates/audits/ftp_log_list.html:78
#: ops/templates/ops/adhoc_history.html:52
#: ops/templates/ops/adhoc_history_detail.html:61
#: ops/templates/ops/task_history.html:58 perms/models.py:36
#: perms/templates/perms/asset_permission_detail.html:86 terminal/models.py:137
#: ops/templates/ops/task_history.html:58 perms/models.py:35
#: perms/templates/perms/asset_permission_detail.html:86 terminal/models.py:138
#: terminal/templates/terminal/session_list.html:78
msgid "Date start"
msgstr "开始日期"
#: audits/views.py:50 templates/_nav.html:64
#: audits/views.py:51 templates/_nav.html:68
msgid "Audits"
msgstr "日志审计"
#: audits/views.py:51 templates/_nav.html:67
#: audits/views.py:52 templates/_nav.html:71
msgid "FTP log"
msgstr "FTP日志"
......@@ -1401,7 +1413,7 @@ msgid "Public key auth"
msgstr "密钥认证"
#: common/forms.py:159 common/templates/common/terminal_setting.html:68
#: terminal/forms.py:30 terminal/models.py:20
#: terminal/forms.py:30 terminal/models.py:21
msgid "Command storage"
msgstr "命令存储"
......@@ -1412,7 +1424,7 @@ msgid ""
msgstr "设置终端命令存储,default是默认用的存储方式"
#: common/forms.py:165 common/templates/common/terminal_setting.html:86
#: terminal/forms.py:35 terminal/models.py:21
#: terminal/forms.py:35 terminal/models.py:22
msgid "Replay storage"
msgstr "录像存储"
......@@ -1491,11 +1503,11 @@ msgid ""
"characters"
msgstr "开启后,用户密码修改、重置必须包含特殊字符"
#: common/mixins.py:29
#: common/mixins.py:28
msgid "is discard"
msgstr ""
#: common/mixins.py:30
#: common/mixins.py:29
msgid "discard time"
msgstr ""
......@@ -1509,7 +1521,7 @@ msgstr "启用"
#: common/templates/common/ldap_setting.html:15
#: common/templates/common/security_setting.html:15
#: common/templates/common/terminal_setting.html:16
#: common/templates/common/terminal_setting.html:46 common/views.py:22
#: common/templates/common/terminal_setting.html:46 common/views.py:20
msgid "Basic setting"
msgstr "基本设置"
......@@ -1517,7 +1529,7 @@ msgstr "基本设置"
#: common/templates/common/email_setting.html:18
#: common/templates/common/ldap_setting.html:18
#: common/templates/common/security_setting.html:18
#: common/templates/common/terminal_setting.html:20 common/views.py:48
#: common/templates/common/terminal_setting.html:20 common/views.py:46
msgid "Email setting"
msgstr "邮件设置"
......@@ -1525,7 +1537,7 @@ msgstr "邮件设置"
#: common/templates/common/email_setting.html:21
#: common/templates/common/ldap_setting.html:21
#: common/templates/common/security_setting.html:21
#: common/templates/common/terminal_setting.html:24 common/views.py:74
#: common/templates/common/terminal_setting.html:24 common/views.py:72
msgid "LDAP setting"
msgstr "LDAP设置"
......@@ -1533,7 +1545,7 @@ msgstr "LDAP设置"
#: common/templates/common/email_setting.html:24
#: common/templates/common/ldap_setting.html:24
#: common/templates/common/security_setting.html:24
#: common/templates/common/terminal_setting.html:28 common/views.py:104
#: common/templates/common/terminal_setting.html:28 common/views.py:102
msgid "Terminal setting"
msgstr "终端设置"
......@@ -1541,7 +1553,7 @@ msgstr "终端设置"
#: common/templates/common/email_setting.html:27
#: common/templates/common/ldap_setting.html:27
#: common/templates/common/security_setting.html:27
#: common/templates/common/terminal_setting.html:31 common/views.py:132
#: common/templates/common/terminal_setting.html:31 common/views.py:130
msgid "Security setting"
msgstr "安全设置"
......@@ -1563,17 +1575,17 @@ msgstr "类型"
msgid "Special char not allowed"
msgstr "不能包含特殊字符"
#: common/views.py:21 common/views.py:47 common/views.py:73 common/views.py:103
#: common/views.py:131 templates/_nav.html:81
#: common/views.py:19 common/views.py:45 common/views.py:71 common/views.py:101
#: common/views.py:129 templates/_nav.html:86
msgid "Settings"
msgstr "系统设置"
#: common/views.py:32 common/views.py:58 common/views.py:86 common/views.py:116
#: common/views.py:142
#: common/views.py:30 common/views.py:56 common/views.py:84 common/views.py:114
#: common/views.py:140
msgid "Update setting successfully, please restart program"
msgstr "更新设置成功, 请手动重启程序"
#: ops/api.py:79
#: ops/api.py:81
msgid "Waiting ..."
msgstr ""
......@@ -1629,36 +1641,36 @@ msgstr "Become"
msgid "Create by"
msgstr "创建者"
#: ops/models/adhoc.py:323
#: ops/models/adhoc.py:324
msgid "Start time"
msgstr "开始时间"
#: ops/models/adhoc.py:324
#: ops/models/adhoc.py:325
msgid "End time"
msgstr "完成时间"
#: ops/models/adhoc.py:325 ops/templates/ops/adhoc_history.html:57
#: ops/models/adhoc.py:326 ops/templates/ops/adhoc_history.html:57
#: ops/templates/ops/task_history.html:63 ops/templates/ops/task_list.html:41
msgid "Time"
msgstr "时间"
#: ops/models/adhoc.py:326 ops/templates/ops/adhoc_detail.html:106
#: ops/models/adhoc.py:327 ops/templates/ops/adhoc_detail.html:106
#: ops/templates/ops/adhoc_history.html:55
#: ops/templates/ops/adhoc_history_detail.html:69
#: ops/templates/ops/task_detail.html:83 ops/templates/ops/task_history.html:61
msgid "Is finished"
msgstr "是否完成"
#: ops/models/adhoc.py:327 ops/templates/ops/adhoc_history.html:56
#: ops/models/adhoc.py:328 ops/templates/ops/adhoc_history.html:56
#: ops/templates/ops/task_history.html:62
msgid "Is success"
msgstr "是否成功"
#: ops/models/adhoc.py:328
#: ops/models/adhoc.py:329
msgid "Adhoc raw result"
msgstr "结果"
#: ops/models/adhoc.py:329
#: ops/models/adhoc.py:330
msgid "Adhoc result summary"
msgstr "汇总"
......@@ -1738,7 +1750,7 @@ msgid "Run history detail"
msgstr "执行历史详情"
#: ops/templates/ops/adhoc_history_detail.html:22
#: terminal/backends/command/models.py:14
#: terminal/backends/command/models.py:16
msgid "Output"
msgstr "输出"
......@@ -1808,6 +1820,7 @@ msgstr "内容"
#: ops/templates/ops/task_list.html:21 ops/templates/ops/task_list.html:26
#: templates/_base_list.html:43 templates/_header_bar.html:8
#: terminal/templates/terminal/command_list.html:60
#: terminal/templates/terminal/session_list.html:61
#: users/templates/users/login_log_list.html:35
#: users/templates/users/login_log_list.html:40
msgid "Search"
......@@ -1835,7 +1848,7 @@ msgstr "任务开始: "
msgid "Ops"
msgstr "作业中心"
#: ops/views.py:37 templates/_nav.html:59
#: ops/views.py:37 templates/_nav.html:62
msgid "Task list"
msgstr "任务列表"
......@@ -1843,37 +1856,37 @@ msgstr "任务列表"
msgid "Task run history"
msgstr "执行历史"
#: perms/forms.py:18 users/forms.py:239 users/forms.py:244 users/forms.py:256
#: users/forms.py:286
#: perms/forms.py:20 users/forms.py:265 users/forms.py:270 users/forms.py:282
#: users/forms.py:316
msgid "Select users"
msgstr "选择用户"
#: perms/forms.py:34 perms/models.py:31 perms/models.py:77
#: perms/forms.py:44 perms/models.py:30 perms/models.py:79
#: perms/templates/perms/asset_permission_list.html:55
#: perms/templates/perms/asset_permission_list.html:136 templates/_nav.html:14
#: users/models/group.py:23 users/models/user.py:55
#: users/models/group.py:26 users/models/user.py:57
#: users/templates/users/_select_user_modal.html:16
#: users/templates/users/user_detail.html:200
#: users/templates/users/user_list.html:26
msgid "User group"
msgstr "用户组"
#: perms/forms.py:56
#: perms/forms.py:66
msgid "User or group at least one required"
msgstr ""
#: perms/forms.py:65
#: perms/forms.py:75
msgid "Asset or group at least one required"
msgstr ""
#: perms/models.py:37 perms/models.py:80
#: perms/models.py:36 perms/models.py:82
#: perms/templates/perms/asset_permission_detail.html:90
#: users/models/user.py:87 users/templates/users/user_detail.html:107
#: users/models/user.py:89 users/templates/users/user_detail.html:107
#: users/templates/users/user_profile.html:112
msgid "Date expired"
msgstr "失效日期"
#: perms/models.py:90 templates/_nav.html:34
#: perms/models.py:92 templates/_nav.html:34
msgid "Asset permission"
msgstr "资产授权"
......@@ -1963,28 +1976,28 @@ msgstr "添加用户组"
msgid "Select user groups"
msgstr "选择用户组"
#: perms/views.py:25 perms/views.py:55 perms/views.py:70 perms/views.py:85
#: perms/views.py:120 perms/views.py:151 templates/_nav.html:31
#: perms/views.py:23 perms/views.py:53 perms/views.py:68 perms/views.py:83
#: perms/views.py:118 perms/views.py:150 templates/_nav.html:31
msgid "Perms"
msgstr "权限管理"
#: perms/views.py:26
#: perms/views.py:24
msgid "Asset permission list"
msgstr "资产授权列表"
#: perms/views.py:56
#: perms/views.py:54
msgid "Create asset permission"
msgstr "创建权限规则"
#: perms/views.py:71 perms/views.py:86
#: perms/views.py:69 perms/views.py:84
msgid "Update asset permission"
msgstr "更新资产授权"
#: perms/views.py:121
#: perms/views.py:119
msgid "Asset permission user list"
msgstr "资产授权用户列表"
#: perms/views.py:152
#: perms/views.py:151
msgid "Asset permission asset list"
msgstr "资产授权资产列表"
......@@ -1996,14 +2009,14 @@ msgstr "商业支持"
msgid "Docs"
msgstr "文档"
#: templates/_header_bar.html:37 templates/_nav_user.html:9 users/forms.py:122
#: templates/_header_bar.html:37 templates/_nav_user.html:9 users/forms.py:148
#: users/templates/users/_user.html:39
#: users/templates/users/first_login.html:39
#: users/templates/users/user_password_update.html:39
#: users/templates/users/user_profile.html:17
#: users/templates/users/user_profile_update.html:37
#: users/templates/users/user_profile_update.html:57
#: users/templates/users/user_pubkey_update.html:37 users/views/user.py:349
#: users/templates/users/user_pubkey_update.html:37 users/views/user.py:362
msgid "Profile"
msgstr "个人信息"
......@@ -2054,19 +2067,15 @@ msgstr ""
"\"%(user_pubkey_update)s\"> 链接 </a> 更新\n"
" "
#: templates/_modal.html:21
msgid "Close"
msgstr "关闭"
#: templates/_nav.html:10 users/views/group.py:28 users/views/group.py:44
#: users/views/group.py:62 users/views/group.py:79 users/views/group.py:95
#: users/views/login.py:332 users/views/login.py:390 users/views/user.py:67
#: users/views/user.py:82 users/views/user.py:104 users/views/user.py:180
#: users/views/user.py:336 users/views/user.py:386 users/views/user.py:421
#: templates/_nav.html:10 users/views/group.py:27 users/views/group.py:43
#: users/views/group.py:61 users/views/group.py:78 users/views/group.py:94
#: users/views/login.py:333 users/views/login.py:397 users/views/user.py:68
#: users/views/user.py:83 users/views/user.py:111 users/views/user.py:193
#: users/views/user.py:349 users/views/user.py:399 users/views/user.py:434
msgid "Users"
msgstr "用户管理"
#: templates/_nav.html:13 users/views/user.py:68
#: templates/_nav.html:13 users/views/user.py:69
msgid "User list"
msgstr "用户列表"
......@@ -2094,14 +2103,14 @@ msgstr "命令记录"
msgid "Web terminal"
msgstr "Web终端"
#: templates/_nav.html:51 terminal/views/command.py:49
#: templates/_nav.html:52 terminal/views/command.py:50
#: terminal/views/session.py:75 terminal/views/session.py:93
#: terminal/views/session.py:115 terminal/views/terminal.py:31
#: terminal/views/terminal.py:46 terminal/views/terminal.py:58
msgid "Terminal"
msgstr "终端管理"
#: templates/_nav.html:56
#: templates/_nav.html:59
msgid "Job Center"
msgstr "作业中心"
......@@ -2117,11 +2126,11 @@ msgstr "验证码"
msgid "Filters"
msgstr "过滤"
#: terminal/backends/command/models.py:13
#: terminal/backends/command/models.py:15
msgid "Input"
msgstr "输入"
#: terminal/backends/command/models.py:15
#: terminal/backends/command/models.py:17
#: terminal/templates/terminal/command_list.html:75
#: terminal/templates/terminal/terminal_list.html:33
msgid "Session"
......@@ -2140,62 +2149,62 @@ msgstr ""
"录像文件支持存储到服务器端硬盘、AWS S3、 阿里云 OSS 中,默认存储到服务器端硬"
"盘, 更多查看文档"
#: terminal/models.py:17
#: terminal/models.py:18
msgid "Remote Address"
msgstr "远端地址"
#: terminal/models.py:18
#: terminal/models.py:19
msgid "SSH Port"
msgstr "SSH端口"
#: terminal/models.py:19
#: terminal/models.py:20
msgid "HTTP Port"
msgstr "HTTP端口"
#: terminal/models.py:98
#: terminal/models.py:99
msgid "Session Online"
msgstr "在线会话"
#: terminal/models.py:99
#: terminal/models.py:100
msgid "CPU Usage"
msgstr "CPU使用"
#: terminal/models.py:100
#: terminal/models.py:101
msgid "Memory Used"
msgstr "内存使用"
#: terminal/models.py:101
#: terminal/models.py:102
msgid "Connections"
msgstr "连接数"
#: terminal/models.py:102
#: terminal/models.py:103
msgid "Threads"
msgstr "线程数"
#: terminal/models.py:103
#: terminal/models.py:104
msgid "Boot Time"
msgstr "运行时间"
#: terminal/models.py:132 terminal/templates/terminal/session_list.html:104
#: terminal/models.py:133 terminal/templates/terminal/session_list.html:104
msgid "Replay"
msgstr "回放"
#: terminal/models.py:133 terminal/templates/terminal/command_list.html:55
#: terminal/models.py:134 terminal/templates/terminal/command_list.html:55
#: terminal/templates/terminal/command_list.html:71
#: terminal/templates/terminal/session_detail.html:48
#: terminal/templates/terminal/session_list.html:77
msgid "Command"
msgstr "命令"
#: terminal/models.py:136
#: terminal/models.py:137
msgid "Date last active"
msgstr "最后活跃日期"
#: terminal/models.py:138
#: terminal/models.py:139
msgid "Date end"
msgstr "结束日期"
#: terminal/models.py:155
#: terminal/models.py:156
msgid "Args"
msgstr "参数"
......@@ -2213,7 +2222,7 @@ msgid "Session detail"
msgstr "会话详情"
#: terminal/templates/terminal/session_detail.html:28
#: terminal/views/command.py:50
#: terminal/views/command.py:51
msgid "Command list"
msgstr "命令记录列表"
......@@ -2329,7 +2338,7 @@ msgid ""
"You should use your ssh client tools connect terminal: {} <br /> <br />{}"
msgstr "你可以使用ssh客户端工具连接终端"
#: users/api.py:226 users/templates/users/login.html:50
#: users/api.py:232 users/templates/users/login.html:50
msgid "Log in frequently and try again later"
msgstr "登录频繁, 稍后重试"
......@@ -2384,11 +2393,11 @@ msgstr ""
msgid "Invalid token or cache refreshed."
msgstr ""
#: users/forms.py:39
#: users/forms.py:41
msgid "MFA code"
msgstr "MFA 验证码"
#: users/forms.py:50 users/models/user.py:59
#: users/forms.py:52 users/models/user.py:61
#: users/templates/users/_select_user_modal.html:15
#: users/templates/users/user_detail.html:87
#: users/templates/users/user_list.html:25
......@@ -2396,31 +2405,31 @@ msgstr "MFA 验证码"
msgid "Role"
msgstr "角色"
#: users/forms.py:53 users/forms.py:202
#: users/forms.py:55 users/forms.py:228
msgid "ssh public key"
msgstr "ssh公钥"
#: users/forms.py:54 users/forms.py:203
#: users/forms.py:56 users/forms.py:229
msgid "ssh-rsa AAAA..."
msgstr ""
#: users/forms.py:55
#: users/forms.py:57
msgid "Paste user id_rsa.pub here."
msgstr "复制用户公钥到这里"
#: users/forms.py:73 users/templates/users/user_detail.html:208
#: users/forms.py:76 users/templates/users/user_detail.html:208
msgid "Join user groups"
msgstr "添加到用户组"
#: users/forms.py:84 users/forms.py:217
#: users/forms.py:110 users/forms.py:243
msgid "Public key should not be the same as your old one."
msgstr "不能和原来的密钥相同"
#: users/forms.py:88 users/forms.py:221 users/serializers.py:48
#: users/forms.py:114 users/forms.py:247 users/serializers.py:48
msgid "Not a valid ssh public key"
msgstr "ssh密钥不合法"
#: users/forms.py:128
#: users/forms.py:154
msgid ""
"Tip: when enabled, you will enter the MFA binding process the next time you "
"log in. you can also directly bind in \"personal information -> quick "
......@@ -2429,17 +2438,17 @@ msgstr ""
"提示:启用之后您将会在下次登录时进入MFA绑定流程;您也可以在(个人信息->快速修"
"改->更改MFA设置)中直接绑定!"
#: users/forms.py:138
#: users/forms.py:164
msgid "* Enable MFA authentication to make the account more secure."
msgstr "* 启用MFA认证,使账号更加安全."
#: users/forms.py:143 users/models/authentication.py:75 users/models/user.py:71
#: users/forms.py:169 users/models/authentication.py:75 users/models/user.py:73
#: users/templates/users/first_login.html:45
#: users/templates/users/login_log_list.html:54
msgid "MFA"
msgstr "MFA"
#: users/forms.py:148
#: users/forms.py:174
msgid ""
"In order to protect you and your company, please keep your account, password "
"and key sensitive information properly. (for example: setting complex "
......@@ -2448,41 +2457,41 @@ msgstr ""
"为了保护您和公司的安全,请妥善保管您的账户、密码和密钥等重要敏感信息;(如:"
"设置复杂密码,启用MFA认证)"
#: users/forms.py:155 users/templates/users/first_login.html:48
#: users/forms.py:181 users/templates/users/first_login.html:48
#: users/templates/users/first_login.html:107
#: users/templates/users/first_login.html:130
msgid "Finish"
msgstr "完成"
#: users/forms.py:161
#: users/forms.py:187
msgid "Old password"
msgstr "原来密码"
#: users/forms.py:166
#: users/forms.py:192
msgid "New password"
msgstr "新密码"
#: users/forms.py:171
#: users/forms.py:197
msgid "Confirm password"
msgstr "确认密码"
#: users/forms.py:181
#: users/forms.py:207
msgid "Old password error"
msgstr "原来密码错误"
#: users/forms.py:189
#: users/forms.py:215
msgid "Password does not match"
msgstr "密码不一致"
#: users/forms.py:200
#: users/forms.py:226
msgid "Automatically configure and download the SSH key"
msgstr "自动配置并下载SSH密钥"
#: users/forms.py:204
#: users/forms.py:230
msgid "Paste your id_rsa.pub here."
msgstr "复制你的公钥到这里"
#: users/forms.py:232 users/models/user.py:79
#: users/forms.py:258 users/models/user.py:81
#: users/templates/users/first_login.html:42
#: users/templates/users/user_password_update.html:45
#: users/templates/users/user_profile.html:68
......@@ -2545,49 +2554,49 @@ msgstr "状态"
msgid "Date login"
msgstr "登录日期"
#: users/models/user.py:30 users/models/user.py:341
#: users/models/user.py:32 users/models/user.py:356
msgid "Administrator"
msgstr "管理员"
#: users/models/user.py:32
#: users/models/user.py:34
msgid "Application"
msgstr "应用程序"
#: users/models/user.py:35 users/templates/users/user_profile.html:92
#: users/models/user.py:37 users/templates/users/user_profile.html:92
#: users/templates/users/user_profile.html:163
#: users/templates/users/user_profile.html:166
msgid "Disable"
msgstr "禁用"
#: users/models/user.py:36 users/templates/users/user_profile.html:90
#: users/models/user.py:38 users/templates/users/user_profile.html:90
#: users/templates/users/user_profile.html:170
msgid "Enable"
msgstr "启用"
#: users/models/user.py:37 users/templates/users/user_profile.html:88
#: users/models/user.py:39 users/templates/users/user_profile.html:88
msgid "Force enable"
msgstr "强制启用"
#: users/models/user.py:51 users/templates/users/user_detail.html:71
#: users/models/user.py:53 users/templates/users/user_detail.html:71
#: users/templates/users/user_profile.html:59
msgid "Email"
msgstr "邮件"
#: users/models/user.py:62
#: users/models/user.py:64
msgid "Avatar"
msgstr "头像"
#: users/models/user.py:65 users/templates/users/user_detail.html:82
#: users/models/user.py:67 users/templates/users/user_detail.html:82
msgid "Wechat"
msgstr "微信"
#: users/models/user.py:94 users/templates/users/user_detail.html:103
#: users/models/user.py:96 users/templates/users/user_detail.html:103
#: users/templates/users/user_list.html:27
#: users/templates/users/user_profile.html:100
msgid "Source"
msgstr "用户来源"
#: users/models/user.py:344
#: users/models/user.py:359
msgid "Administrator is the super user of system"
msgstr "Administrator是初始的超级管理员"
......@@ -2730,7 +2739,7 @@ msgid "Setting"
msgstr "设置"
#: users/templates/users/user_create.html:4
#: users/templates/users/user_list.html:16 users/views/user.py:82
#: users/templates/users/user_list.html:16 users/views/user.py:83
msgid "Create user"
msgstr "创建用户"
......@@ -2739,7 +2748,7 @@ msgid "Reset link will be generated and sent to the user. "
msgstr "生成重置密码连接,通过邮件发送给用户"
#: users/templates/users/user_detail.html:19
#: users/templates/users/user_granted_asset.html:18 users/views/user.py:181
#: users/templates/users/user_granted_asset.html:18 users/views/user.py:194
msgid "User detail"
msgstr "用户详情"
......@@ -2833,7 +2842,7 @@ msgstr "取消"
#: users/templates/users/user_group_detail.html:22
#: users/templates/users/user_group_granted_asset.html:18
#: users/views/group.py:80
#: users/views/group.py:79
msgid "User group detail"
msgstr "用户组详情"
......@@ -2841,7 +2850,7 @@ msgstr "用户组详情"
msgid "Add user"
msgstr "添加用户"
#: users/templates/users/user_group_list.html:5 users/views/group.py:45
#: users/templates/users/user_group_list.html:5 users/views/group.py:44
msgid "Create user group"
msgstr "创建用户组"
......@@ -2883,8 +2892,8 @@ msgstr "用户删除失败"
msgid "Administrator Settings force MFA login"
msgstr "管理员设置强制使用MFA登录"
#: users/templates/users/user_profile.html:116 users/views/user.py:211
#: users/views/user.py:265
#: users/templates/users/user_profile.html:116 users/views/user.py:224
#: users/views/user.py:278
msgid "User groups"
msgstr "用户组"
......@@ -2930,10 +2939,34 @@ msgid ""
"corresponding private key."
msgstr "新的公钥已设置成功,请下载对应的私钥"
#: users/templates/users/user_update.html:4 users/views/user.py:105
#: users/templates/users/user_update.html:4 users/views/user.py:112
msgid "Update user"
msgstr "更新用户"
#: users/templates/users/user_update.html:34
msgid "Very weak"
msgstr "很弱"
#: users/templates/users/user_update.html:35
msgid "Weak"
msgstr "弱"
#: users/templates/users/user_update.html:36
msgid "Normal"
msgstr "正常"
#: users/templates/users/user_update.html:37
msgid "Medium"
msgstr "一般"
#: users/templates/users/user_update.html:38
msgid "Strong"
msgstr "强"
#: users/templates/users/user_update.html:39
msgid "Very strong"
msgstr "很强"
#: users/utils.py:41
msgid "Create account successfully"
msgstr "创建账户成功"
......@@ -3072,119 +3105,122 @@ msgstr "密码或密钥不合法"
msgid "Bit"
msgstr " 位"
#: users/views/group.py:29
#: users/views/group.py:28
msgid "User group list"
msgstr "用户组列表"
#: users/views/group.py:63
#: users/views/group.py:62
msgid "Update user group"
msgstr "更新用户组"
#: users/views/group.py:96
#: users/views/group.py:95
msgid "User group granted asset"
msgstr "用户组授权资产"
#: users/views/login.py:76
#: users/views/login.py:77
msgid "Please enable cookies and try again."
msgstr "设置你的浏览器支持cookie"
#: users/views/login.py:180 users/views/user.py:506 users/views/user.py:531
#: users/views/login.py:181 users/views/user.py:519 users/views/user.py:544
msgid "MFA code invalid"
msgstr "MFA码认证失败"
#: users/views/login.py:209
#: users/views/login.py:210
msgid "Logout success"
msgstr "退出登录成功"
#: users/views/login.py:210
#: users/views/login.py:211
msgid "Logout success, return login page"
msgstr "退出登录成功,返回到登录页面"
#: users/views/login.py:226
#: users/views/login.py:227
msgid "Email address invalid, please input again"
msgstr "邮箱地址错误,重新输入"
#: users/views/login.py:239
#: users/views/login.py:240
msgid "Send reset password message"
msgstr "发送重置密码邮件"
#: users/views/login.py:240
#: users/views/login.py:241
msgid "Send reset password mail success, login your mail box and follow it "
msgstr ""
"发送重置邮件成功, 请登录邮箱查看, 按照提示操作 (如果没收到,请等待3-5分钟)"
#: users/views/login.py:253
#: users/views/login.py:254
msgid "Reset password success"
msgstr "重置密码成功"
#: users/views/login.py:254
#: users/views/login.py:255
msgid "Reset password success, return to login page"
msgstr "重置密码成功,返回到登录页面"
#: users/views/login.py:275 users/views/login.py:288
#: users/views/login.py:276 users/views/login.py:289
msgid "Token invalid or expired"
msgstr "Token错误或失效"
#: users/views/login.py:284
#: users/views/login.py:285
msgid "Password not same"
msgstr "密码不一致"
#: users/views/login.py:294 users/views/user.py:120 users/views/user.py:404
#: users/views/login.py:295 users/views/user.py:127 users/views/user.py:417
msgid "* Your password does not meet the requirements"
msgstr "* 您的密码不符合要求"
#: users/views/login.py:332
#: users/views/login.py:333
msgid "First login"
msgstr "首次登陆"
#: users/views/login.py:391
#: users/views/login.py:398
msgid "Login log list"
msgstr "登录日志"
#: users/views/user.py:131
#: users/views/user.py:144
msgid "Bulk update user success"
msgstr "批量更新用户成功"
#: users/views/user.py:240
#: users/views/user.py:253
msgid "Invalid file."
msgstr "文件不合法"
#: users/views/user.py:337
#: users/views/user.py:350
msgid "User granted assets"
msgstr "用户授权资产"
#: users/views/user.py:368
#: users/views/user.py:381
msgid "Profile setting"
msgstr "个人信息设置"
#: users/views/user.py:387
#: users/views/user.py:400
msgid "Password update"
msgstr "密码更新"
#: users/views/user.py:422
#: users/views/user.py:435
msgid "Public key update"
msgstr "密钥更新"
#: users/views/user.py:463
#: users/views/user.py:476
msgid "Password invalid"
msgstr "用户名或密码无效"
#: users/views/user.py:557
#: users/views/user.py:570
msgid "MFA enable success"
msgstr "MFA 绑定成功"
#: users/views/user.py:558
#: users/views/user.py:571
msgid "MFA enable success, return login page"
msgstr "MFA 绑定成功,返回到登录页面"
#: users/views/user.py:560
#: users/views/user.py:573
msgid "MFA disable success"
msgstr "MFA 解绑成功"
#: users/views/user.py:561
#: users/views/user.py:574
msgid "MFA disable success, return login page"
msgstr "MFA 解绑成功,返回登录页面"
#~ msgid "* required Must set exact system platform, Windows, Linux ..."
#~ msgstr "* required 必须准确设置操作系统平台,如Windows, Linux ..."
#~ msgid "Unblock user successfully. "
#~ msgstr "解除登录限制成功"
......
......@@ -685,7 +685,7 @@ function popoverPasswordRules(password_check_rules, $el) {
}
// 初始化弹窗popover
function initPopover($container, $progress, $idPassword, $el, password_check_rules){
function initPopover($container, $progress, $idPassword, $el, password_check_rules, i18n_fallback){
options = {};
// User Interface
options.ui = {
......@@ -697,6 +697,14 @@ function initPopover($container, $progress, $idPassword, $el, password_check_rul
showProgressbar: true,
showVerdictsInsideProgressBar: true
};
options.i18n = {
fallback: i18n_fallback,
t: function (key) {
var result = '';
result = options.i18n.fallback[key];
return result === key ? '' : result;
}
};
$idPassword.pwstrength(options);
popoverPasswordRules(password_check_rules, $el);
}
......@@ -78,6 +78,30 @@ class UserCreateUpdateForm(OrgModelForm):
)
}
def __init__(self, *args, **kwargs):
self.request = kwargs.pop("request", None)
super(UserCreateUpdateForm, self).__init__(*args, **kwargs)
roles = []
# Super admin user
if self.request.user.is_superuser:
roles.append((User.ROLE_ADMIN, dict(User.ROLE_CHOICES).get(User.ROLE_ADMIN)))
roles.append((User.ROLE_USER, dict(User.ROLE_CHOICES).get(User.ROLE_USER)))
# Org admin user
else:
user = kwargs.get('instance')
# Update
if user:
role = kwargs.get('instance').role
roles.append((role, dict(User.ROLE_CHOICES).get(role)))
# Create
else:
roles.append((User.ROLE_USER, dict(User.ROLE_CHOICES).get(User.ROLE_USER)))
field = self.fields['role']
field.choices = set(roles)
def clean_public_key(self):
public_key = self.cleaned_data['public_key']
if not public_key:
......
......@@ -100,10 +100,18 @@
progress = $('#id_progress'),
password_check_rules = {{ password_check_rules|safe }},
minLength = {{ min_length }},
top = 146, left = 170;
top = 146, left = 170,
i18n_fallback = {
"veryWeak": "{% trans 'Very weak' %}",
"weak": "{% trans 'Weak' %}",
"normal": "{% trans 'Normal' %}",
"medium": "{% trans 'Medium' %}",
"strong": "{% trans 'Strong' %}",
"veryStrong": "{% trans 'Very strong' %}"
};
// 初始化popover
initPopover(container, progress, idPassword, el, password_check_rules);
initPopover(container, progress, idPassword, el, password_check_rules, i18n_fallback);
// 监听事件
idPassword.on('focus', function () {
......
......@@ -93,10 +93,18 @@
password_check_rules = {{ password_check_rules|safe }},
minLength = {{ min_length }},
top = idPassword.offset().top - $('.navbar').outerHeight(true) - $('.page-heading').outerHeight(true) - 10 + 34,
left = 377;
left = 377,
i18n_fallback = {
"veryWeak": "{% trans 'Very weak' %}",
"weak": "{% trans 'Weak' %}",
"normal": "{% trans 'Normal' %}",
"medium": "{% trans 'Medium' %}",
"strong": "{% trans 'Strong' %}",
"veryStrong": "{% trans 'Very strong' %}"
};
// 初始化popover
initPopover(container, progress, idPassword, el, password_check_rules);
initPopover(container, progress, idPassword, el, password_check_rules, i18n_fallback);
// 监听事件
idPassword.on('focus', function () {
......
......@@ -29,10 +29,18 @@
password_check_rules = {{ password_check_rules|safe }},
minLength = {{ min_length }},
top = idPassword.offset().top - $('.navbar').outerHeight(true) - $('.page-heading').outerHeight(true) - 10 + 34,
left = 377;
left = 377,
i18n_fallback = {
"veryWeak": "{% trans 'Very weak' %}",
"weak": "{% trans 'Weak' %}",
"normal": "{% trans 'Normal' %}",
"medium": "{% trans 'Medium' %}",
"strong": "{% trans 'Strong' %}",
"veryStrong": "{% trans 'Very strong' %}"
};
// 初始化popover
initPopover(container, progress, idPassword, el, password_check_rules);
initPopover(container, progress, idPassword, el, password_check_rules, i18n_fallback);
// 监听事件
idPassword.on('focus', function () {
......
......@@ -90,6 +90,12 @@ class UserCreateView(AdminUserRequiredMixin, SuccessMessageMixin, CreateView):
post_user_create.send(self.__class__, user=user)
return super().form_valid(form)
def get_form_kwargs(self):
kwargs = super(UserCreateView, self).get_form_kwargs()
data = {'request': self.request}
kwargs.update(data)
return kwargs
class UserUpdateView(AdminUserRequiredMixin, SuccessMessageMixin, UpdateView):
model = User
......@@ -123,6 +129,12 @@ class UserUpdateView(AdminUserRequiredMixin, SuccessMessageMixin, UpdateView):
return self.form_invalid(form)
return super().form_valid(form)
def get_form_kwargs(self):
kwargs = super(UserUpdateView, self).get_form_kwargs()
data = {'request': self.request}
kwargs.update(data)
return kwargs
class UserBulkUpdateView(AdminUserRequiredMixin, TemplateView):
model = User
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment