View file xmyx.ru/adm/banan.php

File size: 12.01Kb
<?
include_once '../sys/inc/start.php';
include_once '../sys/inc/compress.php';
include_once '../sys/inc/sess.php';
include_once '../sys/inc/home.php';
include_once '../sys/inc/settings.php';
include_once '../sys/inc/db_connect.php';
include_once '../sys/inc/ipua.php';
include_once '../sys/inc/fnc.php';
include_once '../sys/inc/user.php';

if (!user_access('user_ban_set') && !user_access('user_ban_set_h') && !user_access('user_ban_unset')){
	header("Location: /?".SID);
	exit;
}

if (isset($_GET['id'])) { 
    $ank['id'] = intval($_GET['id']);
} 
else {

$set['title'] = "Баним юзера";
include_once '../sys/inc/thead.php';

shapka_VK(true, '/adm/', 'Баним юзера');  


if (isset($_POST['cfms'])){

$id = intval($_POST['id']);

if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '$id' LIMIT 1"),0) == 0)
	$err[] = 'Юзер с таким ID не обнаружен!';

if(!preg_match("#^([0-9\ ])+$#ui", $_POST['id']))
	$err[] = 'Разрешено вводить только цифры!';

if (!$err){    
	header("Location: banan.php?id=".$id."");
	exit; 
}

}

?>
<div class="basisDefault">
<div class="basisDefault__row">
<div class="Pad">
<?
uvedom();

if (isset($err)){
?>
<div class="Row Row_style_tinyPaddingBottom"><div class="Pad__alert Alert Alert_theme_warning">
<?
	err();
?>
</div></div>
<?
}
?>
<div class="Pad__header Row"><h3 class="Pad__title">Введите ID юзера, которого будем банить:</h3></div>
<div class="Pad__content">
<form action="banan.php" method="POST">
<div class="Row">
<label class="Input Input_prefixed">
<div class="Input__prefix Input__prefix_gray">http://xmyx.ru/id</div>
<div class="Input__nativeWrap"><input class="Input__native" name="id" value="" autocapitalize="off"></div>
</label>
</div>
<div class="Row Row_style_tinyPaddingTop"><button class="Btn Btn_theme_regular" name="cfms" type="submit">Продолжить</button></div>
</form>
</div></div></div>
</div>
<?

include_once H.'sys/inc/tfoot.php';
exit;
}

if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '$ank[id]' LIMIT 1"),0) == 0){
	header("Location: /");
	exit;
}

$ank = get_user($ank['id']);
$ank['nick'] = u_nick($ank['id']);

if ($user['level'] <= $ank['level'])
{
    header("Location: /?".SID);
    exit;
}

$set['title'] = 'Бан пользователя '.$ank['nick'];
include_once '../sys/inc/thead.php'; 

shapka_VK(true, '/adm/', 'Бан '.$ank['nick'].''); 


