126 lines
3.4 KiB
PHP
126 lines
3.4 KiB
PHP
<?php
|
|
/***************************************************************************
|
|
* For license information see doc/license.txt
|
|
*
|
|
* Unicode Reminder メモ
|
|
*
|
|
* Display some status information about the server and Opencaching
|
|
***************************************************************************/
|
|
|
|
require('./lib2/web.inc.php');
|
|
$tpl->name = 'query';
|
|
$tpl->menuitem = MNU_MYPROFILE_QUERIES;
|
|
|
|
$action = isset($_REQUEST['action']) ? $_REQUEST['action'] : 'view';
|
|
|
|
$login->verify();
|
|
if ($login->userid == 0)
|
|
$tpl->redirect('login.php?target=query.php');
|
|
|
|
if ($action == 'save')
|
|
{
|
|
$queryid = isset($_REQUEST['queryid']) ? $_REQUEST['queryid']+0 : 0;
|
|
$queryname = isset($_REQUEST['queryname']) ? $_REQUEST['queryname'] : '';
|
|
$submit = isset($_REQUEST['submit']) ? ($_REQUEST['submit'] == '1') : false;
|
|
|
|
savequery($queryid, $queryname, false, $submit, 0);
|
|
}
|
|
else if ($action == 'saveas')
|
|
{
|
|
$queryid = isset($_REQUEST['queryid']) ? $_REQUEST['queryid']+0 : 0;
|
|
$queryname = isset($_REQUEST['queryname']) ? $_REQUEST['queryname'] : '';
|
|
$submit = isset($_REQUEST['submit']) ? ($_REQUEST['submit'] == '1') : false;
|
|
$oldqueryid = isset($_REQUEST['oldqueryid']) ? $_REQUEST['oldqueryid']+0 : 0;
|
|
|
|
savequery($queryid, $queryname, true, $submit, $oldqueryid);
|
|
}
|
|
else if ($action == 'delete')
|
|
{
|
|
$queryid = isset($_REQUEST['queryid']) ? $_REQUEST['queryid']+0 : 0;
|
|
deletequery($queryid);
|
|
}
|
|
else // default: view
|
|
{
|
|
viewqueries();
|
|
}
|
|
|
|
function deletequery($queryid)
|
|
{
|
|
global $tpl, $login;
|
|
|
|
sql("DELETE FROM `queries` WHERE `id`='&1' AND `user_id`='&2' LIMIT 1", $queryid, $login->userid);
|
|
|
|
$tpl->redirect('query.php?action=view');
|
|
}
|
|
|
|
function viewqueries()
|
|
{
|
|
global $tpl, $login;
|
|
|
|
$tpl->assign('action', 'view');
|
|
|
|
$rs = sql("SELECT `id`, `name` FROM `queries` WHERE `user_id`='&1' ORDER BY `name` ASC", $login->userid);
|
|
$tpl->assign_rs('queries', $rs);
|
|
sql_free_result($rs);
|
|
|
|
$tpl->display();
|
|
}
|
|
|
|
function savequery($queryid, $queryname, $saveas, $submit, $saveas_queryid)
|
|
{
|
|
global $login, $tpl;
|
|
|
|
if ($submit == true)
|
|
{
|
|
// check if query exists
|
|
if (sql_value("SELECT COUNT(*) FROM `queries` WHERE `id`='&1'", 0, $queryid) == 0)
|
|
$tpl->error(ERROR_UNKNOWN);
|
|
|
|
if ($saveas == false)
|
|
{
|
|
$bError = false;
|
|
if ($queryname == '')
|
|
{
|
|
$tpl->assign('errorEmptyName', true);
|
|
$bError = true;
|
|
}
|
|
|
|
if (sql_value("SELECT COUNT(*) FROM `queries` WHERE `name`='&1' AND `user_id`='&2'", 0, $queryname, $login->userid) > 0)
|
|
{
|
|
$tpl->assign('errorNameExists', true);
|
|
$bError = true;
|
|
}
|
|
|
|
if ($bError == false)
|
|
{
|
|
// save
|
|
sql("UPDATE `queries` SET `user_id`='&1', `name`='&2' WHERE `id`='&3'", $login->userid, $queryname, $queryid);
|
|
$tpl->redirect('query.php?action=view');
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (sql_value("SELECT COUNT(*) FROM `queries` WHERE `id`='&1' AND `user_id`='&2'", 0, $saveas_queryid, $login->userid) == 0)
|
|
$tpl->assign('errorMustSelectQuery',true);
|
|
else
|
|
{
|
|
// save as
|
|
$oOptions = sql_value("SELECT `options` FROM `queries` WHERE `id`='&1'", array(), $queryid);
|
|
sql("UPDATE `queries` SET `options`='&1' WHERE `id`='&2'", $oOptions, $saveas_queryid);
|
|
|
|
$tpl->redirect('query.php?action=view');
|
|
}
|
|
}
|
|
}
|
|
|
|
$rs = sql("SELECT `id`, `name` FROM `queries` WHERE `user_id`='&1' ORDER BY `name` ASC", $login->userid);
|
|
$tpl->assign_rs('queries', $rs);
|
|
sql_free_result($rs);
|
|
|
|
$tpl->assign('queryid', $queryid);
|
|
$tpl->assign('queryname', $queryname);
|
|
|
|
$tpl->assign('action', 'save');
|
|
$tpl->display();
|
|
}
|
|
?>
|