Hide hidden users from users table

* Show all users when entering "Edit mode"
* Hide hidden users when exiting "Edit mode"
This commit is contained in:
Jonathan Wong 2015-09-07 18:52:08 -07:00
commit 0036c35c11
4 changed files with 24 additions and 13 deletions

View file

@ -184,6 +184,13 @@ users_list_table_options = {
$('.edit-control').each(function () {
$(this).removeClass('hidden');
});
$('.edit-control > .edit-user-toggles').each(function () {
$(this).children('button.btn-danger').toggleClass('btn-warning').toggleClass('btn-danger');
});
$('.edit-user-control > .edit-user-name').each(function () {
$(this).children('a').addClass('hidden');
$(this).children('input').removeClass('hidden');
});
}
},
"preDrawCallback": function(settings) {

View file

@ -72,11 +72,15 @@
<script src="interfaces/default/js/tables/users.js"></script>
<script>
$(document).ready(function () {
filtered_users = true;
users_list_table_options.ajax = {
"url": "get_user_list",
type: "post",
data: function ( d ) {
return { 'json_data': JSON.stringify( d ) };
return {
'filtered_users': filtered_users,
'json_data': JSON.stringify(d)
};
}
}
@ -89,6 +93,8 @@
$('#users-to-delete').html('');
if ($(this).hasClass('active')) {
filtered_users = true;
users_list_table.ajax.reload();
if (users_to_purge.length > 0) {
$('.edit-control').each(function () {
$(this).find('button.btn-danger').toggleClass('btn-warning').toggleClass('btn-danger');
@ -129,14 +135,8 @@
} else {
users_to_purge = [];
$('.edit-control').each(function () {
$(this).find('button.btn-danger').toggleClass('btn-warning').toggleClass('btn-danger');
$(this).removeClass('hidden');
});
$('.edit-user-control > .edit-user-name').each(function () {
$(this).children('a').addClass('hidden');
$(this).children('input').removeClass('hidden');
});
filtered_users = false;
users_list_table.ajax.reload();
}
});
});

View file

@ -21,7 +21,7 @@ class Users(object):
def __init__(self):
pass
def get_user_list(self, kwargs=None):
def get_user_list(self, filtered_users=False, kwargs=None):
data_tables = datatables.DataTables()
columns = ['session_history.id',
@ -72,6 +72,9 @@ class Users(object):
rows = []
for item in users:
if filtered_users and item["show_user"] == 0:
continue
if item["media_type"] == 'episode' and item["parent_thumb"]:
thumb = item["parent_thumb"]
elif item["media_type"] == 'episode':

View file

@ -255,10 +255,11 @@ class WebInterface(object):
return serve_template(templatename="ip_address_modal.html", title="IP Address Details", data=ip_address)
@cherrypy.expose
def get_user_list(self, **kwargs):
def get_user_list(self, filtered_users=False, **kwargs):
filtered_users = filtered_users == 'true'
user_data = users.Users()
user_list = user_data.get_user_list(kwargs=kwargs)
user_list = user_data.get_user_list(filtered_users=filtered_users, kwargs=kwargs)
cherrypy.response.headers['Content-type'] = 'application/json'
return json.dumps(user_list)