Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Provide size of all databases in the overview

  • Loading branch information...
commit c369236333c3a8afc3c6469b418d538467769a5a 1 parent a710c28
@vrana authored
View
2  adminer/include/bootstrap.inc.php
@@ -88,7 +88,7 @@
session_write_close(); // improves concurrency if a user opens several pages at once, may be restarted later
}
-include "./include/connect.inc.php";
include "./include/editing.inc.php";
+include "./include/connect.inc.php";
$on_actions = "RESTRICT|NO ACTION|CASCADE|SET NULL|SET DEFAULT"; ///< @var string used in foreign_keys()
View
20 adminer/include/connect.inc.php
@@ -1,7 +1,6 @@
<?php
function connect_error() {
global $adminer, $connection, $token, $error, $drivers;
- $databases = array();
if (DB != "") {
header("HTTP/1.1 404 Not Found");
page_header(lang('Database') . ": " . h(DB), lang('Invalid database.'), true);
@@ -31,15 +30,25 @@ function connect_error() {
$collations = collations();
echo "<form action='' method='post'>\n";
echo "<table cellspacing='0' class='checkable' onclick='tableClick(event);' ondblclick='tableClick(event, true);'>\n";
- echo "<thead><tr>" . (support("database") ? "<td>&nbsp;" : "") . "<th>" . lang('Database') . "<td>" . lang('Collation') . "<td>" . lang('Tables') . "</thead>\n";
+ echo "<thead><tr>"
+ . (support("database") ? "<td>&nbsp;" : "")
+ . "<th>" . lang('Database')
+ . "<td>" . lang('Collation')
+ . "<td>" . lang('Tables')
+ . "<td>" . lang('Size') . " - <a href='" . h(ME) . "dbsize=1' onclick=\"return !ajaxSetHtml('" . js_escape(ME) . "script=connect');\">" . lang('Compute') . "</a>"
+ . "</thead>\n"
+ ;
- foreach ($databases as $db) {
+ $databases = ($_GET["dbsize"] ? count_tables($databases) : array_flip($databases));
+
+ foreach ($databases as $db => $tables) {
$root = h(ME) . "db=" . urlencode($db);
echo "<tr" . odd() . ">" . (support("database") ? "<td>" . checkbox("db[]", $db, in_array($db, (array) $_POST["db"])) : "");
echo "<th><a href='$root'>" . h($db) . "</a>";
$collation = nbsp(db_collation($db, $collations));
echo "<td>" . (support("database") ? "<a href='$root" . ($scheme ? "&amp;ns=" : "") . "&amp;database=' title='" . lang('Alter database') . "'>$collation</a>" : $collation);
- echo "<td align='right'><a href='$root&amp;schema=' id='tables-" . h($db) . "' title='" . lang('Database schema') . "'>?</a>";
+ echo "<td align='right'><a href='$root&amp;schema=' id='tables-" . h($db) . "' title='" . lang('Database schema') . "'>" . ($_GET["dbsize"] ? $tables : "?") . "</a>";
+ echo "<td align='right' id='size-" . h($db) . "'>" . ($_GET["dbsize"] ? db_size($db) : "?");
echo "\n";
}
@@ -59,9 +68,6 @@ function connect_error() {
}
page_footer("db");
- if ($databases) {
- echo "<script type='text/javascript'>ajaxSetHtml('" . js_escape(ME) . "script=connect');</script>\n";
- }
}
if (isset($_GET["status"])) {
View
16 adminer/include/editing.inc.php
@@ -505,3 +505,19 @@ function ob_gzencode($string) {
// ob_start() callback recieves an optional parameter $phase but gzencode() accepts optional parameter $level
return gzencode($string);
}
+
+/** Compute size of database
+* @param string
+* @return string formatted
+*/
+function db_size($db) {
+ global $connection;
+ if (!$connection->select_db($db)) {
+ return "?";
+ }
+ $return = 0;
+ foreach (table_status() as $table_status) {
+ $return += $table_status["Data_length"] + $table_status["Index_length"];
+ }
+ return number_format($return, 0, '.', lang(','));
+}
View
2  adminer/include/version.inc.php
@@ -1,2 +1,2 @@
<?php
-$VERSION = "4.0.4-dev";
+$VERSION = "4.1.0-dev";
View
2  adminer/lang/cs.inc.php
@@ -165,6 +165,8 @@
'Default values' => 'Výchozí hodnoty',
'Drop' => 'Odstranit',
'Are you sure?' => 'Opravdu?',
+ 'Size' => 'Velikost',
+ 'Compute' => 'Spočítat',
'Move up' => 'Přesunout nahoru',
'Move down' => 'Přesunout dolů',
'Remove' => 'Odebrat',
View
2  adminer/lang/xx.inc.php
@@ -165,6 +165,8 @@
'Default values' => 'xx',
'Drop' => 'xx',
'Are you sure?' => 'xx',
+ 'Size' => 'xx',
+ 'Compute' => 'xx',
'Move up' => 'xx',
'Move down' => 'xx',
'Remove' => 'xx',
View
3  adminer/script.inc.php
@@ -37,7 +37,8 @@
} else { // connect
foreach (count_tables($adminer->databases()) as $db => $val) {
- json_row("tables-" . js_escape($db), $val);
+ json_row("tables-$db", $val);
+ json_row("size-$db", db_size($db));
}
json_row("");
}
View
4 changes.txt
@@ -1,4 +1,6 @@
-Adminer 4.0.4-dev:
+Adminer 4.1.0-dev:
+Provide size of all databases in the overview
+Compute number of tables in the overview explicitly
Display edit form after error in clone or multi-edit
Display time of the select command
Improve gzip export ratio (bug #387)
Please sign in to comment.
Something went wrong with that request. Please try again.