<?
/* Mixanza Production
* Дата последнего редактирования 10.06.2018
* Модифицировал Mixanza
*/
foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'user') as $inc) {
require_once "../../sys/inc/$inc.php";
}
only_reg();
$set['title'] = 'Бан';
include_once H . 'sys/inc/thead.php';
aut();
#Навигация
echo "<div class='card-header'>";
echo "<a href='/' data-toggle='tooltip' data-placement='right' title='" . lang('На главную') . "'><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='/info.php?id=$user[id]'>$user[nick]</a> <i class='fa fa-angle-right fa-fw'></i> <a href='/modules/mini_chat/'>мини чат</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo lang('Бан');
echo "</div>";
if (access('mini_chat_clear')){
$ank = $pdo->query("SELECT * FROM `user` WHERE `id` = '".intval($_GET['id'])."' LIMIT 1")->fetch(PDO::FETCH_ASSOC);
$ank=get_user($ank['id']);
if (isset($_GET['delete']))
{
$ban_info = $pdo->query(("SELECT * FROM `ban_mini_chat` WHERE `id_user` = '$ank[id]' AND `id` = '".intval($_GET['delete'])."'"))->fetch(PDO::FETCH_ASSOC);
$ank2 = $pdo->query(("SELECT * FROM `user` WHERE `id` = '$ban_info[id_ban]' LIMIT 1"))->fetch(PDO::FETCH_ASSOC);
$pdo->query("DELETE FROM `ban_mini_chat` WHERE `id` = '".intval($_GET['delete'])."' LIMIT 1");
admin_log('Пользователи','Бан',"Мини чат: удаление нарушения с пользователя '[url=/panel/ban.php?id=$ank[id]]$ank[nick][/url]'");
$_SESSION['message'] = 'Нарушение удалено';
header("Location: ?id=$ank[id]");
exit;
}
if (isset($_GET['unset']))
{
$ban_info = $pdo->query(("SELECT * FROM `ban_mini_chat` WHERE `id_user` = '$ank[id]' AND `id` = '".intval($_GET['unset'])."'"))->fetch(PDO::FETCH_ASSOC);
$ank2 = $pdo->query(("SELECT * FROM `user` WHERE `id` = '$ban_info[id_ban]' LIMIT 1"))->fetch(PDO::FETCH_ASSOC);
$pdo->query("UPDATE `ban_mini_chat` SET `time` = '$time', `navsegda` = '0' WHERE `id` = '".intval($_GET['unset'])."' LIMIT 1");
admin_log('Пользователи','Бан',"Мини чат: снятие бана пользователя '[url=/panel/ban.php?id=$ank[id]]$ank[nick][/url]'");
$_SESSION['message'] = 'Время бана обнулено';
header("Location: ?id=$ank[id]");
exit;
}
if (isset($_POST['ban_pr']))
{
$timeban=$time;
if ($_POST['vremja']=='min')$timeban+=intval($_POST['time'])*60;
if ($_POST['vremja']=='chas')$timeban+=intval($_POST['time'])*60*60;
if ($_POST['vremja']=='sut')$timeban+=intval($_POST['time'])*60*60*24;
if ($_POST['vremja']=='mes')$timeban+=intval($_POST['time'])*60*60*24*30;
if ($timeban<$time)$err[]='Ошибка времени бана';
if (!access('mini_chat_clear'))$timeban=min($timeban, $time+3600*24);
$pochemu = htmlspecialchars($_POST['pochemu']);
$post = htmlspecialchars($_POST['post']);
$navsegda = htmlspecialchars(isset($_POST['navsegda']));
$prich = htmlspecialchars($_POST['ban_pr']);
if (utf8_strlen($prich)>1024){$err[]='Сообщение слишком длинное';}
if (utf8_strlen($prich)<2){$err[]='Необходимо подробнее указать причину';}
if (!isset($err)){
$pdo->query("INSERT INTO `ban_mini_chat` (`status`, `id_user`, `id_ban`, `prich`, `time`, `pochemu`, `navsegda`) VALUES ('1', '$ank[id]', '$user[id]', '$prich', '$timeban', '$pochemu', '$navsegda')");
$pdo->query("UPDATE `mini_chat` SET `ban_private_comm` = '$post' WHERE `id_user` = '".$ank['id']."'");
admin_log('Пользователи','Бан',"Мини чат: бан пользователя '[url=/adm_panel/ban.php?id=$ank[id]]$ank[nick][/url]' до ".date::time($timeban)." по причине '$prich'");
$_SESSION['message'] = 'Пользователь успешно забанен';
header("Location: ?id=$ank[id]");
exit;
}
}
err();
aut();
$k_post = $pdo->query(("SELECT COUNT(*) FROM `ban_mini_chat` WHERE `id_user` = '$ank[id]'"),0)->fetchColumn();
$k_page=k_page($k_post,$set['p_str']);
$page=page($k_page);
$start=$set['p_str']*$page-$set['p_str'];
if ($k_post==0)
{
echo "<div class='list-group-item'>\n";
echo "Нет нарушений\n";
echo "</div>\n";
}
$q = $pdo->query("SELECT * FROM `ban_mini_chat` WHERE `id_user` = '$ank[id]' ORDER BY `time` DESC LIMIT $start, $set[p_str]");
while ($post = $q->fetch(PDO::FETCH_ASSOC))
{
echo "<div class='list-group-item'>\n";
$ank2 = $pdo->query(("SELECT * FROM `user` WHERE `id` = '$post[id_user]' LIMIT 1"))->fetch(PDO::FETCH_ASSOC);
echo user($ank2['id']);
echo "<br /><br />";
if ($post['navsegda']==1){ echo " <b>Время:</b> <font color=red><b>навсегда</b></font><br /><br />";} else {
if ($post['time']>$time && access('mini_chat_clear')){
echo "<b>Осталось:</b> " . date::time($post['time']) . "<br /><br />";
}else{
echo "<b>Осталось:</b> истекло<br /><br />";} }
if ($post['pochemu']==1){
$p = 'Спам/Реклама';
}elseif ($post['pochemu']==2){
$p = 'Мошенничество';
}elseif ($post['pochemu']==3){
$p = 'Нецензурная брань';
}elseif ($post['pochemu']==4){
$p = 'Клонирование ников';
}elseif ($post['pochemu']==5){
$p = 'Подстрекательство, провокация и побуждение к агрессии';
}elseif ($post['pochemu']==6){
$p = 'Флуд';
}elseif ($post['pochemu']==7){
$p = 'Флейм';
}elseif ($post['pochemu']==0){
$p = 'Другое';
}
echo '<b>Причина:</b> '.$p.'<br /><br />';
echo '<b>Комментарий:</b> '.esc(trim(br(bbcode(smiles(links(stripcslashes(htmlspecialchars($post['prich']))))))))."<br /><br />\n";
if ($post['time']>$time && access('mini_chat_clear'))
echo "<font color=red><b>Активен</b></font> | <a href='?id=$ank[id]&unset=$post[id]'>Снять бан</a> | \n";
echo "<a href='?id=$ank[id]&delete=$post[id]'>Удалить бан</a></div>";
echo "</div>\n";
}
if ($k_page>1)str('?id='.$ank['id'].'&',$k_page,$page); // Вывод страниц
echo "<form action=\"ban.php?id=$ank[id]&$passgen\" method=\"post\">\n";echo "<div class='list-group-item'><b>Причина:</b></div>";
echo "<div class='list-group-item'>";
echo "<input name='pochemu' type='radio' value='1' checked='checked'/> Спам/Реклама<br /><br />";
echo "<input name='pochemu' type='radio' value='2' /> Мошенничество<br /><br />";
echo "<input name='pochemu' type='radio' value='3' /> Нецензурная брань<br /><br />";
echo "<input name='pochemu' type='radio' value='4' /> Клонирование ников<br /><br />";
echo "<input name='pochemu' type='radio' value='5' /> Подстрекательство, провокация и побуждение к агрессии<br /><br />";
echo "<input name='pochemu' type='radio' value='6' /> Флуд<br /><br />";
echo "<input name='pochemu' type='radio' value='7' /> Флейм<br /><br />";
echo "<input name='pochemu' type='radio' value='0' /> Другое<br />";
echo "</div>";
echo "<div class='list-group-item'><b>Сообщения:</b></div>";
echo "<div class='list-group-item'>";
echo "<input name='post' type='radio' value='0' checked='checked'/> Показывать <br /><br />";
echo "<input name='post' type='radio' value='1' /> Скрыть<br />";
echo "</div>";
echo "<div class='list-group-item'><b>Комментарий:</b></div>\n";
echo "<div class='list-group-item'>";
echo "<textarea name=\"ban_pr\" class='form-control'></textarea>\n";
echo "</div>";
echo "<div class='list-group-item'><b>Время бана:</b></div>\n";
echo "<div class='list-group-item'>\n";
echo "<input class='form-control' style='width: 100px;' type='text' name='time' title='Время бана' value='10' maxlength='11' size='3' /><br />\n";
echo "<select class='form-control' style='width: 100px;' name=\"vremja\">\n";
echo "<option value='min'>Минуты</option>\n";
echo "<option ".(($k_post > 1)?'selected="selected" ':null)."value='chas'>Часы</option>\n";
echo "<option value='sut'>Сутки</option>\n";
echo "<option value='mes'".(access('mini_chat_clear')?null:' disabled="disabled"').">Месяцы</option>\n";
echo "</select><br />\n";echo "<label><input type='checkbox' name='navsegda' value='1' /> Навсегда</label><br />";
echo "<input type='submit' value='Забанить' class='knopka'/>\n";
echo "</form>\n";
echo "</div>\n";
}
else
{
echo "<div class='err'>Нет прав для того, чтобы забанить пользователя</div>\n";
}
include_once H . 'sys/inc/tfoot.php';
?>