diff --git a/ChangeLog b/ChangeLog index b41d3fc374..80aeaf92e8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,7 @@ phpMyAdmin - ChangeLog 4.4.0.0 (not yet released) + rfe #1553 InnoDB presently supports one FULLTEXT index creation at a time ++ rfe #1562 Allow tracking multiple table at once from database level tracking page 4.3.0.0 (not yet released) + rfe #1502 Smart sorting for int keys diff --git a/db_tracking.php b/db_tracking.php index 8cd1075c53..fee85d924e 100644 --- a/db_tracking.php +++ b/db_tracking.php @@ -17,7 +17,7 @@ require_once './libraries/tracking.lib.php'; $response = PMA_Response::getInstance(); $header = $response->getHeader(); $scripts = $header->getScripts(); -$scripts->addFile('db_structure.js'); +$scripts->addFile('db_tracking.js'); /** * If we are not in an Ajax request, then do the common work and show the links etc. @@ -32,16 +32,51 @@ require 'libraries/db_info.inc.php'; // Work to do? // (here, do not use $_REQUEST['db] as it can be crafted) if (isset($_REQUEST['delete_tracking']) && isset($_REQUEST['table'])) { - PMA_Tracker::deleteTracking($GLOBALS['db'], $_REQUEST['table']); - /** - * If in an Ajax request, generate the success message and use - * {@link PMA_Response()} to send the output - */ - if ($GLOBALS['is_ajax_request'] == true) { - $response = PMA_Response::getInstance(); - $response->addJSON('message', PMA_Message::success()); - exit; + PMA_Tracker::deleteTracking($GLOBALS['db'], $_REQUEST['table']); + PMA_Message::success( + __('Tracking data deleted successfully.') + )->display(); + +} elseif (isset($_REQUEST['submit_create_version'])) { + + PMA_createTrackingForMultipleTables($_REQUEST['selected']); + PMA_Message::success( + sprintf( + __( + 'Version %1$s was created for selected tables,' + . ' tracking is active for them.' + ), + htmlspecialchars($_REQUEST['version']) + ) + )->display(); + +} elseif (isset($_REQUEST['submit_mult'])) { + + if (! empty($_REQUEST['selected_tbl'])) { + if ($_REQUEST['submit_mult'] == 'drop_tracking') { + + foreach ($_REQUEST['selected_tbl'] as $table) { + PMA_Tracker::deleteTracking($GLOBALS['db'], $table); + } + PMA_Message::success( + __('Tracking data deleted successfully.') + )->display(); + + } elseif ($_REQUEST['submit_mult'] == 'track') { + + echo PMA_getHtmlForDataDefinitionAndManipulationStatements( + 'db_tracking.php' . $url_query, + 0, + $GLOBALS['db'], + $_REQUEST['selected_tbl'] + ); + exit; + } + } else { + PMA_Message::notice( + __('No tables selected.') + )->display(); } } @@ -76,10 +111,15 @@ if ($GLOBALS['dbi']->numRows($all_tables_result) > 0) {