151 lines
4.6 KiB
PHP
151 lines
4.6 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Alternative SQL editing window
|
|
*
|
|
* $Id: history.php,v 1.3 2008/01/10 19:37:07 xzilla Exp $
|
|
*/
|
|
|
|
// Include application functions
|
|
include_once('./libraries/lib.inc.php');
|
|
|
|
$action = (isset($_REQUEST['action'])) ? $_REQUEST['action'] : '';
|
|
|
|
function doDefault() {
|
|
global $misc, $lang;
|
|
|
|
$onchange = "onchange=\"location.href='history.php?server=' + encodeURI(server.options[server.selectedIndex].value) + '&database=' + encodeURI(database.options[database.selectedIndex].value) + '&'\"";
|
|
|
|
$misc->printHeader($lang['strhistory']);
|
|
|
|
// Bring to the front always
|
|
echo "<body onload=\"window.focus();\">\n";
|
|
|
|
echo "<form action=\"history.php\" method=\"post\">\n";
|
|
$misc->printConnection($onchange);
|
|
echo "</form><br />";
|
|
|
|
if (!isset($_REQUEST['database'])) {
|
|
echo "<p>{$lang['strnodatabaseselected']}</p>\n";
|
|
return;
|
|
}
|
|
|
|
if (isset($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']])) {
|
|
include_once('classes/ArrayRecordSet.php');
|
|
|
|
$history = new ArrayRecordSet($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']]);
|
|
|
|
$columns = array(
|
|
'query' => array(
|
|
'title' => $lang['strsql'],
|
|
'field' => field('query'),
|
|
),
|
|
'paginate' => array(
|
|
'title' => $lang['strpaginate'],
|
|
'field' => field('paginate'),
|
|
'type' => 'yesno',
|
|
),
|
|
'actions' => array(
|
|
'title' => $lang['stractions'],
|
|
),
|
|
);
|
|
|
|
$actions = array(
|
|
'run' => array(
|
|
'title' => $lang['strexecute'],
|
|
'url' => "sql.php?{$misc->href}&nohistory=t&",
|
|
'vars' => array('query' => 'query', 'paginate' => 'paginate'),
|
|
'target' => 'detail',
|
|
),
|
|
'remove' => array(
|
|
'title' => $lang['strdelete'],
|
|
'url' => "history.php?{$misc->href}&action=confdelhistory&",
|
|
'vars' => array('queryid' => 'queryid'),
|
|
),
|
|
);
|
|
|
|
$misc->printTable($history, $columns, $actions, $lang['strnohistory']);
|
|
}
|
|
else echo "<p>{$lang['strnohistory']}</p>\n";
|
|
|
|
echo "<ul class=\"navlink\">\n";
|
|
if (isset($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']])
|
|
&& count($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']]))
|
|
echo "\t<li><a href=\"history.php?action=confclearhistory&{$misc->href}\">{$lang['strclearhistory']}</a></li>\n";
|
|
echo "\t<li><a href=\"history.php?action=history&{$misc->href}\">{$lang['strrefresh']}</a></li>\n</ul>\n";
|
|
}
|
|
|
|
function doDelHistory($qid, $confirm) {
|
|
global $misc, $lang;
|
|
|
|
if ($confirm) {
|
|
$misc->printHeader($lang['strhistory']);
|
|
|
|
// Bring to the front always
|
|
echo "<body onload=\"window.focus();\">\n";
|
|
|
|
echo "<h3>{$lang['strdelhistory']}</h3>\n";
|
|
echo "<p>{$lang['strconfdelhistory']}</p>\n";
|
|
|
|
echo "<pre>", htmlentities($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']][$qid]['query']), "</pre>";
|
|
echo "<form action=\"history.php\" method=\"post\">\n";
|
|
echo "<input type=\"hidden\" name=\"action\" value=\"delhistory\" />\n";
|
|
echo "<input type=\"hidden\" name=\"queryid\" value=\"$qid\" />\n";
|
|
echo $misc->form;
|
|
echo "<input type=\"submit\" name=\"yes\" value=\"{$lang['stryes']}\" />\n";
|
|
echo "<input type=\"submit\" name=\"no\" value=\"{$lang['strno']}\" />\n";
|
|
echo "</form>\n";
|
|
}
|
|
else
|
|
unset($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']][$qid]);
|
|
}
|
|
|
|
function doClearHistory($confirm) {
|
|
global $misc, $lang;
|
|
|
|
if ($confirm) {
|
|
$misc->printHeader($lang['strhistory']);
|
|
|
|
// Bring to the front always
|
|
echo "<body onload=\"window.focus();\">\n";
|
|
|
|
echo "<h3>{$lang['strclearhistory']}</h3>\n";
|
|
echo "<p>{$lang['strconfclearhistory']}</p>\n";
|
|
|
|
echo "<form action=\"history.php\" method=\"post\">\n";
|
|
echo "<input type=\"hidden\" name=\"action\" value=\"clearhistory\" />\n";
|
|
echo $misc->form;
|
|
echo "<input type=\"submit\" name=\"yes\" value=\"{$lang['stryes']}\" />\n";
|
|
echo "<input type=\"submit\" name=\"no\" value=\"{$lang['strno']}\" />\n";
|
|
echo "</form>\n";
|
|
}
|
|
else
|
|
unset($_SESSION['history'][$_REQUEST['server']][$_REQUEST['database']]);
|
|
}
|
|
|
|
|
|
switch ($action) {
|
|
case 'confdelhistory':
|
|
doDelHistory($_REQUEST['queryid'], true);
|
|
break;
|
|
case 'delhistory':
|
|
if (isset($_POST['yes'])) doDelHistory($_REQUEST['queryid'], false);
|
|
doDefault();
|
|
break;
|
|
case 'confclearhistory':
|
|
doClearHistory(true);
|
|
break;
|
|
case 'clearhistory':
|
|
if (isset($_POST['yes'])) doClearHistory(false);
|
|
doDefault();
|
|
break;
|
|
default:
|
|
doDefault();
|
|
}
|
|
|
|
// Set the name of the window
|
|
$misc->setWindowName('history');
|
|
$misc->printFooter();
|
|
|
|
?>
|