Файл: moder.php
Строк: 417
<?php
require 'sid.php';
require 'config.php';
$link = connect_db();
list($user, $id, $ps) = check_login($link);
whorm(0, 'adminka');
include 'head.php';
if ($user['level'] < 1) {
header('Location: index.php?' . $ref);
exit();
}
$do = isset($_GET['do']) ? $_GET['do'] : NULL;
switch($do) {
// действия юзера
default:
echo $div_title . 'Модер-панель' . $div_end . $div_left;
if ($user['level'] == 1) {
echo '<b>Вы Модератор зоны обмена</b>
' . $block . '
» <a href="fo/admin.php?'.$ref.'">Управление З.О.</a>';
}
if ($user['level'] == 2) {
echo '<b>Вы Модератор чата</b>
' . $block . '
» <a href="moder.php?do=chat">Управление чатом</a>';
}
if ($user['level'] == 3) {
echo '<b>Вы Модератор форума</b>
' . $block . '
» <a href="forum/admin.php?'.$ref.'">Управление форумом</a>';
}
echo $div_end;
break;
case chat:
if ($user['level'] != 2) {
header('Location: moder.php?' . $ref);
die();
}
if (isset($_POST['set'])) {
$open_chat = my_int($_POST['open_chat']);
mysql_query("UPDATE `setting` SET `open_chat` = '$open_chat' WHERE `ids` = '1'");
echo ($open_chat == 1)
?
msg('Чат включен!')
:
msg('Чат выключен!');
}
$pr_open = mysql_fetch_array(mysql_query("SELECT `open_chat` FROM `setting` WHERE `ids` = '1'"));
if ($pr_open[0] == 1) $pr_set_1 = 'checked="checked"';
elseif ($pr_open[0] == 2) $pr_set_2 = 'checked="checked"';
echo $div_left . $div_title . 'Управление чатом' . $div_end . $div_razdel . '
» <a href="moder.php?do=add_rooms">Создание комнат</a><br/>
» <a href="moder.php?do=edit_rooms">Изменение комнат</a><br/>
» <a href="moder.php?do=del_rooms">Удаление комнат</a><br/>
» <a href="moder.php?do=clean_rooms">Очистка комнат</a><br/>
' . $div_end . '
<FORM method="POST" action="moder.php?do=chat">
<label>Чат</label>:<br/>
<input type="radio" name="open_chat" ' . $pr_set_1 . ' value="1"/> Вкл
<br/>
<input type="radio" name="open_chat" ' . $pr_set_2 . ' value="2"/> Выкл
<br/>
<input type="submit" name="set" value="Принять"/>
</FORM>
' . $div_end . $block;
break;
// Очистка комнат
case clean_rooms:
if ($user['level'] != 2) {
header('Location: moder.php?' . $ref);
die();
}
mysql_query('TRUNCATE `message`');
msg('Комнаты очищены!');
break;
// Создание комнат
case add_rooms:
if ($user['level'] != 2) {
header('Location: moder.php?' . $ref);
die();
}
if (isset($_POST['ok'])) {
$newroom = trim(mysql_real_escape_string(check($_POST['newroom'])));
$top = trim(mysql_real_escape_string(check($_POST['top'])));
$pos = my_int($_POST['pos']);
$bot = my_int($_POST['bot']);
$type = my_int($_POST['type']);
$empt = mysql_query("SELECT `id` FROM `rooms` WHERE `name` = '$newroom' LIMIT 1");
$em_pos = mysql_query("SELECT `pos` FROM `rooms` WHERE `pos` = '$pos' LIMIT 1");
if ($bot == 1) {
$umnik = 1;
$WhyBot = "`umnik`";
}
elseif ($bot == 2) {
$pizdun = 1;
$WhyBot = "`pizdun`";
}
elseif ($bot == 3) {
$barmen = 1;
$WhyBot = "`barmen`";
}
elseif ($bot == 4) {
$anagram = 1;
$WhyBot = "`anagram`";
}
elseif ($bot == 5) {
$bk = 1;
$WhyBot = "`bk`";
}
elseif ($bot == 6) {
$bk = 2;
$WhyBot = "`bk`";
}
if (!empty($bot)) $DoubleBot = mysql_query("SELECT `id` FROM `rooms` WHERE $WhyBot = '1' LIMIT 1");
if (!empty($type)) $DoubleType = mysql_query("SELECT `id` FROM `rooms` WHERE `type` = '$type' LIMIT 1");
if (!empty($type) && mysql_num_rows($DoubleType) != false) {
err('Комната с таким типом уже создана!');
} elseif (!empty($bot) && mysql_num_rows($DoubleBot) != false) {
err('Комната с этим ботом уже создана!');
} elseif (empty($newroom)) {
err('Пустое название комнаты!');
} elseif (empty($pos)) {
err('Пустая позиция комнаты!');
} elseif (mysql_num_rows($empt) != false) {
err('Комната с таким названием уже создана!');
} elseif (mysql_num_rows($em_pos) != false) {
err('Комната с такой позицией уже создана!');
} else {
mysql_query("INSERT INTO `rooms` SET
`name` = '$newroom',
`top` = '$top',
`pos` = '$pos',
`umnik` = '$umnik',
`pizdun` = '$pizdun',
`barmen` = '$barmen',
`anagram` = '$anagram',
`bk` = '$bk',
`type` = '$type'");
msg('Комната создана!');
}
}
$max = mysql_result(mysql_query("SELECT MAX(`pos`) FROM `rooms` LIMIT 1"), 0);
echo $div_left . $div_title . 'Создание комнат' . $div_end . '
<FORM method="POST" action="moder.php?do=add_rooms">
<label>Название комнаты</label>:<br/>
<input type="text" name="newroom"/>
<br/>
<label>Топ</label>:<br/>
<input type="text" name="top"/>
<br/>
<label>Позиция</label>:<br/>
<input type="text" size="2" maxlength="2" name="pos" value="'.($max + 1).'"/>
' . $block . '
<label>Тип</label>:<br/>
Обычная: <input type="radio" name="type" checked="checked" value="0"/><br/>
Беспредел: <input type="radio" name="type" value="1"/>
' . $block . '
<label>Посадить бота</label>:<br/>
Умник: <input type="radio" name="bot" value="1"/><br/>
Флудер: <input type="radio" name="bot" value="2"/><br/>
Бармен: <input type="radio" name="bot" value="3"/><br/>
Анаграмма: <input type="radio" name="bot" value="4"/><br/>
Рефери: клуб<input type="radio" name="bot" value="5"/> тренажерка<input type="radio" name="bot" value="6"/><br/>
<input type="submit" name="ok" value="Создать"/>
</FORM>' . $div_end;
break;
// удаление комнат
case del_rooms:
if ($user['level'] != 2) {
header('Location: moder.php?' . $ref);
die();
}
echo $div_title . 'Удалить комнаты' . $div_end . $div_left;
if (isset($_GET['x'])) {
$x = my_int($_GET['x']);
$room_em = mysql_query("SELECT * FROM `rooms` WHERE `id` = '$x' LIMIT 1");
if (mysql_num_rows($room_em) == false) {
err('Комнаты не существует!');
} else {
mysql_query("DELETE FROM `message` WHERE `room` = '$x'");
mysql_query("DELETE FROM `rooms` WHERE `id` = '$x' LIMIT 1");
msg('Комната удалена!');
}
}
$from = mysql_query("SELECT * FROM `rooms` ORDER BY `pos` ASC");
if (mysql_num_rows($from) != FALSE) {
while($q = mysql_fetch_assoc($from)) {
$d = '<a href="moder.php?do=del_rooms&x='.$q['id'].'"><img src="ico/delete.gif" alt=""/></a> ';
echo $d . $q['name'] . $block;
}
} else {
echo 'Комнаты не созданы!<br/>';
}
echo $div_end;
break;
// редактирование комнат
case edit_rooms:
if ($user['level'] != 2) {
header('Location: moder.php?' . $ref);
die();
}
if (isset($_POST['ed'])) {
$r = my_int($_REQUEST['r']);
$room_em = mysql_query("SELECT * FROM `rooms` WHERE `id` = '$r' LIMIT 1");
$newname = trim(mysql_real_escape_string(check($_POST['newname'])));
$top = trim(mysql_real_escape_string(check($_POST['top'])));
$bot = my_int($_POST['bot']);
$pos = my_int($_POST['pos']);
$type = my_int($_POST['type']);
$em_pos = mysql_query("SELECT `pos` FROM `rooms` WHERE `pos` = '$pos' AND `id` != '$r' LIMIT 1");
if ($bot == 1) {
$umnik = 1;
$WhyBot = "`umnik`";
}
elseif ($bot == 2) {
$pizdun = 1;
$WhyBot = "`pizdun`";
}
elseif ($bot == 3) {
$barmen = 1;
$WhyBot = "`barmen`";
}
elseif ($bot == 4) {
$anagram = 1;
$WhyBot = "`anagram`";
}
elseif ($bot == 5) {
$bk = 1;
$WhyBot = "`bk`";
}
elseif ($bot == 6) {
$bk = 2;
$WhyBot = "`bk`";
} else {
$umnik = 0;
$pizdun = 0;
$barmen = 0;
$anagram = 0;
$bk = 0;
}
if (isset($bot) && $bot < 5) $DoubleBot = mysql_query("SELECT `id` FROM `rooms` WHERE $WhyBot = '1' AND `id` != '$r' LIMIT 1");
if (isset($bot) && $bot >= 5) $DoubleBot = mysql_query("SELECT `id` FROM `rooms` WHERE $WhyBot = '$bk' AND `id` != '$r' LIMIT 1");
if (!empty($type)) $DoubleType = mysql_query("SELECT `id` FROM `rooms` WHERE `type` = '$type' AND `id` != '$r' LIMIT 1");
if (!empty($type) && mysql_num_rows($DoubleType) != false) {
err('Комната с таким типом уже создана!');
} elseif (!empty($bot) && mysql_num_rows($DoubleBot) != false) {
err('Комната с этим ботом уже создана!');
} elseif (mysql_num_rows($room_em) == false) {
err('Комнаты не существует!');
} elseif (empty($newname)) {
err('Пустое название комнаты!');
} elseif (empty($pos)) {
err('Пустая позиция комнаты!');
} elseif (mysql_num_rows($em_pos) != false) {
err('Комната с такой позицией уже создана!');
} else {
mysql_query("UPDATE `rooms` SET
`name` = '$newname',
`top` = '$top',
`pos` = '$pos',
`umnik` = '$umnik',
`pizdun` = '$pizdun',
`barmen` = '$barmen',
`anagram` = '$anagram',
`bk` = '$bk',
`type` = '$type'
WHERE `id` = '$r' LIMIT 1");
msg('Название комнаты изменено!');
}
}
if (isset($_GET['r'])) {
$r = my_int($_GET['r']);
$room_em = mysql_query("SELECT * FROM `rooms` WHERE `id` = '$r' LIMIT 1");
if (mysql_num_rows($room_em) == false) {
err('Комнаты не существует!');
} else {
$rname = mysql_fetch_assoc($room_em);
$whobot_0 = ($rname['umnik'] == 0 && $rname['pizdun'] == 0 && $rname['barmen'] == 0 && $rname['anagram'] == 0) ? 'checked="checked"' : '';
$whobot_1 = ($rname['umnik'] == 1) ? 'checked="checked"' : '';
$whobot_2 = ($rname['pizdun'] == 1) ? 'checked="checked"' : '';
$whobot_3 = ($rname['barmen'] == 1) ? 'checked="checked"' : '';
$whobot_4 = ($rname['anagram'] == 1) ? 'checked="checked"' : '';
$whobot_5 = ($rname['bk'] == 1) ? 'checked="checked"' : '';
$whobot_6 = ($rname['bk'] == 2) ? 'checked="checked"' : '';
$whytype_1 = ($rname['type'] == 0) ? 'checked="checked"' : '';
$whytype_2 = ($rname['type'] == 1) ? 'checked="checked"' : '';
echo $div_left . '<FORM method="POST" action="moder.php?do=edit_rooms">
<label>Название</label>:<br/>
<input type="text" name="newname" value="' . $rname['name'] . '"/>
<br/>
<label>Топик</label>:<br/>
<input type="text" name="top" value="' . $rname['top'] . '"/>
<br/>
<label>Позиция</label>:<br/>
<input type="text" name="pos" size="2" maxlength="2" value="' . $rname['pos'] . '"/>
' . $block . '
<label>Тип</label>:<br/>
Обычная: <input type="radio" name="type" ' . $whytype_1 . ' value="0"/><br/>
Беспредел: <input type="radio" name="type" ' . $whytype_2 . ' value="1"/>
' . $block . '
<label>Посадить бота</label>:<br/>
Выкл: <input type="radio" name="bot" ' . $whobot_0 . ' value="0"/><br/>
Умник: <input type="radio" name="bot" ' . $whobot_1 . ' value="1"/><br/>
Флудер: <input type="radio" name="bot" ' . $whobot_2 . ' value="2"/><br/>
Бармен: <input type="radio" name="bot" ' . $whobot_3 . ' value="3"/><br/>
Анаграмма: <input type="radio" name="bot" ' . $whobot_4 . ' value="4"/><br/>
Рефери: клуб<input type="radio" name="bot" ' . $whobot_5 . ' value="5"/> тренажерка<input type="radio" name="bot" ' . $whobot_6 . ' value="6"/><br/>
<input type="hidden" name="r" value="' . $rname['id'] . '"/>
<br/>
<input type="submit" name="ed" value="Изменить"/>
</FORM>' . $div_end;
include 'foot.php';
exit();
}
}
echo $div_title . 'Редактировать комнаты' . $div_end . $div_left;
$select = mysql_query("SELECT `id`, `name` FROM `rooms` ORDER BY `pos` ASC");
if (mysql_num_rows($select) != FALSE) {
echo $div_razdel . 'Выберите комнату:' . $div_end;
while($q = mysql_fetch_assoc($select)) {
echo '<a href="moder.php?do=edit_rooms&r='.$q['id'].'">' . $q['name'] . '</a><br/>' . $block;
}
} else {
echo 'Комнаты не созданы!<br/>';
}
echo $div_end;
break;
case us_adult:
$nick = my_int($_POST['nick']);
$adult = my_int($_POST['adult']);
if (!user_inf($nick)) {
header('Location: index.php?' . $ref);
die();
}
if ($nick != $user['id'] && $nick == 1 || user_inf($nick, 'level') == 1 || user_inf($nick, 'level') == 2 || user_inf($nick, 'level') == 3 || $user['level'] <= user_inf($nick, 'level') && $nick != $user['id']) {
err('У Вас нет прав для этого действия!');
include_once 'foot.php';
exit();
}
if ($adult == 1) header('Location: moder.php?do=bann&nk=' . $nick);
if ($adult == 2) header('Location: moder.php?do=bann_ip&nk=' . $nick);
if ($adult == 3) header('Location: moder.php?do=delus&nk=' . $nick);
die();
break;
// бан ника
case bann:
echo $div_title . 'Банн' . $div_end . $div_left;
$nk = my_int($_REQUEST['nk']);
if ($nk != $user['id'] && $nk == 1 || user_inf($nk, 'level') == 1 || user_inf($nk, 'level') == 2 || user_inf($nk, 'level') == 3 || $user['level'] <= user_inf($nk, 'level') && $nk != $user['id']) {
err('У Вас нет прав для этого действия!');
include 'foot.php';
exit();
}
if (!user_inf($nk)) {
err('Пользователь не найден!');
include 'foot.php';
exit();
}
if (!isset($_POST['ok'])) {
echo '<fieldset>
<form action="moder.php?do=bann" method="POST">
Ник|ID:
<br/>
<input type="text" name="nick" value="'.user_inf($nk, 'user').'" title="Ник|ID"/>
<br/>
Время:
<br/>
<input type="text" name="na" title="Время"/>
<br/>
<select name="vremja">
<option value="min">Минут</option>
<option value="chas">Часов</option>
<option value="sut">Суток</option>
<option value="mes">Месяцев</option>
</select>
<br/>
Причина:
<br/>
<input type="text" name="whykik" title="Причина"/>
<br/>
<input type="hidden" name="nk" value="' . $nk . '"/>
<input type="submit" name="ok" value="Блокировать"/>
</form>
</fieldset>';
} else {
if ($_POST['na'] < 1 || empty($_POST['na'])) {
err('Не указано время блокировки!');
} elseif (empty($_POST['whykik'])) {
err('Не указана причина блокировки!');
}
else
{
if ($_POST['vremja'] == 'min') $na = (int)$_POST['na'] * 60;
if ($_POST['vremja'] == 'chas') $na = (int)$_POST['na'] * 60 * 60;
if ($_POST['vremja'] == 'sut') $na = (int)$_POST['na'] * 60 * 60 * 24;
if ($_POST['vremja'] == 'mes') $na = (int)$_POST['na'] * 60 * 60 * 24 * 30;
$whykik = trim(mysql_real_escape_string(check($_POST['whykik'])));
$na = time() + $na;
// запись в логи
mysql_query("INSERT INTO `adm_logs` SET
`type` = 'bann_nick',
`user` = '$nk',
`who` = '$user[id]',
`date` = '" . time() . "'");
mysql_query("UPDATE `users` SET
`kik` = '$na',
`whokik` = '$user[id]',
`whykik` = '$whykik'
WHERE `id` = '$nk' LIMIT 1");
msg('Пользователь заблокирован на ' . kikt($na) . ' за ' . $whykik);
}
}
echo $div_end;
break;
// бан айпи
case bann_ip:
echo $div_title . 'Банн' . $div_end . $div_left;
$nk = my_int($_GET['nk']);
if ($nk != $user['id'] && $nk == 1 || user_inf($nk, 'level') == 1 || user_inf($nk, 'level') == 2 || user_inf($nk, 'level') == 3 || $user['level'] <= user_inf($nk, 'level') && $nk != $user['id']) {
err('У Вас нет прав для этого действия!');
include 'foot.php';
exit();
}
if (!user_inf($nk)) {
err('Пользователь не найден!');
include 'foot.php';
exit();
}
// запись в логи
mysql_query("INSERT INTO `adm_logs` SET
`type` = 'bann_ip',
`user` = '$nk',
`who` = '$user[id]',
`date` = '" . time() . "'");
mysql_query("INSERT INTO `bannlist` SET
`id` = '" . mt_rand(1000000, 9999999) . "',
`ip` = '" . long2ip(user_inf($nk, 'user_ip')) . "',
`who` = '" . user_inf($nk, 'id') . "'");
msg('IP пользователя заблокировано!');
echo $div_end;
break;
// удаление ника
case delus:
echo $div_title . 'Удалить ник' . $div_end . $div_left;
$nk = my_int($_GET['nk']);
if ($nk != $user['id'] && $nk == 1 || user_inf($nk, 'level') == 1 || user_inf($nk, 'level') == 2 || user_inf($nk, 'level') == 3 || $user['level'] <= user_inf($nk, 'level') && $nk != $user['id']) {
err('У Вас нет прав для этого действия!');
include 'foot.php';
exit();
}
if (!user_inf($nk)) {
err('Пользователь не найден!');
include_once 'foot.php';
exit();
}
// запись в логи
mysql_query("INSERT INTO `adm_logs` SET
`type` = 'delete',
`user` = '" . user_inf($nk, 'user') . "',
`who` = '$user[id]',
`date` = '" . time() . "'");
$albums = mysql_query("SELECT * FROM `albums` WHERE `user` = '$nk' LIMIT 1");
// удаление ника
mysql_query("DELETE FROM `users` WHERE `id` = '$nk' LIMIT 1");
// удаление его постов в чате
mysql_query("DELETE FROM `message` WHERE `who` = '$nk'");
// удаление его с баннлиста
mysql_query("DELETE FROM `bannlist` WHERE `who` = '$nk'");
// удаление его постов на форуме
mysql_query("DELETE FROM `f_message` WHERE `user` = '$nk'");
// удаление его писем
mysql_query("DELETE FROM `letters` WHERE `who` = '$nk' AND `idwho` = '$nk'");
// удаление его с друзей
mysql_query("DELETE FROM `friends` WHERE `user` = '$nk' AND `who` = '$nk'");
// удаление его с игнора
mysql_query("DELETE FROM `ignor` WHERE `user_id` = '$nk' AND `ig_id` = '$nk'");
// удаление его сообщений со стены
mysql_query("DELETE FROM `wall` WHERE `user` = '$nk' AND `who` = '$nk'");
// удаление его с "моих гостей"
mysql_query("DELETE FROM `my_guest` WHERE `user` = '$nk' AND `who` = '$nk'");
// удаление его записей с заметок
mysql_query("DELETE FROM `zametki` WHERE `user` = '$nk'");
// удаление его комментов к новостям
mysql_query("DELETE FROM `newscomm` WHERE `user` = '$nk'");
// удаление его записей в поддержке
mysql_query("DELETE FROM `support` WHERE `user` = '$nk'");
// удаление его комментов в поддержке
mysql_query("DELETE FROM `support_coms` WHERE `user` = '$nk'");
// удаление альбомов
if (mysql_num_rows($albums) != FALSE) {
while($a = mysql_fetch_assoc($albums)) {
// удаление фоток
if (file_exists($a['path'])) unlink($a['path']);
// удаление альбомов
mysql_query("DELETE FROM `albums` WHERE `user` = '$nk'");
}
}
msg('Пользователь удален!');
echo $div_end;
break;
}
echo '<b>« <a href="moder.php?'.$ref.'">Модер-панель</a></b>';
include 'foot.php';
?>