if (isset($_GET['delete']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `ban` WHERE `id_user` = '$ank[id]' AND `id` = '".intval($_GET['delete'])."'"),0) && user_access('user_ban_unset'))
{
    $ban_info = mysql_fetch_assoc(mysql_query("SELECT * FROM `ban` WHERE `id_user` = '$ank[id]' AND `id` = '".intval($_GET['delete'])."'"));
    $ank2 = mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `id` = '$ban_info[id_ban]' LIMIT 1"));
    
    if (($user['level']>$ank2['level'] || $user['id'] == $ank2['id']) || $user['level'] == 4)
    {
        mysql_query("DELETE FROM `ban` WHERE `id` = '".intval($_GET['delete'])."' LIMIT 1");
        $_SESSION['message'] = 'Нарушение юзера удалено.';
        header("Location: ?id=$ank[id]");
        exit;
    }
    else
    $err[] = 'Ошибка! У Вас нет прав!';
}

if (isset($_GET['unset']) && mysql_result(mysql_query("SELECT COUNT(*) FROM `ban` WHERE `id_user` = '$ank[id]' AND `id` = '".intval($_GET['unset'])."'"),0) && user_access('user_ban_unset'))
{
    $ban_info = mysql_fetch_assoc(mysql_query("SELECT * FROM `ban` WHERE `id_user` = '$ank[id]' AND `id` = '".intval($_GET['unset'])."'"));
    $ank2 = mysql_fetch_assoc(mysql_query("SELECT * FROM `user` WHERE `id` = '$ban_info[id_ban]' LIMIT 1"));
    
    if (($user['level'] > $ank2['level'] || $user['id'] == $ank2['id']) || $user['level'] == 4)
    {
        mysql_query("UPDATE `ban` SET `time` = '$time', `navsegda` = '0' WHERE `id` = '".intval($_GET['unset'])."' LIMIT 1");
        $_SESSION['message'] = 'Время бана юзера обнулено.';
        header("Location: ?id=$ank[id]");
        exit;
    }
    else
    $err[] = 'Ошибка! У Вас нет прав!';
}

if (isset($_POST['ban_pr']) && isset($_POST['time']) && isset($_POST['vremja']) && (user_access('user_ban_set') || user_access('user_ban_set_h')))
{
    $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 (!user_access('user_ban_set'))$timeban=min($timeban, $time+3600*24);

    $pochemu = (isset($_POST['pochemu']) ? (int) $_POST['pochemu'] : '0');
    
    $navsegda = abs(intval($_POST['navsegda']));

    $prich = $_POST['ban_pr'];

    if (strlen2($prich)>1024){$err[]='Сообщение слишком длинное.';}
    if (strlen2($prich)<10){$err[]='Необходимо подробнее указать причину.';}

    $prich = my_esc($prich);

    if (!isset($err)) {
        mysql_query("INSERT INTO `ban` (`id_user`, `id_ban`, `prich`, `time`, `pochemu`, `razdel`, `post`, `navsegda`) VALUES ('$ank[id]', '$user[id]', '$prich', '$timeban', '$pochemu', 'all', '0', '$navsegda')");
        
        $_SESSION['message'] = 'Пользователь успешно забанен.';
        header("Location: ?id=$ank[id]");
        exit;
    }
}

?>
<div class="basisDefault">
<div class="basisDefault__row">
<div class="Pad Pad_noCapsTitle">
<?

uvedom();
err();


$k_post = mysql_result(mysql_query("SELECT COUNT(*) FROM `ban` WHERE `id_user` = '$ank[id]'"),0);
$k_page = k_page($k_post,$set['p_str']);
$page = page($k_page);
$start = $set['p_str']*$page-$set['p_str'];



$q = mysql_query("SELECT * FROM `ban` WHERE `id_user` = '$ank[id]' ORDER BY `time` DESC LIMIT $start, $set[p_str]");

while ($post = mysql_fetch_assoc($q))
{

    $ank2 = get_user($post['id_ban']);
    $ank2['nick'] = u_nick($ank2['id']);


$my_age_day = array('год', 'года', 'лет');

// Определяем сколько лет	
$ank2['ank_age'] = null;
if ($ank2['ank_d_r'] != NULL && $ank2['ank_m_r'] != NULL && $ank2['ank_g_r'] != NULL){
	$ank2['ank_age'] = date("Y")-$ank2['ank_g_r'];
	if (date("n") < $ank2['ank_m_r'])
	$ank2['ank_age'] = $ank2['ank_age'] - 1;
	elseif (date("n") == $ank2['ank_m_r']&& date("j") < $ank2['ank_d_r'])
	$ank2['ank_age'] = $ank2['ank_age'] - 1;
}

?>
<a href="/id<?= $ank2['id']?>" class="simple_fit_item search_item al_u<?= $ank['id']?>" style="border-bottom: 0;">
<?= avka50($ank2['id'], 'si_img')?>
<div class="si_body">
<span class="si_owner _u<?= $ank['id']?>"><?= $ank2['nick']?></span><?= on_($ank2['id'])?>
<?
if($ank2['ofical'] == 1){
?>
<b class="verified"></b>
<?
}
?>
<div class="si_slabel">
<?
if ($ank2['ank_d_r'] != NULL && $ank2['ank_m_r'] != NULL && $ank2['ank_g_r'] != NULL && $ank2['ank_data'] == 1){
?>
<?= des2num($ank2['ank_age'], $my_age_day)?>
<?
if ($ank2['ank_city'] != NULL){
?>, <?
}
}
if($ank2['ank_city'] != NULL){
?><?= text($ank2['ank_city'])?><?
}
?>
</div>
</div>
</a>
<div style="margin: 10px 15px;">
<?

    
    if ($post['navsegda'] == 1){		
        echo " бан <font color=red><b>навсегда</b></font><br />";
    } else {		
        echo " до " . vremja($post['time']) . "<br />";	
    }
    
    echo '<b>Причина:</b> '.$pBan[$post['pochemu']].'<br />';
    echo '<b>Раздел:</b> '.$rBan[$post['razdel']].'<br />';

    echo '<b>Комментарий:</b> ' . output_text($post['prich']) . "<br />\n";
    
    if ($post['time'] > $time && user_access('user_ban_unset')) {
        echo "<font color=red><b>Активен</b></font> | <a href='?id=$ank[id]&amp;unset=$post[id]'>Снять</a> | ";
    }
    echo " <a href='?id=$ank[id]&amp;delete=$post[id]'>Удалить</a>";
?>
</div>
<div style="border-bottom: 1px solid #efefef;"></div>
<?
}



if ($k_page>1) {
    str_vk('?id='.$ank['id'].'&amp;',$k_page,$page);
}
    
if (user_access('user_ban_set') || user_access('user_ban_set_h'))
{
?>
<div class="Pad__header Row"><h3 class="Pad__title">Пожалуйста, укажите причину бана пользователя</h3></div>
<div class="Pad__content">
<?
    echo "<form action=\"banan.php?id=$ank[id]&amp;$passgen\" method=\"post\">\n";

?>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="1" type="radio" checked="checked">
<div class="Control__icon"></div><div class="Control__label">Спам/Реклама</div>
</label>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="2" type="radio">
<div class="Control__icon"></div><div class="Control__label">Мошенничество</div>
</label>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="3" type="radio">
<div class="Control__icon"></div><div class="Control__label">Нецензурная брань</div>
</label>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="4" type="radio">
<div class="Control__icon"></div><div class="Control__label">Клонирование страниц</div>
</label>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="5" type="radio">
<div class="Control__icon"></div><div class="Control__label">Подстрекательство, провокация и побуждение к агрессии</div>
</label>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="6" type="radio">
<div class="Control__icon"></div><div class="Control__label">Флуд</div>
</label>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="7" type="radio">
<div class="Control__icon"></div><div class="Control__label">Флейм</div>
</label>
<label class="Control Control_type_radio Row" onclick="">
<input class="Control__native" name="pochemu" value="0" type="radio">
<div class="Control__icon"></div><div class="Control__label">Другое</div>
</label>

<div class="Row"><textarea class="Textarea" name="ban_pr" rows="4" id="reason_desc" onfocus="cur.textFocused()">Вы нарушили правила Xmyx.Ru!</textarea></div>
<div style="margin: 0 15px;">
<dl class="fit_box new_form fi_row">
<dt class="fi_label">Время бана <?= (user_access('user_ban_set') ? null : '(max 1 сутки)')?></dt>
<dd>
<table class="row_table">
<tbody><tr>
<td class="row_table_column" width="8%">
<span class="sel">
<input type="text" name="time" class="textfield" title="Время бана" value="10" maxlength="11" />
</span>
</td>
<td class="row_table_column" width="90%">
<select class="sel" name="vremja">
<?
    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'".(user_access('user_ban_set')?null:' disabled="disabled"').">Месяцы</option>\n";
?>
</select>
</td>
</tr>
    </tbody></table>
</dd>
</dl>
</div>

<label class="Control Control_type_checkbox Row" onclick="">
<input class="Control__native" name="navsegda" value="1" type="checkbox">
<div class="Control__icon"></div><div class="Control__label">Навсегда</div>
</label>

<div class="Row Row_paddingTop_short">
<div class="BtnStack BtnStack_stretchOnSmallScreens">
<button class="BtnStack__btn Btn Btn_theme_regular" type="submit">Забанить страницу</button>
<a class="BtnStack__btn al_back Btn Btn_theme_link" href="/id<?= $ank['id']?>" role="button">Назад</a>
</div>
</div>
</form>
</div>
<?
}
else 
{
    echo "<div class='err'>Нет прав для того, чтобы забанить пользователя</div>\n";
}

?>
</div></div></div>
<?

include_once '../sys/inc/tfoot.php';
?>