diff --git a/apps/jumpserver/urls.py b/apps/jumpserver/urls.py
index 041372aca..5023462f6 100644
--- a/apps/jumpserver/urls.py
+++ b/apps/jumpserver/urls.py
@@ -42,6 +42,7 @@ urlpatterns = [
urlpatterns += [
url(r'^api/v1/ops', include(router.urls)),
+ url(r'^ops/', include('ops.urls')),
]
if settings.DEBUG:
diff --git a/apps/ops/templates/cron/list.html b/apps/ops/templates/cron/list.html
index b08a44b53..5168bed8d 100644
--- a/apps/ops/templates/cron/list.html
+++ b/apps/ops/templates/cron/list.html
@@ -1,34 +1,31 @@
{% extends '_base_list.html' %}
{% load i18n static %}
-{% block custom_head_css_js %}
-{{ block.super }}
-
+{% block table_search %}
+
{% endblock %}
-{% block table_search %}{% endblock %}
{% block table_container %}
-
+
-
+{# #}
+
|
- {% trans 'Name' %} |
- {% trans 'Username' %} |
+ {% trans 'Name' %} |
+ {% trans 'Username' %} |
{% trans 'Role' %} |
{% trans 'User group' %} |
- {% trans 'Asset num' %} |
- {% trans 'Active' %} |
+ {% trans 'Active' %} |
{% trans 'Action' %} |
@@ -65,34 +62,43 @@ $(document).ready(function(){
$(td).html(detail_btn.replace('99991937', rowData.id));
}},
{targets: 4, createdCell: function (td, cellData) {
- var innerHtml = cellData.length > 8 ? cellData.substring(0, 8) + '...': cellData;
- $(td).html('' + innerHtml + '');
+ var innerHtml = cellData.length > 20 ? cellData.substring(0, 20) + '...': cellData;
+ $(td).html('' + innerHtml + '');
}},
- {targets: 6, createdCell: function (td, cellData) {
+ {targets: 5, createdCell: function (td, cellData) {
if (!cellData) {
$(td).html('')
} else {
$(td).html('')
}
}},
- {targets: 7, createdCell: function (td, cellData, rowData) {
+ {targets: 6, createdCell: function (td, cellData, rowData) {
var update_btn = '{% trans "Update" %}'.replace('99991937', cellData);
var del_btn = '{% trans "Delete" %}'.replace('99991937', cellData);
- if (rowData.id === 1) {
+ if (rowData.id === 1 || rowData.username == "admin") {
$(td).html(update_btn)
} else {
$(td).html(update_btn + del_btn)
}
}}],
- ajax_url: '{% url "users:user-bulk-update-api" %}',
- columns: [{data: function(){return ""}}, {data: "username" }, {data: "name" }, {data: "get_role_display" }, {data: "group_display" },
- {data: function(){return 999}}, {data: "active_display" }, {data: "id" }],
+ ajax_url: '{% url "api-users:user-list" %}',
+ columns: [{data: "id"}, {data: "username" }, {data: "name" }, {data: "get_role_display" },
+ {data: "groups_display" }, {data: "is_valid" }, {data: "id" }],
op_html: $('#actions').html()
};
- jumpserver.initDataTable(options);
+ var table = jumpserver.initDataTable(options);
+
+ $('.buttons-pdf').click(function () {
+ var users = [];
+ var rows = table.rows('.selected').data();
+ $.each(rows, function (index, obj) {
+ users.push(obj.id)
+ })
+ });
+
}).on('click', '#btn_bulk_update', function(){
var action = $('#slct_bulk_update').val();
- var $data_table = $('#user_list_table').DataTable()
+ var $data_table = $('#user_list_table').DataTable();
var id_list = [];
var plain_id_list = [];
$data_table.rows({selected: true}).every(function(){
@@ -101,8 +107,8 @@ $(document).ready(function(){
});
if (id_list === []) {
return false;
- };
- var the_url = "{% url 'users:user-bulk-update-api' %}";
+ }
+ var the_url = "{% url 'api-users:user-list' %}";
function doDeactive() {
var body = $.each(id_list, function(index, user_object) {
user_object['is_active'] = false;
@@ -155,7 +161,7 @@ $(document).ready(function(){
var $this = $(this);
function doDelete() {
var uid = $this.data('uid');
- var the_url = '{% url "users:user-patch-api" pk=99991937 %}'.replace('99991937', uid);
+ var the_url = '{% url "api-users:user-detail" pk=99991937 %}'.replace('99991937', uid);
var body = {};
var success = function() {
var msg = "{% trans 'User Deleted.' %}";
@@ -165,7 +171,7 @@ $(document).ready(function(){
var fail = function() {
var msg = "{% trans 'User Deleting failed.' %}";
swal("{% trans 'User Delete' %}", msg, "error");
- }
+ };
APIUpdateAttr({
url: the_url,
body: JSON.stringify(body),
@@ -208,15 +214,15 @@ $(document).ready(function(){
post_list.push(content);
});
if (post_list === []) {
- return false;
- };
- var the_url = "{% url 'users:user-bulk-update-api' %}";
+ return false
+ }
+ var the_url = "{% url 'api-users:user-list' %}";
var success = function() {
var msg = "{% trans 'The selected users has been updated successfully.' %}";
swal("{% trans 'User Updated' %}", msg, "success");
$('#user_list_table').DataTable().ajax.reload();
jumpserver.checked = false;
- }
+ };
APIUpdateAttr({url: the_url, method: 'PATCH', body: JSON.stringify(post_list), success: success});
$('#user_bulk_update_modal').modal('hide');
}).on('click', '#btn_user_import', function() {
@@ -229,13 +235,11 @@ $(document).ready(function(){
} else {
$('#user_import_modal').modal('hide');
var $data_table = $('#user_list_table').DataTable();
- toastr.success("{% trans 'Import User Success.' %}")
+ toastr.success("{% trans 'Import User Success.' %}");
$data_table.ajax.reload();
}
}
$form.ajaxSubmit({success: success});
-}).on('change', '#id_excel', function() {
- $(this).siblings('.help-block').remove();
})
{% endblock %}
diff --git a/apps/ops/templates/sudo/list.html b/apps/ops/templates/sudo/list.html
index b08a44b53..5168bed8d 100644
--- a/apps/ops/templates/sudo/list.html
+++ b/apps/ops/templates/sudo/list.html
@@ -1,34 +1,31 @@
{% extends '_base_list.html' %}
{% load i18n static %}
-{% block custom_head_css_js %}
-{{ block.super }}
-
+{% block table_search %}
+
{% endblock %}
-{% block table_search %}{% endblock %}
{% block table_container %}
-
+
-
+{# #}
+
|
- {% trans 'Name' %} |
- {% trans 'Username' %} |
+ {% trans 'Name' %} |
+ {% trans 'Username' %} |
{% trans 'Role' %} |
{% trans 'User group' %} |
- {% trans 'Asset num' %} |
- {% trans 'Active' %} |
+ {% trans 'Active' %} |
{% trans 'Action' %} |
@@ -65,34 +62,43 @@ $(document).ready(function(){
$(td).html(detail_btn.replace('99991937', rowData.id));
}},
{targets: 4, createdCell: function (td, cellData) {
- var innerHtml = cellData.length > 8 ? cellData.substring(0, 8) + '...': cellData;
- $(td).html('' + innerHtml + '');
+ var innerHtml = cellData.length > 20 ? cellData.substring(0, 20) + '...': cellData;
+ $(td).html('' + innerHtml + '');
}},
- {targets: 6, createdCell: function (td, cellData) {
+ {targets: 5, createdCell: function (td, cellData) {
if (!cellData) {
$(td).html('')
} else {
$(td).html('')
}
}},
- {targets: 7, createdCell: function (td, cellData, rowData) {
+ {targets: 6, createdCell: function (td, cellData, rowData) {
var update_btn = '{% trans "Update" %}'.replace('99991937', cellData);
var del_btn = '{% trans "Delete" %}'.replace('99991937', cellData);
- if (rowData.id === 1) {
+ if (rowData.id === 1 || rowData.username == "admin") {
$(td).html(update_btn)
} else {
$(td).html(update_btn + del_btn)
}
}}],
- ajax_url: '{% url "users:user-bulk-update-api" %}',
- columns: [{data: function(){return ""}}, {data: "username" }, {data: "name" }, {data: "get_role_display" }, {data: "group_display" },
- {data: function(){return 999}}, {data: "active_display" }, {data: "id" }],
+ ajax_url: '{% url "api-users:user-list" %}',
+ columns: [{data: "id"}, {data: "username" }, {data: "name" }, {data: "get_role_display" },
+ {data: "groups_display" }, {data: "is_valid" }, {data: "id" }],
op_html: $('#actions').html()
};
- jumpserver.initDataTable(options);
+ var table = jumpserver.initDataTable(options);
+
+ $('.buttons-pdf').click(function () {
+ var users = [];
+ var rows = table.rows('.selected').data();
+ $.each(rows, function (index, obj) {
+ users.push(obj.id)
+ })
+ });
+
}).on('click', '#btn_bulk_update', function(){
var action = $('#slct_bulk_update').val();
- var $data_table = $('#user_list_table').DataTable()
+ var $data_table = $('#user_list_table').DataTable();
var id_list = [];
var plain_id_list = [];
$data_table.rows({selected: true}).every(function(){
@@ -101,8 +107,8 @@ $(document).ready(function(){
});
if (id_list === []) {
return false;
- };
- var the_url = "{% url 'users:user-bulk-update-api' %}";
+ }
+ var the_url = "{% url 'api-users:user-list' %}";
function doDeactive() {
var body = $.each(id_list, function(index, user_object) {
user_object['is_active'] = false;
@@ -155,7 +161,7 @@ $(document).ready(function(){
var $this = $(this);
function doDelete() {
var uid = $this.data('uid');
- var the_url = '{% url "users:user-patch-api" pk=99991937 %}'.replace('99991937', uid);
+ var the_url = '{% url "api-users:user-detail" pk=99991937 %}'.replace('99991937', uid);
var body = {};
var success = function() {
var msg = "{% trans 'User Deleted.' %}";
@@ -165,7 +171,7 @@ $(document).ready(function(){
var fail = function() {
var msg = "{% trans 'User Deleting failed.' %}";
swal("{% trans 'User Delete' %}", msg, "error");
- }
+ };
APIUpdateAttr({
url: the_url,
body: JSON.stringify(body),
@@ -208,15 +214,15 @@ $(document).ready(function(){
post_list.push(content);
});
if (post_list === []) {
- return false;
- };
- var the_url = "{% url 'users:user-bulk-update-api' %}";
+ return false
+ }
+ var the_url = "{% url 'api-users:user-list' %}";
var success = function() {
var msg = "{% trans 'The selected users has been updated successfully.' %}";
swal("{% trans 'User Updated' %}", msg, "success");
$('#user_list_table').DataTable().ajax.reload();
jumpserver.checked = false;
- }
+ };
APIUpdateAttr({url: the_url, method: 'PATCH', body: JSON.stringify(post_list), success: success});
$('#user_bulk_update_modal').modal('hide');
}).on('click', '#btn_user_import', function() {
@@ -229,13 +235,11 @@ $(document).ready(function(){
} else {
$('#user_import_modal').modal('hide');
var $data_table = $('#user_list_table').DataTable();
- toastr.success("{% trans 'Import User Success.' %}")
+ toastr.success("{% trans 'Import User Success.' %}");
$data_table.ajax.reload();
}
}
$form.ajaxSubmit({success: success});
-}).on('change', '#id_excel', function() {
- $(this).siblings('.help-block').remove();
})
{% endblock %}
diff --git a/apps/ops/urls/__init__.py b/apps/ops/urls/__init__.py
deleted file mode 100644
index 8b1378917..000000000
--- a/apps/ops/urls/__init__.py
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/apps/ops/urls/api_urls.py b/apps/ops/urls/api_urls.py
deleted file mode 100644
index d0c6b5204..000000000
--- a/apps/ops/urls/api_urls.py
+++ /dev/null
@@ -1,7 +0,0 @@
-# coding:utf-8
-
-from django.conf.urls import url
-from rest_framework import routers
-
-
-
diff --git a/apps/ops/urls/views_urls.py b/apps/ops/urls/views_urls.py
deleted file mode 100644
index a29072e4f..000000000
--- a/apps/ops/urls/views_urls.py
+++ /dev/null
@@ -1,8 +0,0 @@
-# coding:utf-8
-
-from django.conf.urls import url
-from .. import views
-
-app_name = 'ops'
-
-
diff --git a/apps/templates/_nav.html b/apps/templates/_nav.html
index 4be5f8706..917a988ce 100644
--- a/apps/templates/_nav.html
+++ b/apps/templates/_nav.html
@@ -38,7 +38,8 @@
{% trans 'Terminal' %}
-
+
+
@@ -50,11 +51,6 @@
-
-
- {% trans 'Audits' %}
-
-
{% trans 'Audits' %}