Файл: CMS/core/admin/anek.php
Строк: 124
<?php
if (!defined('CMS')) { die('Access Denied!'); }
if (is_admin(array(101, 102))) {
if (!empty($_POST['add'])) { // Добавление анекдота
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
$text = !empty($_POST['text']) ? check($_POST['text']) : '';
if (!empty($text)) {
$last_id = (int) $db->query("INSERT INTO ?_anecdots SET `anek_text` = ?", $text);
if ($last_id > 0) {
del_vars('anecdots');
$inSes->addMessage('Анекдот успешно добавлен!', 'ok');
}
else $inSes->addMessage('Ошибка! Не удалось добавить анекдот!');
redirect('?m=anek&' . RND);
}
else $inSes->addMessage('Ошибка! Вы не ввели текст анекдота!');
}
else $inSes->addMessage('Неверный идентификатор сессии, повторите действие!');
}
if (!empty($_POST['edit'])) { // Редактирование анекдота
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
$text = !empty($_POST['text']) ? check($_POST['text']) : '';
if (!empty($text)) {
$row = array();
$row = $db->selectRow("SELECT * FROM ?_anecdots WHERE `anek_id` = ?", $id);
if (!empty($row)) {
$db->query("UPDATE ?_anecdots SET `anek_text` = ? WHERE `anek_id` = ?", $text, $id);
del_vars('anecdots');
$inSes->addMessage('Анекдот успешно отредактирован!', 'ok');
}
else $inSes->addMessage('Ошибка! Анекдот не найден!');
redirect('?m=anek&' . RND);
}
else $inSes->addMessage('Ошибка! Вы не ввели текст анекдота!');
}
else $inSes->addMessage('Неверный идентификатор сессии, повторите действие!');
}
if (!empty($_POST['del'])) { // Удаление анекдота
$del = intar($_POST['del']);
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
if (!empty($del)) {
$del = is_array($del) ? $del : array($del);
$del = implode(',', $del);
$db->query("DELETE FROM ?_anecdots WHERE `anek_id` IN (" . $del . ");");
del_vars('anecdots');
$inSes->addMessage('Выбранные анекдоты успешно удалены!', 'ok');
}
else $inSes->addMessage('Ошибка! Отсутствуют выбранные анекдоты!');
}
else $inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
redirect('?m=anek&' . RND);
}
if (!empty($_GET['cache'])) {
if (!empty($_GET['rnd']) && $_GET['rnd'] == $_SESSION['token']) {
del_vars('anecdots');
$row = $db->select("SELECT * FROM ?_anecdots;");
set_vars('anecdots', $row);
$inSes->addMessage('Кеш успешно обнавлен!', 'ok');
}
else $inSes->addMessage('Ошибка! Неверный идентификатор сессии, повторите действие!');
redirect('?m=anek&' . RND);
}
show_header('Управление анекдотами');
$onpage = !empty($config['blog_num']) ? num($config['blog_num']) : 10;
if ($page > 1) $from = ($page - 1) * $onpage; else $from = 0;
$rows = $db->selectPage($total, "SELECT * FROM ?_anecdots
ORDER BY `anek_id` DESC
LIMIT ?d, ?d", $from, $onpage );
if (!empty($rows) && $total > 0) {
echo '<form action="?m=anek&rnd=' . $_SESSION['token'] . '" method="post" name="anek">';
$i = $from + 1;
foreach($rows as $row) {
echo '<div class="b">' . $i++ . '. ';
echo nl2br(bb_code($row['anek_text']));
echo '<br /><input type="checkbox" name="del[]" value="' . num($row['anek_id']) . '" /> ';
echo '<a href="?m=anek&edit=' . num($row['anek_id']) . '&' . RND . '#form">Редактировать</a>';
echo '</div>';
}
echo '<div class="b">';
echo '<input type="checkbox" name="master_box" title="Отметить всё" onclick="javascript:ckeck_uncheck_all()">';
echo '<input type="submit" class="btns" value="Удалить выбранное" /></div></form>';
echo show_pages('?m=anek');
echo '<div class="b">Всего анекдотов: <b>' . $total . '</b><br /></div>';
}
else {
show_error('Анекдотов пока ещё нет!');
}
if (!empty($_GET['edit'])) {
$data = $db->selectRow("SELECT * FROM ?_anecdots WHERE `anek_id` = ? LIMIT 1", num($_GET['edit']));
if (!empty($data)) {
$form = new cmsForm('?m=anek&id=' . num($data['anek_id']) . '&rnd=' . $_SESSION['token'], 'post', ' id="form"');
$form->addTextarea('Анекдот:', 'text', $data['anek_text']);
echo $form->Submit(array('Изменить', 'Отмена'), array('edit', 'cancel'));
unset($form);
}
else show_error('Ошибка! Анекдот не найден!');
}
else if (!empty($_GET['add'])) {
$form = new cmsForm('?m=anek&rnd=' . $_SESSION['token'], 'post', ' id="form"');
$form->addTextarea('Анекдот:', 'text', request('text'));
echo $form->Submit(array('Добавить', 'Отмена'), array('add', 'cancel'));
unset($form);
}
else {
echo '<div class="b">';
echo icon('add.png') . ' <a href="?m=anek&add=1#form">Добавить анекдот</a><br />';
echo icon('mail.png') . ' <a href="?m=anek&cache=1&rnd=' . $_SESSION['token'] . '">Очистить кеш</a><br />';
echo '</div>';
}
echo <<<JSCRIPT
<script language='JavaScript' type="text/javascript">
<!--
function ckeck_uncheck_all() {
var frm = document.anek;
if(frm.master_box.checked == true){ frm.master_box.checked = false; }
else{ frm.master_box.checked = true; }
for (var i=0;i<frm.elements.length;i++) {
var elmnt = frm.elements[i];
if (elmnt.type=='checkbox') {
if(frm.master_box.checked == true){ elmnt.checked=false; }
else{ elmnt.checked=true; }
}
}
//if(frm.master_box.checked == true){ frm.master_box.checked = false; }
//else{ frm.master_box.checked = true; }
}
-->
</script>
JSCRIPT;
echo '<div class="b">' . icon('return.png') . ' <a href="?' . RND . '">В админку</a><br /></div>';
show_footer();
}
else {
redirect('/?' . RND);
}
?>