diff --git a/adminer/db.inc.php b/adminer/db.inc.php index 1cb76ebd..401371c0 100644 --- a/adminer/db.inc.php +++ b/adminer/db.inc.php @@ -80,7 +80,7 @@ if ($adminer->homepage()) { foreach ($tables_list as $name => $type) { $view = ($type !== null && !preg_match('~table~i', $type)); echo '' . checkbox(($view ? "views[]" : "tables[]"), $name, in_array($name, $tables_views, true), "", "formUncheck('check-all');"); - echo '' . (support("table") ? '' . h($name) . '' : h($name)); + echo '' . (support("table") || support("indexes") ? '' . h($name) . '' : h($name)); if ($view) { echo '' . lang('View') . ''; echo '?'; @@ -95,7 +95,7 @@ if ($adminer->homepage()) { "Rows" => array("select", lang('Select data')), ) as $key => $link) { $id = " id='$key-" . h($name) . "'"; - echo ($link ? "" . (support("table") || $key == "Rows" + echo ($link ? "" . (support("table") || $key == "Rows" || (support("indexes") && $key != "Data_length") ? "?" : "?" ) : " "); diff --git a/adminer/include/adminer.inc.php b/adminer/include/adminer.inc.php index 729c7148..d2bbd118 100644 --- a/adminer/include/adminer.inc.php +++ b/adminer/include/adminer.inc.php @@ -128,8 +128,10 @@ username.form['auth[driver]'].onchange(); function selectLinks($tableStatus, $set = "") { echo '

" . lang('Indexes') . "

\n"; - $indexes = indexes($TABLE); - if ($indexes) { - echo "\n"; - foreach ($indexes as $name => $index) { - ksort($index["columns"]); // enforce correct columns order - $print = array(); - foreach ($index["columns"] as $key => $val) { - $print[] = "" . h($val) . "" - . ($index["lengths"][$key] ? "(" . $index["lengths"][$key] . ")" : "") - . ($index["descs"][$key] ? " DESC" : "") - ; - } - echo "
$index[type]" . implode(", ", $print) . "\n"; - } - echo "
\n"; - } - echo '

" . lang('Foreign keys') . "

\n"; - $foreign_keys = foreign_keys($TABLE); - if ($foreign_keys) { - echo "\n"; - echo "\n"; - foreach ($foreign_keys as $name => $foreign_key) { - echo ""; - echo "
" . lang('Source') . "" . lang('Target') . "" . lang('ON DELETE') . "" . lang('ON UPDATE') . " 
" . implode(", ", array_map('h', $foreign_key["source"])) . ""; - echo "" - . ($foreign_key["db"] != "" ? "" . h($foreign_key["db"]) . "." : "") . ($foreign_key["ns"] != "" ? "" . h($foreign_key["ns"]) . "." : "") . h($foreign_key["table"]) - . "" - ; - echo "(" . implode(", ", array_map('h', $foreign_key["target"])) . ")"; - echo "" . nbsp($foreign_key["on_delete"]) . "\n"; - echo "" . nbsp($foreign_key["on_update"]) . "\n"; - echo '' . lang('Alter') . ''; - } - echo "
\n"; - } - echo '

" . lang('Triggers') . "

\n"; - $triggers = triggers($TABLE); - if ($triggers) { +} + +if (!is_view($table_status)) { + if (support("indexes")) { + echo "

" . lang('Indexes') . "

\n"; + $indexes = indexes($TABLE); + if ($indexes) { echo "\n"; - foreach ($triggers as $key => $val) { - echo "
$val[0]$val[1]" . h($key) . "" . lang('Alter') . "\n"; + foreach ($indexes as $name => $index) { + ksort($index["columns"]); // enforce correct columns order + $print = array(); + foreach ($index["columns"] as $key => $val) { + $print[] = "" . h($val) . "" + . ($index["lengths"][$key] ? "(" . $index["lengths"][$key] . ")" : "") + . ($index["descs"][$key] ? " DESC" : "") + ; + } + echo "
$index[type]" . implode(", ", $print) . "\n"; } echo "
\n"; } - echo '

" . lang('Foreign keys') . "

\n"; + $foreign_keys = foreign_keys($TABLE); + if ($foreign_keys) { + echo "\n"; + echo "\n"; + foreach ($foreign_keys as $name => $foreign_key) { + echo ""; + echo "
" . lang('Source') . "" . lang('Target') . "" . lang('ON DELETE') . "" . lang('ON UPDATE') . " 
" . implode(", ", array_map('h', $foreign_key["source"])) . ""; + echo "" + . ($foreign_key["db"] != "" ? "" . h($foreign_key["db"]) . "." : "") . ($foreign_key["ns"] != "" ? "" . h($foreign_key["ns"]) . "." : "") . h($foreign_key["table"]) + . "" + ; + echo "(" . implode(", ", array_map('h', $foreign_key["target"])) . ")"; + echo "" . nbsp($foreign_key["on_delete"]) . "\n"; + echo "" . nbsp($foreign_key["on_update"]) . "\n"; + echo '' . lang('Alter') . ''; + } + echo "
\n"; + } + echo '

" . lang('Triggers') . "

\n"; + $triggers = triggers($TABLE); + if ($triggers) { + echo "\n"; + foreach ($triggers as $key => $val) { + echo "
$val[0]$val[1]" . h($key) . "" . lang('Alter') . "\n"; + } + echo "
\n"; + } + echo '