Merge pull request #1365 from jumpserver/dev

Dev修复
pull/1369/head
老广 2018-05-28 11:05:11 +08:00 committed by GitHub
commit 7987056b12
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 35 additions and 26 deletions

View File

@ -17,11 +17,12 @@
position:absolute;
visibility:hidden;
text-align: left;
top: 100%;
{#top: 100%;#}
top: 0;
left: 0;
z-index: 1000;
float: left;
padding: 5px 0;
{#float: left;#}
padding: 0 0;
margin: 2px 0 0;
list-style: none;
background-clip: padding-box;
@ -29,7 +30,7 @@
div#rMenu li{
margin: 1px 0;
cursor: pointer;
{#list-style: none outside none;#}
list-style: none outside none;
}
.dropdown a:hover {
background-color: #f1f1f1
@ -266,6 +267,8 @@ function OnRightClick(event, treeId, treeNode) {
function showRMenu(type, x, y) {
$("#rMenu ul").show();
x -= 220;
x += document.body.scrollLeft;
y += document.body.scrollTop+document.documentElement.scrollTop;
rMenu.css({"top":y+"px", "left":x+"px", "visibility":"visible"});
$("body").bind("mousedown", onBodyMouseDown);

Binary file not shown.

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Jumpserver 0.3.3\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-17 11:32+0800\n"
"POT-Creation-Date: 2018-05-25 18:11+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"
@ -535,7 +535,7 @@ msgstr "测试系统用户可连接性: {}"
msgid "定期测试系统用户可连接性: {}"
msgstr ""
#: assets/tasks.py:402
#: assets/tasks.py:401
msgid "推送系统用户到入资产: {}"
msgstr ""
@ -2540,7 +2540,7 @@ msgid "Can't provide security? Please contact the administrator!"
msgstr "如果不能提供MFA验证码请联系管理员!"
#: users/templates/users/reset_password.html:45
#: users/templates/users/user_detail.html:348 users/utils.py:73
#: users/templates/users/user_detail.html:348 users/utils.py:76
msgid "Reset password"
msgstr "重置密码"
@ -2744,13 +2744,15 @@ msgid "Create account successfully"
msgstr "创建账户成功"
#: users/utils.py:39
#, python-format
#, fuzzy, python-format
msgid ""
"\n"
" Hello %(name)s:\n"
" </br>\n"
" Your account has been created successfully\n"
" </br>\n"
" Username: %(username)s\n"
" </br>\n"
" <a href=\"%(rest_password_url)s?token=%(rest_password_token)s\">click "
"here to set your password</a>\n"
" </br>\n"
@ -2770,6 +2772,8 @@ msgstr ""
" 你好 %(name)s:\n"
" </br>\n"
" 恭喜您,您的账号已经创建成功 </br>\n"
" 用户名: %(username)s\n"
" </br>\n"
" <a href=\"%(rest_password_url)s?token=%(rest_password_token)s\">请点击这"
"里设置密码</a> </br>\n"
" 这个链接有效期1小时, 超过时间您可以 <a href=\"%(forget_password_url)s?"
@ -2784,7 +2788,7 @@ msgstr ""
" </br>\n"
" "
#: users/utils.py:75
#: users/utils.py:78
#, python-format
msgid ""
"\n"
@ -2828,11 +2832,11 @@ msgstr ""
" </br>\n"
" "
#: users/utils.py:106
#: users/utils.py:109
msgid "SSH Key Reset"
msgstr "重置ssh密钥"
#: users/utils.py:108
#: users/utils.py:111
#, python-format
msgid ""
"\n"
@ -2857,15 +2861,15 @@ msgstr ""
" </br>\n"
" "
#: users/utils.py:141
#: users/utils.py:144
msgid "User not exist"
msgstr "用户不存在"
#: users/utils.py:143
#: users/utils.py:146
msgid "Disabled or expired"
msgstr "禁用或失效"
#: users/utils.py:156
#: users/utils.py:159
msgid "Password or SSH public key invalid"
msgstr "密码或密钥不合法"

View File

@ -106,21 +106,19 @@ class AssetPermissionUtil:
return assets
@classmethod
def get_user_group_nodes_with_assets(cls, user):
def get_user_group_nodes_with_assets(cls, group):
"""
:param user:
:param group:
:return: {node: {asset: set(su1, su2)}}
"""
nodes = defaultdict(dict)
_assets = cls.get_user_group_assets(user)
_assets = cls.get_user_group_assets(group)
tree = Tree()
for asset, _system_users in _assets.items():
_nodes = asset.get_nodes()
tree.add_nodes(_nodes)
for node in _nodes:
if asset in nodes[node]:
nodes[node][asset].update(_system_users)
else:
nodes[node][asset] = _system_users
return nodes
tree.nodes[node][asset].update(_system_users)
return tree.nodes
@classmethod
def get_user_assets_direct(cls, user):

View File

@ -64,10 +64,11 @@
var zTree;
var inited = false;
var url;
var asset_table;
function initTable() {
if (inited){
return
return asset_table
} else {
inited = true;
}

View File

@ -41,6 +41,8 @@ def send_user_created_mail(user):
</br>
Your account has been created successfully
</br>
Username: %(username)s
</br>
<a href="%(rest_password_url)s?token=%(rest_password_token)s">click here to set your password</a>
</br>
This link is valid for 1 hour. After it expires, <a href="%(forget_password_url)s?email=%(email)s">request new one</a>
@ -54,6 +56,7 @@ def send_user_created_mail(user):
</br>
""") % {
'name': user.name,
'username': user.username,
'rest_password_url': reverse('users:reset-password', external=True),
'rest_password_token': user.generate_reset_token(),
'forget_password_url': reverse('users:forgot-password', external=True),