diff options
author | Rouslan Placella <rouslan@placella.com> | 2012-06-15 22:46:43 +0400 |
---|---|---|
committer | Rouslan Placella <rouslan@placella.com> | 2012-06-15 23:37:41 +0400 |
commit | aac6a9e5bd652d9eb27077490b2d47c932efa3d4 (patch) | |
tree | 152ac96b8bccf65f50508ba88b71a3517b77ee94 | |
parent | 0954bfbd46c90bcc7de3ed578671d29204c4806e (diff) |
Don't refresh the whole list when dropping databases in server_databases.php
(Avoids pointless AJAX request)
-rw-r--r-- | js/server_databases.js | 13 | ||||
-rw-r--r-- | server_databases.php | 4 |
2 files changed, 13 insertions, 4 deletions
diff --git a/js/server_databases.js b/js/server_databases.js index 14684279f0..9443ca01a4 100644 --- a/js/server_databases.js +++ b/js/server_databases.js @@ -31,6 +31,7 @@ $(function() { */ var selected_dbs = []; $form.find('input:checkbox:checked').each(function () { + $(this).closest('tr').addClass('removeMe'); selected_dbs[selected_dbs.length] = 'DROP DATABASE `' + escapeHtml($(this).val()) + '`;'; }); if (! selected_dbs.length) { @@ -55,12 +56,20 @@ $(function() { $.post(url, function(data) { if(data.success == true) { PMA_ajaxShowMessage(data.message); + + var $rowsToRemove = $form.find('tr.removeMe'); + var $databasesCount = $('#databases_count'); + var newCount = parseInt($databasesCount.text()) - $rowsToRemove.length; + $databasesCount.text(newCount); + + $rowsToRemove.remove(); + $form.find('tbody').PMA_sort_table('.name'); if (window.parent && window.parent.frame_navigation) { window.parent.frame_navigation.location.reload(); } - $('#tableslistcontainer').load('server_databases.php form#dbStatsForm'); } else { - PMA_ajaxShowMessage(PMA_messages.strErrorProcessingRequest + ": " + data.error, false); + $form.find('tr.removeMe').removeClass('removeMe'); + PMA_ajaxShowMessage(data.error, false); } }); // end $.post() }); // end $.PMA_confirm() diff --git a/server_databases.php b/server_databases.php index a15e2cd178..5c30955b65 100644 --- a/server_databases.php +++ b/server_databases.php @@ -246,7 +246,7 @@ if ($databases_count > 0) { } // end foreach ($databases as $key => $current) unset($current, $odd_row); - echo '<tr id="db_summary_row">' . "\n"; + echo '</tbody><tfoot><tr id="db_summary_row">' . "\n"; if ($is_superuser || $cfg['AllowUserDropDatabase']) { echo ' <th></th>' . "\n"; } @@ -285,7 +285,7 @@ if ($databases_count > 0) { echo ' <th></th>' . "\n"; } echo '</tr>' . "\n"; - echo '</tbody>' . "\n" + echo '</tfoot>' . "\n" .'</table>' . "\n"; unset($column_order, $stat_name, $stat, $databases, $table_columns); |