The user's table is now sorted after a new user is added. Moved common code for add user and copy user to a function
This commit is contained in:
@@ -94,6 +94,72 @@ function suggestPassword(passwd_form) {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* When a new user is created and retrieved over Ajax, append the user's row to
|
||||||
|
* the user's table
|
||||||
|
*
|
||||||
|
* @param new_user_string the html for the new user's row
|
||||||
|
* @param new_user_initial the first alphabet of the user's name
|
||||||
|
* @param new_user_initial_string html to replace the initial for pagination
|
||||||
|
*/
|
||||||
|
function appendNewUser(new_user_string, new_user_initial, new_user_initial_string) {
|
||||||
|
//Append the newly retrived user to the table now
|
||||||
|
|
||||||
|
//Calculate the index for the new row
|
||||||
|
var curr_last_row = $("#usersForm").find('tbody').find('tr:last');
|
||||||
|
var curr_last_row_index_string = $(curr_last_row).find('input:checkbox').attr('id').match(/\d+/)[0];
|
||||||
|
var curr_last_row_index = parseFloat(curr_last_row_index_string);
|
||||||
|
var new_last_row_index = curr_last_row_index + 1;
|
||||||
|
var new_last_row_id = 'checkbox_sel_users_' + new_last_row_index;
|
||||||
|
|
||||||
|
//Append to the table and set the id/names correctly
|
||||||
|
$(new_user_string)
|
||||||
|
.insertAfter($(curr_last_row))
|
||||||
|
.find('input:checkbox')
|
||||||
|
.attr('id', new_last_row_id)
|
||||||
|
.val(function() {
|
||||||
|
//the insert messes up the &27; part. let's fix it
|
||||||
|
return $(this).val().replace(/&/,'&');
|
||||||
|
})
|
||||||
|
.end()
|
||||||
|
.find('label')
|
||||||
|
.attr('for', new_last_row_id)
|
||||||
|
.end();
|
||||||
|
|
||||||
|
//Let us sort the table alphabetically
|
||||||
|
var rows = $("#usersForm").find('tbody tr').get();
|
||||||
|
|
||||||
|
$.each(rows, function(index, row) {
|
||||||
|
row.sortKey = $(row).find('label').text().toLowerCase();
|
||||||
|
})
|
||||||
|
|
||||||
|
rows.sort(function(a,b) {
|
||||||
|
if(a.sortKey < b.sortKey) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
if(a.sortKey > b.sortKey) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
})
|
||||||
|
|
||||||
|
$.each(rows, function(index, row) {
|
||||||
|
$('#usersForm').find('tbody').append(row);
|
||||||
|
row.sortKey = null;
|
||||||
|
})
|
||||||
|
|
||||||
|
//Re-check the classes of each row
|
||||||
|
$("#usersForm")
|
||||||
|
.find('tbody').find('tr:odd')
|
||||||
|
.removeClass('even').addClass('odd')
|
||||||
|
.end()
|
||||||
|
.find('tr:even')
|
||||||
|
.removeClass('odd').addClass('even');
|
||||||
|
|
||||||
|
$("#initials_table").find('td:contains('+new_user_initial+')')
|
||||||
|
.html(new_user_initial_string);
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add all AJAX scripts for server_privileges page here.
|
* Add all AJAX scripts for server_privileges page here.
|
||||||
*
|
*
|
||||||
@@ -145,39 +211,7 @@ $(document).ready(function() {
|
|||||||
$(notice_class).remove();
|
$(notice_class).remove();
|
||||||
}
|
}
|
||||||
|
|
||||||
//Append the newly retrived user to the table now
|
appendNewUser(data.new_user_string, data.new_user_initial, data.new_user_initial_string);
|
||||||
|
|
||||||
//Calculate the index for the new row
|
|
||||||
var curr_last_row = $("#usersForm").find('tbody').find('tr:last');
|
|
||||||
var curr_last_row_index_string = $(curr_last_row).find('input:checkbox').attr('id').match(/\d+/)[0];
|
|
||||||
var curr_last_row_index = parseFloat(curr_last_row_index_string);
|
|
||||||
var new_last_row_index = curr_last_row_index + 1;
|
|
||||||
var new_last_row_id = 'checkbox_sel_users_' + new_last_row_index;
|
|
||||||
|
|
||||||
//Append to the table and set the id/names correctly
|
|
||||||
$(data.new_user_string)
|
|
||||||
.insertAfter($(curr_last_row))
|
|
||||||
.find('input:checkbox')
|
|
||||||
.attr('id', new_last_row_id)
|
|
||||||
.val(function() {
|
|
||||||
//the insert messes up the &27; part. let's fix it
|
|
||||||
return $(this).val().replace(/&/,'&');
|
|
||||||
})
|
|
||||||
.end()
|
|
||||||
.find('label')
|
|
||||||
.attr('for', new_last_row_id)
|
|
||||||
.end();
|
|
||||||
|
|
||||||
//Re-check the classes of each row
|
|
||||||
$("#usersForm")
|
|
||||||
.find('tbody').find('tr:odd')
|
|
||||||
.removeClass('even').addClass('odd')
|
|
||||||
.end()
|
|
||||||
.find('tr:even')
|
|
||||||
.removeClass('odd').addClass('even');
|
|
||||||
|
|
||||||
$("#initials_table").find('td:contains('+data.new_user_initial+')')
|
|
||||||
.html(data.new_user_initial_string);
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
PMA_ajaxShowMessage(PMA_messages['strErrorProcessingRequest'] + " : "+data.error, "7000");
|
PMA_ajaxShowMessage(PMA_messages['strErrorProcessingRequest'] + " : "+data.error, "7000");
|
||||||
@@ -295,39 +329,7 @@ $(document).ready(function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(data.new_user_string) {
|
if(data.new_user_string) {
|
||||||
//Append the newly retrived user to the table now
|
appendNewUser(data.new_user_string, data.new_user_initial, data.new_user_initial_string);
|
||||||
|
|
||||||
//Calculate the index for the new row
|
|
||||||
var curr_last_row = $("#usersForm").find('tbody').find('tr:last');
|
|
||||||
var curr_last_row_index_string = $(curr_last_row).find('input:checkbox').attr('id').match(/\d+/)[0];
|
|
||||||
var curr_last_row_index = parseFloat(curr_last_row_index_string);
|
|
||||||
var new_last_row_index = curr_last_row_index + 1;
|
|
||||||
var new_last_row_id = 'checkbox_sel_users_' + new_last_row_index;
|
|
||||||
|
|
||||||
//Append to the table and set the id/names correctly
|
|
||||||
$(data.new_user_string)
|
|
||||||
.insertAfter($(curr_last_row))
|
|
||||||
.find('input:checkbox')
|
|
||||||
.attr('id', new_last_row_id)
|
|
||||||
.val(function() {
|
|
||||||
//the insert messes up the &27; part. let's fix it
|
|
||||||
return $(this).val().replace(/&/,'&');
|
|
||||||
})
|
|
||||||
.end()
|
|
||||||
.find('label')
|
|
||||||
.attr('for', new_last_row_id)
|
|
||||||
.end();
|
|
||||||
|
|
||||||
//Re-check the classes of each row
|
|
||||||
$("#usersForm")
|
|
||||||
.find('tbody').find('tr:odd')
|
|
||||||
.removeClass('even').addClass('odd')
|
|
||||||
.end()
|
|
||||||
.find('tr:even')
|
|
||||||
.removeClass('odd').addClass('even');
|
|
||||||
|
|
||||||
$("#initials_table").find('td:contains('+data.new_user_initial+')')
|
|
||||||
.html(data.new_user_initial_string);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if(data.new_privileges) {
|
if(data.new_privileges) {
|
||||||
|
Reference in New Issue
Block a user