Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
J
jumpserver
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ops
jumpserver
Commits
50fcac67
Commit
50fcac67
authored
Mar 03, 2015
by
guanghongwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改 删除等
parent
fc007e96
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
187 additions
and
15 deletions
+187
-15
AddUserAsset.py
docs/AddUserAsset.py
+3
-3
views.py
jperm/views.py
+3
-3
urls.py
juser/urls.py
+9
-8
views.py
juser/views.py
+37
-0
dept_edit.html
templates/juser/dept_edit.html
+134
-0
group_list.html
templates/juser/group_list.html
+1
-1
No files found.
docs/AddUserAsset.py
View file @
50fcac67
...
@@ -82,9 +82,9 @@ def test_add_asset():
...
@@ -82,9 +82,9 @@ def test_add_asset():
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
#
test_add_dept()
test_add_dept
()
#
test_add_group()
test_add_group
()
test_add_user
()
#
test_add_user()
...
...
jperm/views.py
View file @
50fcac67
...
@@ -75,7 +75,7 @@ def perm_add(request):
...
@@ -75,7 +75,7 @@ def perm_add(request):
header_title
,
path1
,
path2
=
u'主机授权添加 | Perm Add Detail.'
,
u'授权管理'
,
u'授权添加'
header_title
,
path1
,
path2
=
u'主机授权添加 | Perm Add Detail.'
,
u'授权管理'
,
u'授权添加'
if
request
.
method
==
'GET'
:
if
request
.
method
==
'GET'
:
user_groups
=
UserGroup
.
objects
.
filter
(
Q
(
type
=
'A'
)
|
Q
(
type
=
'M'
))
.
order_by
(
'type'
)
user_groups
=
UserGroup
.
objects
.
all
(
)
asset_groups
=
BisGroup
.
objects
.
all
()
asset_groups
=
BisGroup
.
objects
.
all
()
else
:
else
:
...
@@ -269,8 +269,8 @@ def sudo_ldap_add(name, users_runas, user_groups_select, asset_groups_select,
...
@@ -269,8 +269,8 @@ def sudo_ldap_add(name, users_runas, user_groups_select, asset_groups_select,
def
sudo_add
(
request
):
def
sudo_add
(
request
):
header_title
,
path1
,
path2
=
u'Sudo授权 | Perm Sudo Add.'
,
u'权限管理'
,
u'添加Sudo权限'
header_title
,
path1
,
path2
=
u'Sudo授权 | Perm Sudo Add.'
,
u'权限管理'
,
u'添加Sudo权限'
user_groups
=
UserGroup
.
objects
.
filter
(
Q
(
type
=
'A'
)
|
Q
(
type
=
'P'
))
.
order_by
(
'type'
)
user_groups
=
UserGroup
.
objects
.
all
(
)
asset_groups
=
BisGroup
.
objects
.
all
()
.
order_by
(
'type'
)
asset_groups
=
BisGroup
.
objects
.
all
()
cmd_groups
=
CmdGroup
.
objects
.
all
()
cmd_groups
=
CmdGroup
.
objects
.
all
()
if
request
.
method
==
'POST'
:
if
request
.
method
==
'POST'
:
...
...
juser/urls.py
View file @
50fcac67
...
@@ -6,21 +6,22 @@ urlpatterns = patterns('juser.views',
...
@@ -6,21 +6,22 @@ urlpatterns = patterns('juser.views',
# url(r'^$', 'jumpserver.views.home', name='home'),
# url(r'^$', 'jumpserver.views.home', name='home'),
# url(r'^blog/', include('blog.urls')),
# url(r'^blog/', include('blog.urls')),
(
r'^user_add/$'
,
'user_add'
),
(
r'^user_list/$'
,
'user_list'
),
(
r'^group_add/$'
,
'group_add'
),
(
r'^group_add_ajax/$'
,
'group_add_ajax'
),
(
r'^group_list/$'
,
'group_list'
),
(
r'^dept_list/$'
,
'dept_list'
),
(
r'^dept_list/$'
,
'dept_list'
),
(
r'^dept_add/$'
,
'dept_add'
),
(
r'^dept_add/$'
,
'dept_add'
),
(
r'^dept_del/$'
,
'dept_del'
),
(
r'^dept_del/$'
,
'dept_del'
),
(
r'^dept_detail/$'
,
'dept_detail'
),
(
r'^dept_detail/$'
,
'dept_detail'
),
(
r'^
user_detail/$'
,
'user_detail
'
),
(
r'^
dept_edit/$'
,
'dept_edit
'
),
(
r'^
user_del/$'
,
'user_del
'
),
(
r'^
group_add/$'
,
'group_add
'
),
(
r'^
user_edit/$'
,
'user_edi
t'
),
(
r'^
group_list/$'
,
'group_lis
t'
),
(
r'^group_detail/$'
,
'group_detail'
),
(
r'^group_detail/$'
,
'group_detail'
),
(
r'^group_del/$'
,
'group_del'
),
(
r'^group_del/$'
,
'group_del'
),
(
r'^group_edit/$'
,
'group_edit'
),
(
r'^group_edit/$'
,
'group_edit'
),
(
r'^user_add/$'
,
'user_add'
),
(
r'^user_list/$'
,
'user_list'
),
(
r'^user_detail/$'
,
'user_detail'
),
(
r'^user_del/$'
,
'user_del'
),
(
r'^user_edit/$'
,
'user_edit'
),
(
r'^profile/$'
,
'profile'
),
(
r'^profile/$'
,
'profile'
),
(
r'^chg_pass/$'
,
'chg_pass'
),
(
r'^chg_pass/$'
,
'chg_pass'
),
)
)
juser/views.py
View file @
50fcac67
...
@@ -300,6 +300,43 @@ def dept_del(request):
...
@@ -300,6 +300,43 @@ def dept_del(request):
return
HttpResponseRedirect
(
'/juser/dept_list/'
)
return
HttpResponseRedirect
(
'/juser/dept_list/'
)
def
dept_member
(
dept_id
):
dept
=
DEPT
.
objects
.
filter
(
id
=
dept_id
)
if
dept
:
dept
=
dept
[
0
]
return
dept
.
user_set
.
all
()
def
dept_edit
(
request
):
header_title
,
path1
,
path2
=
'部门编辑'
,
'用户管理'
,
'部门编辑'
if
request
.
method
==
'GET'
:
dept_id
=
request
.
GET
.
get
(
'id'
,
''
)
if
dept_id
:
dept
=
DEPT
.
objects
.
filter
(
id
=
dept_id
)
if
dept
:
dept
=
dept
[
0
]
users
=
dept_member
(
dept_id
)
users_all
=
User
.
objects
.
all
()
users_other
=
[
user
for
user
in
users_all
if
user
not
in
users
]
else
:
error
=
'id 错误'
else
:
error
=
u'部门不存在'
else
:
dept_id
=
request
.
POST
.
get
(
'id'
,
''
)
name
=
request
.
POST
.
get
(
'name'
,
''
)
users
=
request
.
POST
.
get
(
'users_selected'
,
[])
comment
=
request
.
POST
.
get
(
'comment'
,
''
)
dept
=
DEPT
.
objects
.
filter
(
id
=
dept_id
)
if
dept
:
dept
.
update
(
name
=
name
,
comment
=
comment
)
else
:
error
=
'部门不存在'
return
render_to_response
(
'juser/dept_edit.html'
,
locals
(),
context_instance
=
RequestContext
(
request
))
def
group_add
(
request
):
def
group_add
(
request
):
error
=
''
error
=
''
msg
=
''
msg
=
''
...
...
templates/juser/dept_edit.html
0 → 100644
View file @
50fcac67
{% extends 'base.html' %}
{% block content %}
{% include 'nav_cat_bar.html' %}
<div
class=
"wrapper wrapper-content animated fadeInRight"
>
<div
class=
"row"
>
<div
class=
"col-lg-10"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<h5>
修改信息
</h5>
<div
class=
"ibox-tools"
>
<a
class=
"collapse-link"
>
<i
class=
"fa fa-chevron-up"
></i>
</a>
<a
class=
"dropdown-toggle"
data-toggle=
"dropdown"
href=
"#"
>
<i
class=
"fa fa-wrench"
></i>
</a>
<ul
class=
"dropdown-menu dropdown-user"
>
<li><a
href=
"#"
>
未启用 1
</a>
</li>
<li><a
href=
"#"
>
未启用 2
</a>
</li>
</ul>
<a
class=
"close-link"
>
<i
class=
"fa fa-times"
></i>
</a>
</div>
</div>
<div
class=
"ibox-content"
>
<form
id=
"deptForm"
method=
"post"
class=
"form-horizontal"
action=
""
>
{% if error %}
<div
class=
"alert alert-warning text-center"
>
{{ error }}
</div>
{% endif %}
{% if msg %}
<div
class=
"alert alert-success text-center"
>
{{ msg }}
</div>
{% endif %}
<div
class=
"form-group"
>
<label
for=
"name"
class=
"col-sm-2 control-label"
>
部门名称
<span
class=
"red-fonts"
>
*
</span></label>
<div
class=
"col-sm-8"
>
<input
name=
"id"
type=
"text"
value=
"{{ dept.id }}"
style=
"display: none;"
>
<input
id=
"name"
name=
"name"
placeholder=
"Dept name"
type=
"text"
class=
"form-control"
value=
"{{ dept.name }}"
>
</div>
</div>
<div
class=
"hr-line-dashed"
></div>
<div
class=
"form-group"
>
<label
for=
"users"
class=
"col-lg-2 control-label"
>
成员
</label>
<div
class=
"col-sm-3"
>
<select
id=
"users"
name=
"users"
size=
"12"
class=
"form-control m-b"
multiple
>
{% for user in users_other %}
<option
value=
"{{ user.id }}"
>
{{ user.name }}
</option>
{% endfor %}
</select>
<span
class=
"help-block m-b-none"
>
用户部门是唯一的
</span>
</div>
<div
class=
"col-sm-1"
>
<div
class=
"btn-group"
style=
"margin-top: 50px;"
>
<button
type=
"button"
class=
"btn btn-white"
onclick=
"move('users', 'users_selected')"
><i
class=
"fa fa-chevron-right"
></i></button>
<button
type=
"button"
class=
"btn btn-white"
onclick=
"move('users_selected', 'users')"
><i
class=
"fa fa-chevron-left"
></i>
</button>
</div>
</div>
<div
class=
"col-sm-3"
>
<div>
<select
id=
"users_selected"
name=
"users_selected"
class=
"form-control m-b"
size=
"12"
multiple
>
{% for user in users %}
<option
value=
"{{ user.id }}"
>
{{ user.name }}
</option>
{% endfor %}
</select>
</div>
</div>
</div>
<div
class=
"hr-line-dashed"
></div>
<div
class=
"form-group"
>
<label
for=
"comment"
class=
"col-sm-2 control-label"
>
备注
</label>
<div
class=
"col-sm-8"
>
<input
id=
"comment"
name=
"comment"
placeholder=
"Comment"
type=
"text"
class=
"form-control"
value=
"{{ dept.comment }}"
>
</div>
</div>
<div
class=
"hr-line-dashed"
></div>
<div
class=
"form-group"
>
<div
class=
"col-sm-4 col-sm-offset-2"
>
<button
class=
"btn btn-white"
type=
"reset"
>
取消
</button>
<button
id=
"submit_button"
class=
"btn btn-primary"
type=
"submit"
>
确认保存
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<script>
$
(
'#deptForm'
).
validator
({
timely
:
2
,
theme
:
"yellow_right_effect"
,
fields
:
{
"name"
:
{
rule
:
"required"
,
tip
:
"输入部门名称"
,
ok
:
""
,
msg
:
{
required
:
"必须填写!"
}
}
},
valid
:
function
(
form
)
{
form
.
submit
();
}
});
function
change_type
(
type
){
$
.
post
(
'/juser/group_add_ajax/'
,
{
'type'
:
type
},
function
(
data
){
$
(
'#users'
).
html
(
data
)
})
}
$
(
document
).
ready
(
function
(){
$
(
"#submit_button"
).
click
(
function
(){
$
(
'#users_selected option'
).
each
(
function
(){
$
(
this
).
prop
(
'selected'
,
true
)
})
})
})
</script>
{% endblock %}
\ No newline at end of file
templates/juser/group_list.html
View file @
50fcac67
...
@@ -8,7 +8,7 @@
...
@@ -8,7 +8,7 @@
<div
class=
"col-lg-10"
>
<div
class=
"col-lg-10"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox float-e-margins"
>
<div
class=
"ibox-title"
>
<div
class=
"ibox-title"
>
<h5>
查看
分组
<small>
show group info.
</small>
</h5>
<h5>
查看
小组
</h5>
<div
class=
"ibox-tools"
>
<div
class=
"ibox-tools"
>
<a
class=
"collapse-link"
>
<a
class=
"collapse-link"
>
<i
class=
"fa fa-chevron-up"
></i>
<i
class=
"fa fa-chevron-up"
></i>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment