2 /* vim: set expandtab sw=4 ts=4 sts=4: */
7 if (! defined('PHPMYADMIN')) {
12 * Prepares the $column_order array
16 function PMA_getColumnOrder()
19 $column_order['DEFAULT_COLLATION_NAME'] = array(
20 'disp_name' => __('Collation'),
21 'description_function' => 'PMA_getCollationDescr',
23 'footer' => PMA_getServerCollation(),
25 $column_order['SCHEMA_TABLES'] = array(
26 'disp_name' => __('Tables'),
30 $column_order['SCHEMA_TABLE_ROWS'] = array(
31 'disp_name' => __('Rows'),
35 $column_order['SCHEMA_DATA_LENGTH'] = array(
36 'disp_name' => __('Data'),
40 $column_order['SCHEMA_INDEX_LENGTH'] = array(
41 'disp_name' => __('Indexes'),
45 $column_order['SCHEMA_LENGTH'] = array(
46 'disp_name' => __('Total'),
50 $column_order['SCHEMA_DATA_FREE'] = array(
51 'disp_name' => __('Overhead'),
60 * Builds the HTML td elements for one database to display in the list
61 * of databases from server_databases.php (which can be modified by
64 * @param array $current
65 * @param boolean $is_superuser
66 * @param string $checkall
67 * @param string $url_query
68 * @param array $column_order
69 * @param array $replication_types
70 * @param array $replication_info
72 * @return array $column_order, $out
74 function PMA_buildHtmlForDb($current, $is_superuser, $checkall, $url_query, $column_order, $replication_types, $replication_info)
78 if ($is_superuser ||
$GLOBALS['cfg']['AllowUserDropDatabase']) {
79 $out .= '<td class="tool">';
80 $out .= '<input type="checkbox" name="selected_dbs[]" title="' . htmlspecialchars($current['SCHEMA_NAME']) . '" value="' . htmlspecialchars($current['SCHEMA_NAME']) . '" ';
82 if (!PMA_is_system_schema($current['SCHEMA_NAME'], true)) {
83 $out .= (empty($checkall) ?
'' : 'checked="checked" ') . '/>';
85 $out .= ' disabled="disabled" />';
89 $out .= '<td class="name">'
91 . 'if (window.parent.openDb && window.parent.openDb(\'' . PMA_jsFormat($current['SCHEMA_NAME'], false) . '\')) return false;'
92 . '" href="index.php?' . $url_query . '&db='
93 . urlencode($current['SCHEMA_NAME']) . '" title="'
94 . sprintf(__('Jump to database'), htmlspecialchars($current['SCHEMA_NAME']))
95 . '" target="_parent">'
96 . ' ' . htmlspecialchars($current['SCHEMA_NAME'])
100 foreach ($column_order as $stat_name => $stat) {
101 if (array_key_exists($stat_name, $current)) {
102 if (is_numeric($stat['footer'])) {
103 $column_order[$stat_name]['footer'] +
= $current[$stat_name];
105 if ($stat['format'] === 'byte') {
106 list($value, $unit) = PMA_formatByteDown($current[$stat_name], 3, 1);
107 } elseif ($stat['format'] === 'number') {
108 $value = PMA_formatNumber($current[$stat_name], 0);
110 $value = htmlentities($current[$stat_name], 0);
112 $out .= '<td class="value">';
113 if (isset($stat['description_function'])) {
114 $out .= '<dfn title="' . $stat['description_function']($current[$stat_name]) . '">';
117 if (isset($stat['description_function'])) {
121 if ($stat['format'] === 'byte') {
122 $out .= '<td class="unit">' . $unit . '</td>';
126 foreach ($replication_types as $type) {
127 if ($replication_info[$type]['status']) {
128 $out .= '<td class="tool" style="text-align: center;">';
130 if (strlen(array_search($current["SCHEMA_NAME"], $replication_info[$type]['Ignore_DB'])) > 0) {
131 $out .= PMA_getIcon('s_cancel.png', __('Not replicated'));
133 $key = array_search($current["SCHEMA_NAME"], $replication_info[$type]['Do_DB']);
135 if (strlen($key) > 0 ||
($replication_info[$type]['Do_DB'][0] == "" && count($replication_info[$type]['Do_DB']) == 1)) {
136 // if ($key != null) did not work for index "0"
137 $out .= PMA_getIcon('s_success.png', __('Replicated'));
145 if ($is_superuser && !PMA_DRIZZLE
) {
146 $out .= '<td class="tool">'
148 . 'if (window.parent.setDb) window.parent.setDb(\'' . PMA_jsFormat($current['SCHEMA_NAME']) . '\');'
149 . '" href="./server_privileges.php?' . $url_query
150 . '&checkprivs=' . urlencode($current['SCHEMA_NAME'])
151 . '" title="' . sprintf(__('Check privileges for database "%s".'), htmlspecialchars($current['SCHEMA_NAME']))
154 . PMA_getIcon('s_rights.png', __('Check Privileges'))
157 return array($column_order, $out);