mirror of
https://github.com/YunoHost-Apps/phpmyadmin_ynh.git
synced 2024-09-03 19:56:46 +02:00
140 lines
3.5 KiB
PHP
140 lines
3.5 KiB
PHP
|
<?php
|
||
|
/* vim: set expandtab sw=4 ts=4 sts=4: */
|
||
|
/**
|
||
|
* View manipulations
|
||
|
*
|
||
|
* @package PhpMyAdmin
|
||
|
*/
|
||
|
|
||
|
/**
|
||
|
*
|
||
|
*/
|
||
|
require_once './libraries/common.inc.php';
|
||
|
|
||
|
$pma_table = new PMA_Table($GLOBALS['table'], $GLOBALS['db']);
|
||
|
|
||
|
/**
|
||
|
* functions implementation for this script
|
||
|
*/
|
||
|
require_once 'libraries/operations.lib.php';
|
||
|
|
||
|
/**
|
||
|
* Runs common work
|
||
|
*/
|
||
|
require './libraries/tbl_common.inc.php';
|
||
|
$url_query .= '&goto=view_operations.php&back=view_operations.php';
|
||
|
$url_params['goto'] = $url_params['back'] = 'view_operations.php';
|
||
|
|
||
|
/**
|
||
|
* Gets tables informations
|
||
|
*/
|
||
|
|
||
|
require './libraries/tbl_info.inc.php';
|
||
|
$reread_info = false;
|
||
|
|
||
|
/**
|
||
|
* Updates if required
|
||
|
*/
|
||
|
if (isset($_REQUEST['submitoptions'])) {
|
||
|
$_message = '';
|
||
|
$warning_messages = array();
|
||
|
|
||
|
if (isset($_REQUEST['new_name'])) {
|
||
|
if ($pma_table->rename($_REQUEST['new_name'])) {
|
||
|
$_message .= $pma_table->getLastMessage();
|
||
|
$result = true;
|
||
|
$GLOBALS['table'] = $pma_table->getName();
|
||
|
$reread_info = true;
|
||
|
$reload = true;
|
||
|
} else {
|
||
|
$_message .= $pma_table->getLastError();
|
||
|
$result = false;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (isset($result)) {
|
||
|
// set to success by default, because result set could be empty
|
||
|
// (for example, a table rename)
|
||
|
$_type = 'success';
|
||
|
if (empty($_message)) {
|
||
|
$_message = $result
|
||
|
? __('Your SQL query has been executed successfully')
|
||
|
: __('Error');
|
||
|
// $result should exist, regardless of $_message
|
||
|
$_type = $result ? 'success' : 'error';
|
||
|
}
|
||
|
if (! empty($warning_messages)) {
|
||
|
$_message = new PMA_Message;
|
||
|
$_message->addMessages($warning_messages);
|
||
|
$_message->isError(true);
|
||
|
unset($warning_messages);
|
||
|
}
|
||
|
echo PMA_Util::getMessage(
|
||
|
$_message, $sql_query, $_type, $is_view = true
|
||
|
);
|
||
|
unset($_message, $_type);
|
||
|
}
|
||
|
|
||
|
$url_params['goto'] = 'view_operations.php';
|
||
|
$url_params['back'] = 'view_operations.php';
|
||
|
|
||
|
/**
|
||
|
* Displays the page
|
||
|
*/
|
||
|
?>
|
||
|
<!-- Table operations -->
|
||
|
<div class="operations_half_width">
|
||
|
<form method="post" action="view_operations.php">
|
||
|
<?php echo PMA_URL_getHiddenInputs($GLOBALS['db'], $GLOBALS['table']); ?>
|
||
|
<input type="hidden" name="reload" value="1" />
|
||
|
<fieldset>
|
||
|
<legend><?php echo __('Operations'); ?></legend>
|
||
|
|
||
|
<table>
|
||
|
<!-- Change view name -->
|
||
|
<tr><td><?php echo __('Rename view to'); ?></td>
|
||
|
<td><input type="text" size="20" name="new_name" onfocus="this.select()"
|
||
|
value="<?php echo htmlspecialchars($GLOBALS['table']); ?>"
|
||
|
required />
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</fieldset>
|
||
|
<fieldset class="tblFooters">
|
||
|
<input type="hidden" name="submitoptions" value="1" />
|
||
|
<input type="submit" value="<?php echo __('Go'); ?>" />
|
||
|
</fieldset>
|
||
|
</form>
|
||
|
</div>
|
||
|
<?php
|
||
|
$drop_view_url_params = array_merge(
|
||
|
$url_params,
|
||
|
array(
|
||
|
'sql_query' => 'DROP VIEW ' . PMA_Util::backquote($GLOBALS['table']),
|
||
|
'goto' => 'tbl_structure.php',
|
||
|
'reload' => '1',
|
||
|
'purge' => '1',
|
||
|
'message_to_show' => sprintf(
|
||
|
__('View %s has been dropped'),
|
||
|
htmlspecialchars($GLOBALS['table'])
|
||
|
),
|
||
|
'table' => $GLOBALS['table']
|
||
|
)
|
||
|
);
|
||
|
echo '<div class="operations_half_width">';
|
||
|
echo '<fieldset class="caution">';
|
||
|
echo '<legend>' . __('Delete data or table') . '</legend>';
|
||
|
|
||
|
echo '<ul>';
|
||
|
echo PMA_getDeleteDataOrTableLink(
|
||
|
$drop_view_url_params,
|
||
|
'DROP VIEW',
|
||
|
__('Delete the view (DROP)'),
|
||
|
'drop_view_anchor'
|
||
|
);
|
||
|
echo '</ul>';
|
||
|
echo '</fieldset>';
|
||
|
echo '</div>';
|
||
|
|