Файл: soc-set/panel/spam.php
Строк: 50
<?php
require_once('../core/start.php');
check_auth();
if (privilegy('spam') == FALSE) {
header("Location: ".HOME."/panel/");
exit();
}
head('Система спама');
echo DIV_TITLE . 'Система спама' . CLOSE_DIV;
switch ($select) {
default:
echo DIV_BLOCK . '<b>Выберите раздел:</b>' . CLOSE_DIV;
$dialog = DB::$dbs->querySingle("SELECT COUNT(`id`) FROM ".SPAM." WHERE `type` = ? ", array('mail'));
echo DIV_LI . '<a href="'.HOME.'/panel/spam/dialog/">Диалоги</a>'.($dialog > 0 ? ' <b>[' . $dialog .']</b>' : NULL) . CLOSE_DIV;
break;
case 'dialog':
$all = DB::$dbs->querySingle("SELECT COUNT(`id`) FROM ".SPAM." WHERE `type` = ? ", array('mail'));
if (empty($all)) {
echo DIV_BLOCK . 'Список пуст' . CLOSE_DIV;
} else {
if (!empty($_POST['send'])) {
$post_id = abs(num($_POST['post_id']));
$post = DB::$dbs->queryFetch("SELECT * FROM ".SPAM." WHERE `id` = ? ",array($post_id));
if (empty($post)) {
DIV_BLOCK . 'Сообщение не найдено' . CLOSE_DIV;
} else {
switch ($_POST['dey']) {
case 1:
/* Удаляем сообщение */
DB::$dbs->query("DELETE FROM ".DIALOG_MSG." WHERE `id` = ? ",array($post['post_id']));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Сообщение удалено' . CLOSE_DIV;
break;
case 2:
/* Удалить сообщение и все похожие */
DB::$dbs->query("DELETE FROM ".DIALOG_MSG." WHERE `msg` LIKE '%".$post['msg']."%' && `user` = ? ",array($post['spam_user']));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Сообщения удалены' . CLOSE_DIV;
break;
case 3:
/* Удалить все сообщение от нарушителя */
DB::$dbs->query("DELETE FROM ".DIALOG_MSG." WHERE `user` = ? ",array($post['spam_user']));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Сообщения удалены' . CLOSE_DIV;
break;
case 4:
/* Разблокировать сообщение */
DB::$dbs->query("UPDATE ".DIALOG_MSG." SET `spam` = ? WHERE `id` = ? ",array('', $post['post_id']));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Сообщение разблокировано' . CLOSE_DIV;
break;
case 5:
/* Разблокировать сообщение и все похожие */
DB::$dbs->query("UPDATE ".DIALOG_MSG." SET `spam` = ? WHERE `id` = ? && `msg` LIKE '%".$post['msg']."%'",array('', $post['post_id']));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Сообщения разблокированы' . CLOSE_DIV;
break;
case 6:
/* Заблокировать нарушителя */
DB::$dbs->query("INSERT INTO ".BANN." (`user_id`, `moder`, `time_bann`, `prich`, `time`) VALUES (?, ?, ?, ?, ?)", array($post['spam_user'], $user['user_id'], (time() + 99999999), 'Рассылка спама.', time()));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Пользователь успешно заблокирован' . CLOSE_DIV;
break;
case 7:
/* Удалить нарушителя */
DB::$dbs->query("DELETE FROM ".USERS." WHERE `user_id` = ? ",array($post['spam_user']));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Пользователь успешно удален' . CLOSE_DIV;
break;
case 8:
/* Удалить нарушителя + удалить все от него */
# Удаление фотоальбомов/Фотографий
$sql = DB::$dbs->query("SELECT * FROM ".ALBUMS." WHERE `user_id` = ?", array($post['spam_user']));
while($album = $sql -> fetch()) {
$sql2 = DB::$dbs->query("SELECT * FROM ".ALBUMS_PHOTOS." WHERE `album_id` = ?", array($album['id']));
while($photo = $sql2 -> fetch()) {
@unlink('../album/'.$photo['url']);
}
DB::$dbs->query("DELETE FROM ".ALBUMS_PHOTOS." WHERE `album_id` = ? ",array($album['id']));
}
DB::$dbs->query("DELETE FROM ".ALBUMS." WHERE `user_id` = ? ",array($post['spam_user']));
# Чистка черного списка
DB::$dbs->query("DELETE FROM ".BLACKUSERS." WHERE `user_id` = ? ",array($post['spam_user']));
# Чистка в блоге
DB::$dbs->query("DELETE FROM ".BLOG." WHERE `user_id` = ? ",array($post['spam_user']));
DB::$dbs->query("DELETE FROM ".BLOG_COMM." WHERE `user_id` = ? ",array($post['spam_user']));
# Чистка сообщений в чате
DB::$dbs->query("DELETE FROM ".CHAT_MSG." WHERE `user_id` = ? ",array($post['spam_user']));
# Чистка сообщений в диалоге
DB::$dbs->query("DELETE FROM ".DIALOG_MSG." WHERE `user` = ? ",array($post['spam_user']));
# Удаление тем на форуме
DB::$dbs->query("DELETE FROM ".FORUMS_THEME." WHERE `user_id` = ? ",array($post['spam_user']));
# Чистка сообщений на форуме
DB::$dbs->query("DELETE FROM ".FORUMS_POST." WHERE `user_id` = ? ",array($post['spam_user']));
# Чистка сообщений в беседке
DB::$dbs->query("DELETE FROM ".GUESTBOOK." WHERE `user_id` = ? ",array($post['spam_user']));
# Чистка сообщений в личных гостевых
DB::$dbs->query("DELETE FROM ".GUEST." WHERE `autor_id` = ? ",array($post['spam_user']));
# Удаление пользователя
DB::$dbs->query("DELETE FROM ".USERS." WHERE `user_id` = ? ",array($post['spam_user']));
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Операция прошла успешно' . CLOSE_DIV;
break;
case 9:
/* Удаление уведомления */
DB::$dbs->query("DELETE FROM ".SPAM." WHERE `id` = ? ",array($post['id']));
echo DIV_BLOCK . 'Уведомление успешно удалено' . CLOSE_DIV;
break;
default:
echo DIV_BLOCK . 'Не известная операция' . CLOSE_DIV;
break;
}
}
}
$n = new Navigator($all,5,'');
$sql = DB::$dbs->query("SELECT * FROM ".SPAM." WHERE `type` = ? ORDER BY `id` DESC LIMIT {$n->start()}, 5", array('mail'));
while($post = $sql -> fetch()){
echo DIV_BLOCK;
echo '<b>Жалоба на сообщение:</b><br />' . text($post['msg']) . '<br /><br />'
. '<b>Уведомил(а):</b> ' . user_choice($post['user_id'], 'link') . '<br />'
. '<b>Нарушитель:</b> ' . user_choice($post['spam_user'], 'link') . '<br />'
. '<b>Дата:</b> ' . vrem($post['time']) . '<br /><br />'
. '<form action="#" method="POST">'
. '<select name="dey">'
. '<option value="0">Выбрать действие</option>'
. '<option value="1">Удалить сообщение</option>'
. '<option value="2">Удалить сообщение и все похожие</option>'
. '<option value="3">Удалить все сообщения от нарушителя</option>'
. '<option value="4">Разблокировать сообщение</option>'
. '<option value="5">Разблокировать сообщение и все похожие</option>'
. '<option value="6">Заблокировать нарушителя</option>'
. '<option value="7">Удалить нарушителя</option>'
. '<option value="8">Удалить нарушителя + удалить все от него</option>'
. '<option value="9">Удалить уведомление</option>'
. '</select><br />'
. '<input type="hidden" name="post_id" value="'.$post['id'].'"/>'
. '<input type="submit" name="send" value="Далее" />'
. '</form>';
echo CLOSE_DIV;
}
echo $n->navi();
}
break;
}
echo DIV_GO . '<a href="'.HOME.'/">Главная</a> / <a href="'.HOME.'/panel/">Панель управления</a> / <b>Система спама</b>' . CLOSE_DIV;
require_once('../core/stop.php');
?>