mirror of https://github.com/jumpserver/jumpserver
修改分页
parent
b7acef8cb0
commit
56f8f5d09b
|
@ -9,7 +9,8 @@ urlpatterns = patterns('jperm.views',
|
||||||
(r'^perm_edit/$', 'perm_edit'),
|
(r'^perm_edit/$', 'perm_edit'),
|
||||||
(r'^perm_add/$', 'perm_add'),
|
(r'^perm_add/$', 'perm_add'),
|
||||||
(r'^perm_list/$', 'perm_list'),
|
(r'^perm_list/$', 'perm_list'),
|
||||||
(r'^perm_list_ajax/$', 'perm_list_ajax'),
|
(r'^perm_user_detail/$', 'perm_user_detail'),
|
||||||
|
# (r'^perm_list_ajax/$', 'perm_list_ajax'),
|
||||||
(r'^perm_detail/$', 'perm_detail'),
|
(r'^perm_detail/$', 'perm_detail'),
|
||||||
(r'^perm_del/$', 'perm_del'),
|
(r'^perm_del/$', 'perm_del'),
|
||||||
(r'^perm_asset_detail/$', 'perm_asset_detail'),
|
(r'^perm_asset_detail/$', 'perm_asset_detail'),
|
||||||
|
|
|
@ -7,7 +7,7 @@ from jasset.models import Asset, BisGroup
|
||||||
from jperm.models import Perm, SudoPerm, CmdGroup
|
from jperm.models import Perm, SudoPerm, CmdGroup
|
||||||
from django.core.paginator import Paginator, EmptyPage, InvalidPage
|
from django.core.paginator import Paginator, EmptyPage, InvalidPage
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
from jumpserver.views import LDAP_ENABLE, ldap_conn, CONF, perm_user_asset
|
from jumpserver.views import LDAP_ENABLE, ldap_conn, CONF, perm_user_asset, page_list_return
|
||||||
|
|
||||||
|
|
||||||
if LDAP_ENABLE:
|
if LDAP_ENABLE:
|
||||||
|
@ -39,21 +39,24 @@ def perm_list(request):
|
||||||
groups = contact_list = Perm.objects.all()
|
groups = contact_list = Perm.objects.all()
|
||||||
users = contact_list2 = User.objects.all().order_by('id')
|
users = contact_list2 = User.objects.all().order_by('id')
|
||||||
p = paginator = Paginator(contact_list, 10)
|
p = paginator = Paginator(contact_list, 10)
|
||||||
p2 = paginator2 = Paginator(contact_list2, 10)
|
|
||||||
try:
|
try:
|
||||||
page = int(request.GET.get('page', '1'))
|
current_page = int(request.GET.get('page', '1'))
|
||||||
except ValueError:
|
except ValueError:
|
||||||
page = 1
|
current_page = 1
|
||||||
|
|
||||||
|
page_range = page_list_return(len(p.page_range), current_page)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
contacts = paginator.page(page)
|
contacts = paginator.page(current_page)
|
||||||
contacts2 = paginator2.page(page)
|
|
||||||
except (EmptyPage, InvalidPage):
|
except (EmptyPage, InvalidPage):
|
||||||
contacts = paginator.page(paginator.num_pages)
|
contacts = paginator.page(paginator.num_pages)
|
||||||
contacts2 = paginator2.page(paginator2.num_pages)
|
|
||||||
return render_to_response('jperm/perm_list.html', locals())
|
return render_to_response('jperm/perm_list.html', locals())
|
||||||
|
|
||||||
|
|
||||||
|
def perm_user_detail(request):
|
||||||
|
header_title, path1, path2 = u'鐢ㄦ埛鎺堟潈璇︽儏 | Perm User Detail.', u'鎺堟潈绠$悊', u'鎺堟潈璇︽儏'
|
||||||
|
|
||||||
|
|
||||||
def user_asset_cmd_groups_get(user_groups_select='', asset_groups_select='', cmd_groups_select=''):
|
def user_asset_cmd_groups_get(user_groups_select='', asset_groups_select='', cmd_groups_select=''):
|
||||||
user_groups_select_list = []
|
user_groups_select_list = []
|
||||||
asset_groups_select_list = []
|
asset_groups_select_list = []
|
||||||
|
|
|
@ -50,6 +50,14 @@ def jasset_group_add(name, comment, type):
|
||||||
class ServerError(Exception):
|
class ServerError(Exception):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
def page_list_return(total, current=1):
|
||||||
|
min_page = current - 2 if current - 4 > 0 else 1
|
||||||
|
max_page = min_page + 4 if min_page + 4 < total else total
|
||||||
|
|
||||||
|
return range(min_page, max_page+1)
|
||||||
|
|
||||||
|
|
||||||
def jasset_host_edit(j_id, j_ip, j_idc, j_port, j_type, j_group, j_active, j_comment):
|
def jasset_host_edit(j_id, j_ip, j_idc, j_port, j_type, j_group, j_active, j_comment):
|
||||||
groups = []
|
groups = []
|
||||||
is_active = {u'鏄': '1', u'鍚': '2'}
|
is_active = {u'鏄': '1', u'鍚': '2'}
|
||||||
|
|
|
@ -20,7 +20,7 @@ from juser.models import UserGroup, User
|
||||||
from connect import PyCrypt, KEY
|
from connect import PyCrypt, KEY
|
||||||
from connect import BASE_DIR
|
from connect import BASE_DIR
|
||||||
from connect import CONF
|
from connect import CONF
|
||||||
from jumpserver.views import md5_crypt, LDAPMgmt, LDAP_ENABLE, ldap_conn
|
from jumpserver.views import md5_crypt, LDAPMgmt, LDAP_ENABLE, ldap_conn, page_list_return
|
||||||
|
|
||||||
if LDAP_ENABLE:
|
if LDAP_ENABLE:
|
||||||
LDAP_HOST_URL = CONF.get('ldap', 'host_url')
|
LDAP_HOST_URL = CONF.get('ldap', 'host_url')
|
||||||
|
@ -265,12 +265,14 @@ def group_list(request):
|
||||||
p = paginator = Paginator(contact_list, 10)
|
p = paginator = Paginator(contact_list, 10)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
page = int(request.GET.get('page', '1'))
|
current_page = int(request.GET.get('page', '1'))
|
||||||
except ValueError:
|
except ValueError:
|
||||||
page = 1
|
current_page = 1
|
||||||
|
|
||||||
|
page_range = page_list_return(len(p.page_range), current_page)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
contacts = paginator.page(page)
|
contacts = paginator.page(current_page)
|
||||||
except (EmptyPage, InvalidPage):
|
except (EmptyPage, InvalidPage):
|
||||||
contacts = paginator.page(paginator.num_pages)
|
contacts = paginator.page(paginator.num_pages)
|
||||||
return render_to_response('juser/group_list.html', locals())
|
return render_to_response('juser/group_list.html', locals())
|
||||||
|
@ -333,12 +335,14 @@ def user_list(request):
|
||||||
p = paginator = Paginator(contact_list, 10)
|
p = paginator = Paginator(contact_list, 10)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
page = int(request.GET.get('page', '1'))
|
current_page = int(request.GET.get('page', '1'))
|
||||||
except ValueError:
|
except ValueError:
|
||||||
page = 1
|
current_page = 1
|
||||||
|
|
||||||
|
page_range = page_list_return(len(p.page_range), current_page)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
contacts = paginator.page(page)
|
contacts = paginator.page(current_page)
|
||||||
except (EmptyPage, InvalidPage):
|
except (EmptyPage, InvalidPage):
|
||||||
contacts = paginator.page(paginator.num_pages)
|
contacts = paginator.page(paginator.num_pages)
|
||||||
return render_to_response('juser/user_list.html', locals())
|
return render_to_response('juser/user_list.html', locals())
|
||||||
|
|
|
@ -33,8 +33,8 @@
|
||||||
<div class="panel-heading">
|
<div class="panel-heading">
|
||||||
<div class="panel-options">
|
<div class="panel-options">
|
||||||
<ul class="nav nav-tabs">
|
<ul class="nav nav-tabs">
|
||||||
<li id="tab1" class="active"><a data-toggle="tab" href="#tab-1">鎺堟潈鏌ョ湅</a></li>
|
<li id="tab1" class="active"><a data-toggle="tab" href="/perm_list/">鎺堟潈鏌ョ湅</a></li>
|
||||||
<li id="tab2" class=""><a data-toggle="tab" href="#tab-2">鐢ㄦ埛鎺堟潈璇︽儏</a></li>
|
<li id="tab2" class=""><a data-toggle="tab" href="/perm_user_detail/">鐢ㄦ埛鎺堟潈璇︽儏</a></li>
|
||||||
<li style="float: right">
|
<li style="float: right">
|
||||||
<form method="get" action="" class="pull-right mail-search">
|
<form method="get" action="" class="pull-right mail-search">
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
|
@ -107,8 +107,8 @@
|
||||||
<a href="#">Previous</a>
|
<a href="#">Previous</a>
|
||||||
</li>
|
</li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% for page in p.page_range %}
|
{% for page in page_range %}
|
||||||
{% ifequal offset1 page %}
|
{% ifequal current_page page %}
|
||||||
<li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
<li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
||||||
{% else %}
|
{% else %}
|
||||||
<li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
<li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
||||||
|
@ -130,68 +130,68 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="tab-2" class="tab-pane">
|
<div id="tab-2" class="tab-pane">
|
||||||
<table class="table table-striped table-bordered table-hover " id="editable" >
|
{# <table class="table table-striped table-bordered table-hover " id="editable" >#}
|
||||||
<thead>
|
{# <thead>#}
|
||||||
<tr>
|
{# <tr>#}
|
||||||
<th class="text-center">鐢ㄦ埛</th>
|
{# <th class="text-center">鐢ㄦ埛</th>#}
|
||||||
<th class="text-center">瑙掕壊</th>
|
{# <th class="text-center">瑙掕壊</th>#}
|
||||||
<th class="text-center">灞炵粍</th>
|
{# <th class="text-center">灞炵粍</th>#}
|
||||||
<th class="text-center">涓绘満鏁伴噺</th>
|
{# <th class="text-center">涓绘満鏁伴噺</th>#}
|
||||||
<th class="text-center">鎿嶄綔</th>
|
{# <th class="text-center">鎿嶄綔</th>#}
|
||||||
</tr>
|
{# </tr>#}
|
||||||
</thead>
|
{# </thead>#}
|
||||||
<tbody id="perm_list">
|
{# <tbody id="perm_list">#}
|
||||||
{% for user in contacts2.object_list %}
|
{# {% for user in contacts2.object_list %}#}
|
||||||
<tr class="gradeX">
|
{# <tr class="gradeX">#}
|
||||||
<td class="text-center"> {{ user.name }} </td>
|
{# <td class="text-center"> {{ user.name }} </td>#}
|
||||||
<td class="text-center"> {{ user.id | get_role }} </td>
|
{# <td class="text-center"> {{ user.id | get_role }} </td>#}
|
||||||
<td class="text-center"> {{ user.username | groups_str }} </td>
|
{# <td class="text-center"> {{ user.username | groups_str }} </td>#}
|
||||||
<td class="text-center"> {{ user.id | perm_asset_count }} </td>
|
{# <td class="text-center"> {{ user.id | perm_asset_count }} </td>#}
|
||||||
<td class="text-center">
|
{# <td class="text-center">#}
|
||||||
<a title="[ {{ user.name }} ] 鎺堟潈璇︽儏" href="../perm_asset_detail/?id={{ user.id }}" class="btn btn-xs btn-primary">璇︽儏</a>
|
{# <a title="[ {{ user.name }} ] 鎺堟潈璇︽儏" href="../perm_asset_detail/?id={{ user.id }}" class="btn btn-xs btn-primary">璇︽儏</a>#}
|
||||||
</td>
|
{# </td>#}
|
||||||
</tr>
|
{# </tr>#}
|
||||||
{% endfor %}
|
{# {% endfor %}#}
|
||||||
</tbody>
|
{# </tbody>#}
|
||||||
</table>
|
{# </table>#}
|
||||||
<div class="row">
|
{# <div class="row">#}
|
||||||
<div class="col-sm-6">
|
{# <div class="col-sm-6">#}
|
||||||
<div class="dataTables_info" id="editable_info" role="status" aria-live="polite">
|
{# <div class="dataTables_info" id="editable_info" role="status" aria-live="polite">#}
|
||||||
Showing {{ contacts2.start_index }} to {{ contacts2.end_index }} of {{ p2.count }} entries
|
{# Showing {{ contacts2.start_index }} to {{ contacts2.end_index }} of {{ p2.count }} entries#}
|
||||||
</div>
|
{# </div>#}
|
||||||
</div>
|
{# </div>#}
|
||||||
<div class="col-sm-6">
|
{# <div class="col-sm-6">#}
|
||||||
<div class="dataTables_paginate paging_simple_numbers" id="editable_paginate">
|
{# <div class="dataTables_paginate paging_simple_numbers" id="editable_paginate">#}
|
||||||
<ul class="pagination" style="margin-top: 0; float: right">
|
{# <ul class="pagination" style="margin-top: 0; float: right">#}
|
||||||
{% if contacts2.has_previous %}
|
{# {% if contacts2.has_previous %}#}
|
||||||
<li class="paginate_button previous" aria-controls="editable" tabindex="0" id="editable_previous">
|
{# <li class="paginate_button previous" aria-controls="editable" tabindex="0" id="editable_previous">#}
|
||||||
<a href="?page={{ contacts2.previous_page_number }}">Previous</a>
|
{# <a href="?page={{ contacts2.previous_page_number }}">Previous</a>#}
|
||||||
</li>
|
{# </li>#}
|
||||||
{% else %}
|
{# {% else %}#}
|
||||||
<li class="paginate_button previous disabled" aria-controls="editable" tabindex="0" id="editable_previous">
|
{# <li class="paginate_button previous disabled" aria-controls="editable" tabindex="0" id="editable_previous">#}
|
||||||
<a href="#">Previous</a>
|
{# <a href="#">Previous</a>#}
|
||||||
</li>
|
{# </li>#}
|
||||||
{% endif %}
|
{# {% endif %}#}
|
||||||
{% for page in p2.page_range %}
|
{# {% for page in page_range2 %}#}
|
||||||
{% ifequal offset1 page %}
|
{# {% ifequal current_page page %}#}
|
||||||
<li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
{# <li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>#}
|
||||||
{% else %}
|
{# {% else %}#}
|
||||||
<li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
{# <li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>#}
|
||||||
{% endifequal %}
|
{# {% endifequal %}#}
|
||||||
{% endfor %}
|
{# {% endfor %}#}
|
||||||
{% if contacts2.has_next %}
|
{# {% if contacts2.has_next %}#}
|
||||||
<li class="paginate_button next" aria-controls="editable" tabindex="0" id="editable_next">
|
{# <li class="paginate_button next" aria-controls="editable" tabindex="0" id="editable_next">#}
|
||||||
<a href="?page={{ contacts2.next_page_number }}">Next</a>
|
{# <a href="?page={{ contacts2.next_page_number }}">Next</a>#}
|
||||||
</li>
|
{# </li>#}
|
||||||
{% else %}
|
{# {% else %}#}
|
||||||
<li class="paginate_button next disabled" aria-controls="editable" tabindex="0" id="editable_next">
|
{# <li class="paginate_button next disabled" aria-controls="editable" tabindex="0" id="editable_next">#}
|
||||||
<a href="#">Next</a>
|
{# <a href="#">Next</a>#}
|
||||||
</li>
|
{# </li>#}
|
||||||
{% endif %}
|
{# {% endif %}#}
|
||||||
</ul>
|
{# </ul>#}
|
||||||
</div>
|
{# </div>#}
|
||||||
</div>
|
{# </div>#}
|
||||||
</div>
|
{# </div>#}
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -0,0 +1,240 @@
|
||||||
|
{% extends 'base.html' %}
|
||||||
|
{% load mytags %}
|
||||||
|
{% 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> 鐢ㄦ埛缁勬巿鏉 <small> show host perm info.</small> </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">
|
||||||
|
<div class="panel blank-panel">
|
||||||
|
<div class="panel-heading">
|
||||||
|
<div class="panel-options">
|
||||||
|
<ul class="nav nav-tabs">
|
||||||
|
<li id="tab1" class="active"><a data-toggle="tab" href="/perm_list/">鎺堟潈鏌ョ湅</a></li>
|
||||||
|
<li id="tab2" class=""><a data-toggle="tab" href="/perm_user_detail/">鐢ㄦ埛鎺堟潈璇︽儏</a></li>
|
||||||
|
<li style="float: right">
|
||||||
|
<form method="get" action="" class="pull-right mail-search">
|
||||||
|
<div class="input-group">
|
||||||
|
<input type="text" class="form-control input-sm" id="search_input" name="search" placeholder="Search">
|
||||||
|
<div class="input-group-btn">
|
||||||
|
<button id='search_btn' type="button" class="btn btn-sm btn-primary">
|
||||||
|
Search
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="panel-body">
|
||||||
|
|
||||||
|
<div class="tab-content">
|
||||||
|
<div id="tab-1" class="tab-pane active">
|
||||||
|
<table class="table table-striped table-bordered table-hover " id="editable" >
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th class="text-center">鍚嶇О</th>
|
||||||
|
<th class="text-center">鐢ㄦ埛缁</th>
|
||||||
|
<th class="text-center">涓绘満缁</th>
|
||||||
|
<th class="text-center">澶囨敞</th>
|
||||||
|
<th class="text-center">鎿嶄綔</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody id="perm_edit">
|
||||||
|
{% for perm in contacts.object_list %}
|
||||||
|
<tr class="gradeX">
|
||||||
|
<td class="text-center"> {{ perm.name }} </td>
|
||||||
|
<td class="text-center">
|
||||||
|
{% for user_group in perm.user_group.all %}
|
||||||
|
{{ user_group.name }}
|
||||||
|
{% endfor %}
|
||||||
|
</td>
|
||||||
|
<td class="text-center">
|
||||||
|
{% for asset_group in perm.asset_group.all %}
|
||||||
|
{{ asset_group.name }}
|
||||||
|
{% endfor %}
|
||||||
|
</td>
|
||||||
|
<td class="text-center"> {{ perm.comment }} </td>
|
||||||
|
<td class="text-center">
|
||||||
|
<a title="[ {{ group.name }} 鎺堟潈璇︽儏 ]" href="../perm_detail/?id={{ perm.id }}" class=" btn btn-xs btn-primary">璇︽儏</a>
|
||||||
|
<a href="../perm_edit/?id={{ perm.id }}" class="btn btn-xs btn-info">缂栬緫</a>
|
||||||
|
<a href="../perm_del/?id={{ perm.id }}" class="btn btn-xs btn-danger">鍒犻櫎</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="dataTables_info" id="editable_info" role="status" aria-live="polite">
|
||||||
|
Showing {{ contacts.start_index }} to {{ contacts.end_index }} of {{ p.count }} entries
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-sm-6">
|
||||||
|
<div class="dataTables_paginate paging_simple_numbers" id="editable_paginate">
|
||||||
|
<ul class="pagination" style="margin-top: 0; float: right">
|
||||||
|
{% if contacts.has_previous %}
|
||||||
|
<li class="paginate_button previous" aria-controls="editable" tabindex="0" id="editable_previous">
|
||||||
|
<a href="?page={{ contacts.previous_page_number }}">Previous</a>
|
||||||
|
</li>
|
||||||
|
{% else %}
|
||||||
|
<li class="paginate_button previous disabled" aria-controls="editable" tabindex="0" id="editable_previous">
|
||||||
|
<a href="#">Previous</a>
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
{% for page in page_range %}
|
||||||
|
{% ifequal current_page page %}
|
||||||
|
<li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
||||||
|
{% else %}
|
||||||
|
<li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
||||||
|
{% endifequal %}
|
||||||
|
{% endfor %}
|
||||||
|
{% if contacts.has_next %}
|
||||||
|
<li class="paginate_button next" aria-controls="editable" tabindex="0" id="editable_next">
|
||||||
|
<a href="?page={{ contacts.next_page_number }}">Next</a>
|
||||||
|
</li>
|
||||||
|
{% else %}
|
||||||
|
<li class="paginate_button next disabled" aria-controls="editable" tabindex="0" id="editable_next">
|
||||||
|
<a href="#">Next</a>
|
||||||
|
</li>
|
||||||
|
{% endif %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="tab-2" class="tab-pane">
|
||||||
|
{# <table class="table table-striped table-bordered table-hover " id="editable" >#}
|
||||||
|
{# <thead>#}
|
||||||
|
{# <tr>#}
|
||||||
|
{# <th class="text-center">鐢ㄦ埛</th>#}
|
||||||
|
{# <th class="text-center">瑙掕壊</th>#}
|
||||||
|
{# <th class="text-center">灞炵粍</th>#}
|
||||||
|
{# <th class="text-center">涓绘満鏁伴噺</th>#}
|
||||||
|
{# <th class="text-center">鎿嶄綔</th>#}
|
||||||
|
{# </tr>#}
|
||||||
|
{# </thead>#}
|
||||||
|
{# <tbody id="perm_list">#}
|
||||||
|
{# {% for user in contacts2.object_list %}#}
|
||||||
|
{# <tr class="gradeX">#}
|
||||||
|
{# <td class="text-center"> {{ user.name }} </td>#}
|
||||||
|
{# <td class="text-center"> {{ user.id | get_role }} </td>#}
|
||||||
|
{# <td class="text-center"> {{ user.username | groups_str }} </td>#}
|
||||||
|
{# <td class="text-center"> {{ user.id | perm_asset_count }} </td>#}
|
||||||
|
{# <td class="text-center">#}
|
||||||
|
{# <a title="[ {{ user.name }} ] 鎺堟潈璇︽儏" href="../perm_asset_detail/?id={{ user.id }}" class="btn btn-xs btn-primary">璇︽儏</a>#}
|
||||||
|
{# </td>#}
|
||||||
|
{# </tr>#}
|
||||||
|
{# {% endfor %}#}
|
||||||
|
{# </tbody>#}
|
||||||
|
{# </table>#}
|
||||||
|
{# <div class="row">#}
|
||||||
|
{# <div class="col-sm-6">#}
|
||||||
|
{# <div class="dataTables_info" id="editable_info" role="status" aria-live="polite">#}
|
||||||
|
{# Showing {{ contacts2.start_index }} to {{ contacts2.end_index }} of {{ p2.count }} entries#}
|
||||||
|
{# </div>#}
|
||||||
|
{# </div>#}
|
||||||
|
{# <div class="col-sm-6">#}
|
||||||
|
{# <div class="dataTables_paginate paging_simple_numbers" id="editable_paginate">#}
|
||||||
|
{# <ul class="pagination" style="margin-top: 0; float: right">#}
|
||||||
|
{# {% if contacts2.has_previous %}#}
|
||||||
|
{# <li class="paginate_button previous" aria-controls="editable" tabindex="0" id="editable_previous">#}
|
||||||
|
{# <a href="?page={{ contacts2.previous_page_number }}">Previous</a>#}
|
||||||
|
{# </li>#}
|
||||||
|
{# {% else %}#}
|
||||||
|
{# <li class="paginate_button previous disabled" aria-controls="editable" tabindex="0" id="editable_previous">#}
|
||||||
|
{# <a href="#">Previous</a>#}
|
||||||
|
{# </li>#}
|
||||||
|
{# {% endif %}#}
|
||||||
|
{# {% for page in page_range2 %}#}
|
||||||
|
{# {% ifequal current_page page %}#}
|
||||||
|
{# <li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>#}
|
||||||
|
{# {% else %}#}
|
||||||
|
{# <li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>#}
|
||||||
|
{# {% endifequal %}#}
|
||||||
|
{# {% endfor %}#}
|
||||||
|
{# {% if contacts2.has_next %}#}
|
||||||
|
{# <li class="paginate_button next" aria-controls="editable" tabindex="0" id="editable_next">#}
|
||||||
|
{# <a href="?page={{ contacts2.next_page_number }}">Next</a>#}
|
||||||
|
{# </li>#}
|
||||||
|
{# {% else %}#}
|
||||||
|
{# <li class="paginate_button next disabled" aria-controls="editable" tabindex="0" id="editable_next">#}
|
||||||
|
{# <a href="#">Next</a>#}
|
||||||
|
{# </li>#}
|
||||||
|
{# {% endif %}#}
|
||||||
|
{# </ul>#}
|
||||||
|
{# </div>#}
|
||||||
|
{# </div>#}
|
||||||
|
{# </div>#}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
$(document).ready(function(){
|
||||||
|
$(".iframe").colorbox({iframe:true, width:"70%", height:"70%"});
|
||||||
|
});
|
||||||
|
|
||||||
|
$(document).ready(function(){
|
||||||
|
$('#search_btn').click(function(){
|
||||||
|
if ($('#tab2').attr('class') == 'active'){
|
||||||
|
var tab='tab2'
|
||||||
|
} else {
|
||||||
|
var tab='tab1'
|
||||||
|
}
|
||||||
|
|
||||||
|
var search=$('#search_input').val()
|
||||||
|
|
||||||
|
$.post('/jperm/perm_list_ajax/',
|
||||||
|
{'tab': tab, 'search': search},
|
||||||
|
function(data){
|
||||||
|
if ($('#tab2').attr('class') == 'active'){
|
||||||
|
$('#tab-2').html(data)
|
||||||
|
} else {
|
||||||
|
$('#tab-1').html(data)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
})
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
|
||||||
|
{% endblock %}
|
|
@ -89,8 +89,8 @@
|
||||||
<a href="#">Previous</a>
|
<a href="#">Previous</a>
|
||||||
</li>
|
</li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{% for page in p.page_range %}
|
{% for page in page_range %}
|
||||||
{% ifequal offset1 page %}
|
{% ifequal current_page page %}
|
||||||
<li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
<li class="paginate_button active" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
||||||
{% else %}
|
{% else %}
|
||||||
<li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
<li class="paginate_button" aria-controls="editable" tabindex="0"><a href="?page={{ page }}" title="绗瑊{ page }}椤">{{ page }}</a></li>
|
||||||
|
|
Loading鈥
Reference in New Issue