File size: 6.95Kb
<?php
include '../../engine/includes/start.php';
if (!$creator)
Core::stop();
$set['title'] = 'Главное меню';
include incDir.'head.php';
if (isset($_GET['move']))
{
$sql->query('SELECT `name`, `pos` FROM `main_menu` WHERE `id` = '.$id);
if ($sql->num_rows() == 0)
{
Core::msg_show('Пункт с id '.$id.' не найден');
include incDir.'foot.php';
}
$menu = $sql->fetch();
$new_pos = $_GET['move'] == 'up' ? $menu['pos'] - 1 : $menu['pos'] + 1;
$sql->query('UPDATE `main_menu` set `pos` = '.$menu['pos'].' WHERE `pos` = '.$new_pos);
$sql->query('UPDATE `main_menu` set `pos` = '.$new_pos.' WHERE `id` = '.$id);
Core::msg_show('Пункт '.$menu['name'].' перемещен', 'msg');
}
switch($act)
{
case 'edit':
$sql->query('SELECT * FROM `main_menu` WHERE `id` = '.$id);
if ($sql->num_rows() == 0)
{
Core::msg_show('Пункт с id '.$id.' не найден');
include incDir.'foot.php';
}
$menu = $sql->fetch();
if (isset($_POST['name']))
{
$sql->query("UPDATE `main_menu` SET
`name` = '".Core::form('name')."',
`link` = '".Core::form('link')."',
`file` = '".Core::form('file')."',
`icon` = '".Core::form('icon')."'
WHERE `id` = $id");
Core::msg_show('Пункт отредактирован', 'msg');
}
else
{
?>
<div class="menu_razd">Редактирование пункта <?=$menu['name']?></div>
<form method="post">
Название: (обязательно)<br />
<input type="text" name="name" value="<?=$menu['name']?>"/><br />
Ссылка:<br />
<input type="text" name="link" value="<?=$menu['link']?>"/><br />
Файл:<br />
<input type="text" name="file" value="<?=$menu['file']?>"/><br />
Иконка:<br />
<input type="text" name="icon" value="<?=$menu['icon']?>"/><br />
<input type="submit" value="Изменить"/>
</form>
<?php
}
echo '<a href="?" class="link">Вернутся в "Главное меню"</a>';
break;
case 'delete':
$sql->query('SELECT `name`, `pos` FROM `main_menu` WHERE `id` = '.$id);
if ($sql->num_rows() == 0)
{
Core::msg_show('Пункт с id '.$id.' не найден');
include incDir.'foot.php';
}
$menu = $sql->fetch();
if (isset($_GET['confirm']))
{
if (empty($_SESSION['main_menu_confirm_delete']) || $_SESSION['main_menu_confirm_delete'] != $_GET['confirm'])
{
Core::msg_show('Удаление не подтверждено, попробуйте еще раз');
}
else
{
$sql->query('DELETE FROM `main_menu` WHERE `id` = '.$id);
$sql->query('UPDATE `main_menu` SET `pos` = `pos` - 1 WHERE `pos` > '.$menu['pos']);
Core::msg_show('Пункт удален', 'msg');
}
}
else
{
$_SESSION['main_menu_confirm_delete'] = uniqid();
echo '
Вы действительно хотите удалить этот пункт ('.$menu['name'].')?<br />
<a href="?act=delete&id='.$id.'&confirm='.$_SESSION['main_menu_confirm_delete'].'">Да, удалить</a>';
}
echo '<a href="?" class="link">Вернутся в "Главное меню"</a>';
break;
case 'add':
if (isset($_POST['name']))
{
$pos = $sql->query('SELECT max(`pos`) from `main_menu`')->result() + 1; // получаем позицию нового пункта
$sql->query("INSERT INTO `main_menu` SET
`name` = '".Core::form('name')."',
`link` = '".Core::form('link')."',
`file` = '".Core::form('file')."',
`icon` = '".Core::form('icon')."',
`pos` = '$pos'");
Core::msg_show('Пункт добавлен', 'msg');
}
else
{
?>
<div class="menu_razd">Добавление пункта</div>
<form method="post">
Название: (обязательно)<br />
<input type="text" name="name"/><br />
Ссылка: (оставить пустым для разделителя)<br />
<input type="text" name="link"/><br />
Файл:<br />
<input type="text" name="file"/><br />
Иконка:<br />
<input type="text" name="icon" value="/style/icons/"/><br />
<input type="submit" value="Добавить"/>
</form>
<?php
}
echo '<a href="?" class="link">Вернутся в "Главное меню"</a>';
break;
default:
$pos = $sql->query('SELECT max(`pos`) from `main_menu`')->result();
$sql->query('SELECT * FROM `main_menu` ORDER BY `pos`');
if ($sql->num_rows() == 0)
{
Core::msg_show('Нет добавленных пунктов');
}
else
{
while($menu = $sql->fetch())
{
echo
'<div class="post">',
$menu['pos'] . ') ',
(!empty($menu['icon']) ? '<img style="float:right" src="' . str_replace('{theme}', $set['theme'], $menu['icon']) .'"/> ' : ''),
$menu['name'] . '<br />',
(!empty($menu['link']) ? 'Ссылка: ' . $menu['link'] . '<br />' : ''),
(!empty($menu['file']) ? 'Файл: ' . $menu['file'] . '<br />' : ''),
($menu['pos'] > 1 ? '<a href="?move=up&id='.$menu['id'].'">[ ↑ ]</a> ' : ''),
'[ <a href="?act=edit&id='.$menu['id'].'">изменить</a> ] | [ <a href="?act=delete&id='.$menu['id'].'">удалить</a> ]',
($menu['pos'] < $pos ? ' <a href="?move=down&id='.$menu['id'].'">[ ↓ ]</a>' : ''),
'</div>';
}
}
echo '<a href="?act=add" class="link">Добавить</a>';
break;
}
?>
<a href='/admin/?act=design' class="link">Персонализция</a>
<a href='/admin/' class="link">Админка</a>
<?php
include incDir.'foot.php';