Файл: rayb.me/ban.php
Строк: 62
<?php
require_once ('system/func.php');
$title = 'Бан';
require_once ('system/header.php');
auth(); // Закроем от гостей
antihack();
if($user['access'] <= 2){
header("Location: /");
exit;
}
$id = text($_GET['id']);
if(!$id) header("Location: /");
$opponent = mysqli_fetch_assoc(DB::Query("SELECT * FROM `users` WHERE `id` = '".$id."' LIMIT 1"));
if($user['access'] <= $opponent['access']){
header("Location: /profile/".$id."");
exit();
}elseif($id == $myID){
header("Location: /profile/");
exit();
}else{
if(isset($_GET['delete'])){
DB::Query("DELETE FROM `ban` WHERE `id` = '".text($_GET['delete'])."'");
$_SESSION['msg'] = "Нарушение успешно удалено";
header("Location: ?");
exit();
}
if(isset($_GET['ok']) && isset($_POST['text']) && isset($_POST['last'])){
$text = text($_POST['text']);
$last = num($_POST['last']);
$banes = text($_POST['banes']);
$ban = DB::Query('SELECT * FROM `ban` WHERE `id_user` = "'.$opponent['id'].'" AND `last` > "'.time().'" ORDER BY `id` DESC LIMIT 1');
$ban = mysqli_fetch_array($ban);
if(strlen($text) < 6 or strlen($text) > 300)$err = 'Длина причины должна быть в пределах 6-300 символов';
if($last < 1)$err = 'Время бана не может быть меньше часа';
if($ban)$err = 'Игрок уже забанен';
if(!$err){
DB::Query("INSERT INTO `ban` SET `id_user` = '".$id."', `id_admin` = '".$uid."', `last` = '".(time()+60*60*$last)."', `text` = '".$text."', `block` = '".$banes."'");
$_SESSION['msg'] = 'Бан выполнен';
header("Location: /ban/".$id."/");
exit();
}else{
$_SESSION['msg'] = $err;
header("Location: /ban/".$id."/");
exit();
}
}
echo "<div class='content'>";
echo "<p>Наложить бан на <b>".$opponent['login']."</b></p>";
echo "<form class='block' method='post' action='?ok'>";
echo "Причина бана:<br><input type='text' name='text' value = ''><br>";
echo "Время в часах:<br><input type='text' name='last' value = '1'><br>";
echo 'Вид бана:<br />';
echo '<select name="banes"><option value="0">Мут общения</option><option value="1">Закрыть доступ к игре</option></select><br/>';
echo "<input type='submit' class='btn' value='Выполнить бан'>";
echo "</form>";
echo "</div><hr/>";
echo "<div class='block'>";
$set['p_str'] = 10;
$k_post = DB::result(DB::Query("SELECT COUNT(*) FROM `ban` WHERE `id_user` = '".$id."'"),0);
$k_page = k_page($k_post,$set['p_str']);
$page = page($k_page);
$start = $set['p_str']*$page-$set['p_str'];
$q = DB::Query("SELECT * FROM `ban` WHERE `id_user` = '".$id."' ORDER BY `id` DESC LIMIT ".$start.", ".$set['p_str']."");
if($k_post == 0)echo "Нарушений ещё не было...";
while($post = mysqli_fetch_assoc($q)) {
$ank = mysqli_fetch_assoc(DB::Query("SELECT * FROM `users` WHERE `id` = '".$post['id_admin']."' ORDER BY `id` DESC LIMIT 1"));
echo "Выдал: ".icons_user($ank['id'])." <a href='/profile/".$ank['id']."'>".$ank['login']."</a> | <a href='?delete=".$post['id']."'>[х]</a><br/> Нарушение: ".text_msg($post['text'])."<br/>";
echo "Вид бана: ";
if($post['block'] == 1){
echo "Закрыт доступ в игру<br/>";
}else{
echo "Ограничен в общении<br/>";
}
if($post['last'] > time()){
echo "Активен: ".tl($post['last']-time());
}else{
echo "Не активен: ".vremja($post['last']);
}
echo "<hr>";
}
str('?',$k_page,$page); // Вывод страниц
echo "</div>";
}
require_once ('system/footer.php');
?>