diff --git a/libraries/DatabaseInterface.class.php b/libraries/DatabaseInterface.class.php index 3c7e668b45..128cf61ffc 100644 --- a/libraries/DatabaseInterface.class.php +++ b/libraries/DatabaseInterface.class.php @@ -478,6 +478,24 @@ class PMA_DatabaseInterface foreach ($tables as $one_database_name => $one_database_tables) { uksort($one_database_tables, 'strnatcasecmp'); + if ($sort_order == 'DESC') { + $one_database_tables = array_reverse($one_database_tables); + } + $tables[$one_database_name] = $one_database_tables; + } + } else if ($sort_by == 'Data_length') { // Size = Data_length + Index_length + foreach ($tables as $one_database_name => $one_database_tables) { + uasort( + $one_database_tables, + function($a, $b) { + $aLength = $a['Data_length'] + $a['Index_length']; + $bLength = $b['Data_length'] + $b['Index_length']; + return ($aLength == $bLength) + ? 0 + : ($aLength < $bLength) ? -1 : 1; + } + ); + if ($sort_order == 'DESC') { $one_database_tables = array_reverse($one_database_tables); }