Compare commits

...

2 Commits

Author SHA1 Message Date
6c062ad532 Add Empty and Drop tabs to table view 2025-04-21 01:15:55 -07:00
cc1dc7a822 Enable spatial indexes for Aria 2025-04-21 01:03:11 -07:00
2 changed files with 33 additions and 5 deletions

View File

@@ -85,13 +85,12 @@ if (! $tbl_is_view && ! (isset($db_is_information_schema) && $db_is_information_
$tabs['operation']['link'] = 'tbl_operations.php';
$tabs['operation']['text'] = __('Operations');
}
if(PMA_Tracker::isActive()) {
$tabs['tracking']['icon'] = 'eye.png';
$tabs['tracking']['text'] = __('Tracking');
$tabs['tracking']['link'] = 'tbl_tracking.php';
}
if (! $tbl_is_view && ! (isset($db_is_information_schema) && $db_is_information_schema)) {
}
/**
* Views support a limited number of operations
@@ -102,6 +101,35 @@ if ($tbl_is_view && ! (isset($db_is_information_schema) && $db_is_information_sc
$tabs['operation']['text'] = __('Operations');
}
if (! $tbl_is_view && ! (isset($db_is_information_schema) && $db_is_information_schema)) {
$tabs['empty']['link'] = 'sql.php';
$tabs['empty']['args']['reload'] = 1;
$tabs['empty']['args']['sql_query'] = 'TRUNCATE TABLE ' . PMA_backquote($table);
$tabs['empty']['args']['zero_rows'] = sprintf(__('Table %s has been emptied'), htmlspecialchars($table));
$tabs['empty']['attr'] = 'onclick="return confirmLink(this, \'TRUNCATE TABLE ' . PMA_jsFormat($table) . '\')"';
$tabs['empty']['args']['goto'] = 'tbl_structure.php';
$tabs['empty']['class'] = 'caution';
$tabs['empty']['icon'] = 'b_empty.png';
$tabs['empty']['text'] = __('Empty');
if ($table_info_num_rows == 0) {
$tabs['empty']['warning'] = __('Table seems to be empty!');
}
$tabs['drop']['icon'] = 'b_deltbl.png';
$tabs['drop']['link'] = 'sql.php';
$tabs['drop']['url_params'] = array('table' => NULL);
$tabs['drop']['text'] = __('Drop');
$tabs['drop']['args']['reload'] = 1;
$tabs['drop']['args']['purge'] = 1;
$drop_command = 'DROP ' . ($tbl_is_view ? 'VIEW' : 'TABLE');
$tabs['drop']['args']['sql_query'] = $drop_command . ' ' . PMA_backquote($table);
$tabs['drop']['args']['goto'] = 'db_structure.php';
$tabs['drop']['args']['zero_rows'] = sprintf(($tbl_is_view ? __('View %s has been dropped') : __('Table %s has been dropped')), htmlspecialchars($table));
$tabs['drop']['attr'] = 'onclick="return confirmLink(this, \'' . $drop_command . ' ' . PMA_jsFormat($table) . '\')"';
unset($drop_command);
$tabs['drop']['class'] = 'caution';
}
if ($table_info_num_rows == 0 && !$tbl_is_view) {
$tabs['browse']['warning'] = __('Table seems to be empty!');
$tabs['search']['warning'] = __('Table seems to be empty!');

View File

@@ -429,10 +429,10 @@ while ($row = PMA_DBI_fetch_assoc($fields_rs)) {
'geometry', 'point', 'linestring', 'polygon', 'multipoint',
'multilinestring', 'multipolygon', 'geomtrycollection'
);
if (! in_array($type, $spatial_types) || 'MYISAM' != $tbl_type) {
$spatial_enabled = false;
} else {
if (in_array($type, $spatial_types) && ($tbl_type == 'MYISAM' || $tbl_type == 'ARIA' || $tbl_type == 'MARIA')) {
$spatial_enabled = true;
} else {
$spatial_enabled = false;
}
?>
<a <?php echo $spatial_enabled ? '' : ' class="disabled"'; ?>href="sql.php?<?php echo $url_query; ?>&amp;sql_query=<?php echo urlencode('ALTER TABLE ' . PMA_backquote($table) . ' ADD SPATIAL(' . PMA_backquote($row['Field']) . ')'); ?>&amp;message_to_show=<?php echo urlencode(sprintf(__('An index has been added on %s'), htmlspecialchars($row['Field']))); ?>">