Файл: admin/users.php
Строк: 667
<?
require'../shaxty.php'; // waphp.ru - закрытый клуб вап мастеров!
check_login();
$title='Управление юзерами';
$align = 'left';
$head = 'Управление юзерами';
include_once (H.'shaxty/head.php');
//echo '<br />';
levels(5);
function timecount($var) {
$str = '';
if ($var < 0)
$var = 0;
$day = ceil($var / 86400);
if ($var > 345600) {
$str = $day . ' дней';
} elseif ($var >= 172800) {
$str = $day . ' дня';
} elseif ($var >= 86400) {
$str = '1 день';
} else {
$str = gmdate('G:i:s', $var);
}
return $str;
}
switch($mod){
default:
echo '<form action="users?mod=view&'.SID.'" method="post">';
echo 'Ник/ID:<br /><input type="text" name="nick" maxlength="15" title="Text"/><br />';
echo '<input type="submit" class="ibutton" value="Найти"/></form><br />';
if($level>=7)echo '<div class="menu_j"><a href="users?mod=access" class="top_menu_j"><b>» Одобрить рег-ции</b> ('.mysql_result(mysql_query("select count(*) as num from users where odobr = '1'"),0).')</a></div>';
if($level<7)echo '<div class="menu_j"><a href="users?mod=spam" class="top_menu_j">» Жалобы на спам (<b>'.mysql_result(mysql_query("select count(*) as num from spam where `read` = '0' and `msg_t` = '".$user['moder_razd']."' and `msg_razd_id` = '".$user['mod_id']."'"),0).'</b>/'.mysql_result(mysql_query("select count(*) as num from spam where `msg_t` = '".$user['moder_razd']."' and `msg_razd_id` = '".$user['mod_id']."'"),0).')</a></div>';
else if($level>=7)echo '<div class="menu_j"><a href="users?mod=spam" class="top_menu_j">» Жалобы на спам (<b>'.mysql_result(mysql_query("select count(*) as num from spam where `read` = '0'"),0).'</b>/'.mysql_result(mysql_query("select count(*) as num from spam"),0).')</a></div>';
if ($level == 9) echo '<div class="menu_j"><a href="users?mod=registration" class="top_menu_j">» Регистрация (Вкл/Выкл)</a></div>';
echo '<div class="menu_j"><a href="users?mod=users" class="top_menu_j">» Список юзеров ('.mysql_result(mysql_query("select count(*) as num from users"),0).')</a></div>';
if($level>=7)echo '<div class="menu_j"><a href="users?mod=searchip" class="top_menu_j">» Поиск по IP</a><br />';
echo '<div class="menu_j"><a href="users?mod=kiks_list" class="top_menu_j">» Список выпнутых ('.mysql_result(mysql_query("select count(*) as num from kik_users where ban_time > '".$time."'"),0).')</a></div>';
if($level>=7)echo '<div class="menu_j"><a href="users?mod=ban_ip_list" class="top_menu_j">» Список баннов IP ('.mysql_result(mysql_query("select count(*) as num from ban_ip"),0).')</a></div>';
if($level>=7)echo '<div class="menu_j"><a href="users?mod=ban_soft_list" class="top_menu_j">» Список баннов Софт ('.mysql_result(mysql_query("select count(*) as num from ban_soft"),0).')</a></div>';
echo '<div class="menu_j"><a href="users?mod=ban_users" class="top_menu_j">» Список ников в бане ('.mysql_result(mysql_query("select count(*) as num from ban_users where ban_time > '".$time."'"),0).')</a></div>';
break;
case registration:
levels(9);
$regFile = file_get_contents('../user/invites.dat');
$ExReg = explode('|', $regFile);
if ($ExReg[1] == 1) $fileReg_1 = 'checked="checked"';
else $fileReg_2 = 'checked="checked"';
if ($ExReg[2] == 0) $regSet_on = 'checked="checked"';
elseif ($ExReg[2] == 1) $regSet_pd = 'checked="checked"';
elseif ($ExReg[2] == 2) $regSet_off = 'checked="checked"';
if (isset($_POST['setreg'])) {
$rg = (int)abs($_POST['rg']);
$pod = (int)abs($_POST['pod']);
$otl = (int)abs($_POST['otl']);
file_put_contents('../user/invites.dat', $otl . '|' . $pod . '|' . $rg);
header('Location: users?mod=registration');
}
echo '<FORM method="POST" action="users?mod=registration">
<label>Регистрация:</label><br/>
<input type="radio" name="rg" ' . $regSet_on . ' value="0"/> Включена
<br/>
<input type="radio" name="rg" ' . $regSet_pd . ' value="1"/> Одобрение
<br/>
<input type="radio" name="rg" ' . $regSet_off . ' value="2"/> Выключена
<hr/>
<label>Код приглашения:</label><br/>
<input type="radio" name="pod" ' . $fileReg_1 . ' value="1"/> Вкл
<input type="radio" name="pod" ' . $fileReg_2 . ' value="0"/> Выкл
<hr/>
<label>С какого уровня доступно приглашение:</label><br/>
<select name="otl">
<option value="0">Бродяга</option>
<option value="1">Новичек</option>
<option value="2">Наш чел</option>
<option value="3">Мастер</option>
<option value="4">V.I.P</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="submit" class="ibutton" name="setreg" value="Сохранить"/>
</FORM>';
break;
case 'view':
if(isset($_POST['nick']))$nick = check($_POST['nick']);
else $nick = check($_GET['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = mysql_fetch_array (mysql_query ("Select * from users where id='".user_inf($nick)."'"));
if (($inf['level']>$user['level'])||$user['level']==$inf['level'] && $user['id']!=$inf['id'])echo 'Доступ закрыт!<br />';
else{
if ($inf['sex']==1)$sex = 'найден'; else $sex = 'найдена';
echo 'Пользователь <b>'.user($inf['id'],1).'</b> '.$sex.'!<br />';
echo '<a href="users?mod=kik&nick='.$inf['id'].'">Пнуть</a><br />';
if($level>=7)echo '<a href="users?mod=ban_ip&ipus='.$inf['user_ip'].'">Банн <b>IP</b></a><br />';
if($level>=7)echo '<a href="users?mod=ban_soft&id='.$inf['id'].'">Банн <b>Soft</b></a><br />';
echo '<a href="users?mod=ban&nick='.$inf['id'].'">Забанить ник</a><br />';
if($level>=7)echo '<a href="del_user.php?nick='.$inf['id'].'">Удалить учетную запись</a><dl></dl>';
if ($level == 9) echo '<a href="users?mod=give_invites&nick='.$inf['id'].'">Дать инвайты</a><br/>';
if($level>=7)echo '<a href="users?mod=edit&nick='.$inf['id'].'"><b>Апдейт юзера</b><br />';
//if($level>=8)echo '<a href="profile?nick='.$inf['id'].'">Редактировать анкету</a><br />';
//if($level>=8)echo '<a href="setting?nick='.$inf['id'].'">Настройки юзера</a><br />';
echo "</a><br />IP: ".$inf['user_ip']." <br/>";
echo "Soft: ".$inf['user_soft']."<br/>";
}}
break;
case give_invites:
levels(9);
$nick = (int)abs($_REQUEST['nick']);
if (isset($_GET['ok'])) echo '<b>Инвайты начислены.</b><br/>';
//----------------------------------------//
function GenCode($size)
{
$letter = 'qwertyuipasdfghjklzxcvbnm';
$letter .= strtoupper($letter);
$letter .= '123456789';
mt_srand((double)microtime() * 1000000);
$genCode = '';
for ($i = 0; $i < $size; ++$i)
$genCode .= $letter[mt_rand(0, strlen($letter) - 1)];
return $genCode;
}
//----------------------------------------//
if (isset($_POST['colvo'])) {
$colvo = (int)abs($_POST['colvo']);
if ($colvo > 10) {
echo 'Слишком большое кол-во за раз!<br/>';
} elseif (empty($colvo)) {
echo 'Пустое значение!<br/>';
} elseif (!user_inf($nick)) {
echo 'Пользователь не найден!';
} else {
for($i = 0; $i < $colvo; ++$i)
{
mysql_query("INSERT INTO invite SET scode = '" . GenCode(8) . "', user = '$nick'");
}
header('Location: users?mod=give_invites&ok');
}
}
echo '<FORM method="POST" action="users?mod=give_invites">
<input type="text" name="colvo" size="3"/> Кол-во инвайтов
<br/>
<input type="hidden" name="nick" value="' . $nick . '"/>
<input type="submit" class="ibutton" name="give" value="OK"/>
</FORM>';
break;
case 'kik':
if (empty($act)){
echo '<form action="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo 'Ник/ID:<br /><input type="text" name="nick" value="'.$_GET['nick'].'" title="Ник/ID"/><br />';
echo 'Время:<br /><input type="text" name="na" title="Время"/><br />';
echo '<select name="vremja">
<option value="min">Минуты</option>
<option value="chas">Часы</option>
<option value="sut">Сутки</option>
<option value="mes">Месяцы</option>
</select><br/>';
echo 'Причина:<br /><input type="Text" name="whyban" title="Причина"/><br /><br />';
echo '<input type="submit" class="ibutton" value="Банн"/></form>';
}else{
$nick = check($_POST['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = mysql_fetch_array (mysql_query ("Select * from users where id='".user_inf($nick)."'"));
if (($inf[level]>$user[level])||$user[level]==$inf[level] && $user[id]!=$inf[id])echo 'Доступ закрыт!<br />';
else{
if ($inf[id]==$user[id])echo 'Себя баннить собрались?!<br />';
else{
if ($inf[id]==1||$inf[id]==2)echo 'Не, <b>'.$inf[user].'</b> забаннить просто не реально!<br />';
else{
if (strlen2($_POST['whyban'])<5)echo 'Причина должна быть более существенной! Не менее 5 символов!<br />';
else{
if ($_POST['na'] < 1 || empty($_POST['na']))echo 'Вы не указали время!<br />';
else{
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_users` WHERE `user_id` = '$inf[id]' AND `ban_time` > '$realtime'"), 0))echo 'Такой бан уже есть';
else{
if ($_POST['vremja']=='min')$na = intval($_POST['na'])*60;
if ($_POST['vremja']=='chas')$na = intval($_POST['na'])*60*60;
if ($_POST['vremja']=='sut')$na = intval($_POST['na'])*60*60*24;
if ($_POST['vremja']=='mes')$na = intval($_POST['na'])*60*60*24*30;
$whyban = check($_POST['whyban']);
// Заносим в базу
mysql_query("INSERT INTO `kik_users` SET
`user_id` = '$inf[id]',
`ban_time` = '".($realtime + $na)."',
`ban_while` = '$realtime',
`ban_type` = '$term',
`ban_who` = '".$user['id']."',
`ban_reason` = '".$whyban."'") or die('error');
$messs = '[b]'.$user['user'].'[/b] выпнул пользователя [b]'.$inf['user'].'[/b] на [b]'.kikt($na).'[/b]<br /> Причина: [b]'.$whyban.'[/b]';
mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('kik','$messs','$time')");
echo 'Пользователь <b>'.$inf[user].'</b> забаннен на <b>'.kikt($realtime + $na).'</b><br />Причина: <b>'.$whyban.'</b><br />';
}}}}}}}
}
break;
case 'ban':
if (empty($act)){
echo '<form action="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo 'Ник/ID:<br /><input type="text" name="nick" value="'.$_GET['nick'].'" title="Ник/ID"/><br />';
echo 'Время:<br /><input type="text" name="na" title="Время"/><br />';
echo '<select name="vremja">
<option value="min">Минуты</option>
<option value="chas">Часы</option>
<option value="sut">Сутки</option>
<option value="mes">Месяцы</option>
</select><br/>';
echo 'Причина:<br /><input type="Text" name="whyban" title="Причина"/><br /><br />';
echo '<input type="submit" class="ibutton" value="Банн"/></form>';
}else{
$nick = check($_POST['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = mysql_fetch_array (mysql_query ("Select * from users where id='".user_inf($nick)."'"));
if (($inf[level]>$user[level])||$user[level]==$inf[level] && $user[id]!=$inf[id])echo 'Доступ закрыт!<br />';
else{
if ($inf[id]==$user[id])echo 'Себя баннить собрались?!<br />';
else{
if ($inf[id]==1||$inf[id]==2)echo 'Не, <b>'.$inf[user].'</b> забаннить просто не реально!<br />';
else{
if (strlen2($_POST['whyban'])<5)echo 'Причина должна быть более существенной! Не менее 5 символов!<br />';
else{
if ($_POST['na'] < 1 || empty($_POST['na']))echo 'Вы не указали время!<br />';
else{
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_users` WHERE `user_id` = '$inf[id]' AND `ban_time` > '$realtime'"), 0))echo 'Такой бан уже есть';
else{
if ($_POST['vremja']=='min')$na = intval($_POST['na'])*60;
if ($_POST['vremja']=='chas')$na = intval($_POST['na'])*60*60;
if ($_POST['vremja']=='sut')$na = intval($_POST['na'])*60*60*24;
if ($_POST['vremja']=='mes')$na = intval($_POST['na'])*60*60*24*30;
$whyban = check($_POST['whyban']);
// Заносим в базу
mysql_query("INSERT INTO `ban_users` SET
`user_id` = '$inf[id]',
`ban_time` = '".($realtime + $na)."',
`ban_while` = '$realtime',
`ban_type` = '$term',
`ban_who` = '".$user['id']."',
`ban_reason` = '".$whyban."'") or die('error');
$messs = '[b]'.$user['user'].'[/b] забаннил пользователя [b]'.$inf['user'].'[/b] на [b]'.kikt($na).'[/b]<br /> Причина: [b]'.$whyban.'[/b]';
mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('ban','$messs','$time')");
echo 'Пользователь <b>'.$inf[user].'</b> забаннен на <b>'.kikt($realtime + $na).'</b><br />Причина: <b>'.$whyban.'</b><br />';
}}}}}}}
}
break;
case 'ban_ip':
levels(7);
if (empty($act)){
echo '<i>Пример: 127.0.0.1 без отступов и пробелов<br/>
Или по маске 127.0.0, 127.0, будут забанены все IP совпадающие по начальным цифрам</i><br/>';
echo '<form action="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo 'IP:<br/><input type="text" name="ban" value="'.$_GET['ipus'].'" title="IP"/><br />';
if($level==9)echo 'URL редиректа (c http://):<br/><input type="text" name="url" value="" title="url"/><br />Если оставить пустым, редиректа не будет.<br />';
echo '<br /><input type="submit" class="ibutton" value="Банн"/></form>';
}else{
$ban = check($_POST['ban']);
$url = check($_POST['url']);
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_ip` WHERE `ip` = '$ban'"), 0))echo 'Такой бан уже есть';
else{
$messs = '[b]'.$user['user'].'[/b] забаннил [b]IP: '.$ban.'[/b], URL: [b]'.$url.'[/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('ban_ip','$messs','$time')");
@mysql_query("INSERT INTO `ban_ip` SET ip = '".$ban."', ipl = '".ip2long($ban)."', user = '".$user[id]."', time = '".$realtime."', url = '".$url."'");
echo 'IP <b>'.$ban.'</b> забаннен!<br />';
}
}
break;
case 'ban_soft':
levels(7);
$id = check($_GET['id']);
$id = user_inf($id);
if (!isset($id)){echo 'Такого юзера нет!<br />'; exit();}
$inf = mysql_fetch_array (mysql_query ("Select * from users where id='".$id."'"));
if (($inf['level']>$user['level'])||$user['level']==$inf['level'] && $user['id']!=$inf['id']) {echo 'Доступ закрыт!<br />'; exit(); }
if (empty($act)){
echo '<form action="users?mod='.$mod.'&act=act&id='.$id.'&'.SID.'" method="post">';
echo 'Софт:<br/><textarea cols="'.$user['pole2'].'" rows="'.$user['pole1'].'" name="soft">'.$inf['user_soft'].'</textarea><br />';
if($level==9)echo 'URL редиректа (c http://):<br/><input type="text" name="url" value="" title="url"/><br />Если оставить пустым, редиректа не будет.<br />';
echo '<br /><input type="submit" class="ibutton" value="Банн"/></form>';
}else{
$soft = check($_POST['soft']);
$url = check($_POST['url']);
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_soft` WHERE `soft` = '$soft'"), 0))echo 'Такой бан уже есть';
else{
$messs = '[b]'.$user['user'].'[/b] забаннил [b]Софт: '.$soft.'[/b], URL: [b]'.$url.'[/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('ban_soft','$messs','$time')");
@mysql_query("INSERT INTO `ban_soft` SET soft = '".$soft."', user = '".$user[id]."', time = '".$realtime."', url = '".$url."'");
echo 'Софт <b>'.$soft.'</b> забаннен!<br />';
}
}
break;
case 'kiks_list':
if (isset($_GET['del'])){
$inBans = mysql_fetch_array(mysql_query("SELECT user_id FROM kik_users WHERE id = '" . (int)$_GET['del'] . "' LIMIT 1"));
$messs = '[b]'.user($user['id'], 1).'[/b] снял пинок с ника [b]'.user($inBans[0], 1).'[/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
mysql_query("DELETE FROM `kik_users` WHERE `id` = '".intval($_GET['del'])."' LIMIT 1");
header('Location: ?mod='.$mod);
}
if($level>=7){
if (isset($_GET['del_all'])){
mysql_query("DELETE FROM `kik_users`");
$messs = '[b]'.user($user['id'], 1).'[/b] очистил все пинки';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
header('Location: ?mod='.$mod);
} }
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from kik_users where ban_time > '".$time."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from kik_users where ban_time > '".$time."' order by id desc LIMIT $start, $max");
if ($k_post == 0)echo '<br />Нет выпнутых!<br />';
else{
if (($max*$page)<$k_post) $maxi = $max*$page; else $maxi = $k_post;
echo 'показаны записи '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
while($a = mysql_fetch_array($r)){
if($level > user_inf($a['ban_who'],'level')||$user['id'] == $a['ban_who'])$osv = '[<a href="users?mod='.$mod.'&del='.$a['id'].'">Осв.</a>]';
echo $div2.'<b>'.user($a['user_id'],1).'</b> выпнут на '.kikt($a['ban_time']).' '.$osv.' '.$div9;
echo 'Выпнул: <b>'.user($a['ban_who']).'</b> | Причина: <b>'.$a['ban_reason'].'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl></dl><br />";
}
if ($k_post != 0 && $level>=7)echo '<dl></dl><a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
case 'ban_users':
if (isset($_GET['del'])){
########
$inBans = mysql_fetch_array(mysql_query("SELECT user_id FROM ban_users WHERE id = '" . (int)$_GET['del'] . "' LIMIT 1"));
$messs = '[b]'.user($user['id'], 1).'[/b] снял бан с ника [b]'.user($inBans[0], 1).'[/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
########
mysql_query("DELETE FROM `ban_users` WHERE `id` = '".intval($_GET['del'])."' LIMIT 1");
}
if($level>=8){
if (isset($_GET['del_all'])){
mysql_query("DELETE FROM `ban_users`");
$messs = '[b]'.user($user['id'], 1).'[/b] очистил все баны';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
} }
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from ban_users where ban_time > '".$time."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from ban_users where ban_time > '".$time."' order by id desc LIMIT $start, $max");
if ($k_post == 0)echo '<br />Нет забанненных ников!<br />';
else{
if (($max*$page)<$k_post) $maxi = $max*$page; else $maxi = $k_post;
echo 'показаны записи '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
while($a = mysql_fetch_array($r)){
if($level > user_inf($a['ban_who'],'level')||$user['id'] == $a['ban_who'])$osv = '[<a href="users?mod='.$mod.'&del='.$a['id'].'">Осв.</a>]';
echo $div2.'<b>'.user($a['user_id'],1).'</b> забаннен на '.kikt($a['ban_time']).' '.$osv.' '.$div9;
echo 'Забаннил: <b>'.user($a['ban_who']).'</b> | Причина: <b>'.$a['ban_reason'].'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl></dl><br />";
}
if ($k_post != 0 && $level>=8)echo '<dl></dl><a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
case 'ban_ip_list':
if (isset($_GET['del'])){
########
$inBans = mysql_fetch_array(mysql_query("SELECT user FROM ban_ip WHERE id = '" . (int)$_GET['del'] . "' LIMIT 1"));
$messs = '[b]'.user($user['id'], 1).'[/b] снял бан с ip у [b]'.user($inBans[0], 1).'[/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
########
mysql_query("DELETE FROM `ban_ip` WHERE `id` = '".intval($_GET['del'])."' LIMIT 1");
}
if($level>=8){
if (isset($_GET['del_all'])){
mysql_query("DELETE FROM `ban_ip`");
$messs = '[b]'.user($user['id'], 1).'[/b] очистил все баны IP';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
} }
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from ban_ip"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from ban_ip order by id desc LIMIT $start, $max");
if ($k_post == 0)echo '<br />Нет забанненных IP!<br />';
else{
if (($max*$page)<$k_post) $maxi = $max*$page; else $maxi = $k_post;
echo 'показаны записи '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
while($a = @mysql_fetch_array($r)){
if($level > user_inf($a['user'],'level')||$user['id'] == $a['user'])$osv = '[<a href="users?mod='.$mod.'&del='.$a['id'].'">Осв.</a>]';
echo $div2.'<b>'.$a['ip'].'</b> забаннен '.times($a['time']).' '.$osv.' '.$div9;
echo 'Забаннил: <b>'.user($a['user']).'</b> </b><dl></dl>';
}
if ($k_page>1){
echo "<dl></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl></dl><br />";
}
if ($k_post != 0 && $level>=8)echo '<dl></dl><a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
case 'ban_soft_list':
if (isset($_GET['del'])){
########
$inBans = mysql_fetch_array(mysql_query("SELECT user FROM ban_soft WHERE id = '" . (int)$_GET['del'] . "' LIMIT 1"));
$messs = '[b]'.user($user['id'], 1).'[/b] снял бан с софт у [b]'.user($inBans[0], 1).'[/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
########
mysql_query("DELETE FROM `ban_soft` WHERE `id` = '".intval($_GET['del'])."' LIMIT 1");
}
if($level>=8){
if (isset($_GET['del_all'])){
mysql_query("DELETE FROM `ban_soft`");
$messs = '[b]'.user($user['id'], 1).'[/b] очистил все баны Софта';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
} }
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from ban_soft"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from ban_soft order by id desc LIMIT $start, $max");
if ($k_post == 0)echo '<br />Нет забанненных софтов!<br />';
else{
if (($max*$page)<$k_post) $maxi = $max*$page; else $maxi = $k_post;
echo 'показаны записи '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
while($a = @mysql_fetch_array($r)){
if($level > user_inf($a['user'],'level')||$user['id'] == $a['user'])$osv = '[<a href="users?mod='.$mod.'&del='.$a['id'].'">Осв.</a>]';
echo $div2.'<b>'.$a['soft'].'</b><br />забаннен '.times($a['time']).' '.$osv.' '.$div9;
echo 'Забаннил: <b>'.user($a['user']).'</b> </b><dl></dl>';
}
if ($k_page>1){
echo "<dl></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl></dl><br />";
}
if ($k_post != 0 && $level>=8)echo '<dl></dl><a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
/////////////////
case 'users':
if(empty($_GET['order']))$order = 'id';
else $order = check($_GET['order']);
if($_GET['desc']=='') $desc = '';
else $desc = check($_GET['desc']);
if($_GET['sex']=='') $sex = '';
else $sex = check($_GET['sex']);
if($sex=='')echo 'Все|<a href="?sex=1&desc='.$desc.'">Парни</a>|<a href="?sex=0&desc='.$desc.'">Девушки</a>';
else if($sex==1)echo '<a href="?desc='.$desc.'">Все</a>|Парни|<a href="?sex=0&desc='.$desc.'">Девушки</a>';
else if($sex==0)echo '<a href="?desc='.$desc.'">Все</a>|<a href="?sex=1&desc='.$desc.'">Парни</a>|Девушки';
echo 'Сортировать:<br />По: ';
$arr = array('id-ID','timereg-Дата реги','level-Уровень','posts-Посты','rur-Деньги','vote_us-Рейтинг','onl-Посл. авт.','total_on_site-Пробыл на сайте');
foreach($arr as $v){
list ($o,$n) = explode('-',$v);
echo '<a href="users?mod='.$mod.'&desc='.$desc.'&order='.$o.'">'.$n.'</a>|';}
echo '<br />Порядок:';
$ar = array('-123','desc-321');
foreach($ar as $d){
list ($d,$n) = explode('-',$d);
echo '<a href="users?mod='.$mod.'&order='.$order.'&desc='.$d.'">'.$n.'</a>|';}
echo '<br />';
if($sex!='')$sexi = 'where sex = "'.$sex.'"'; else $sexi = '';
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from users ".$sexi.""),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from users ".$sexi." order by ".$order." ".$desc." LIMIT $start, $max");
if ($k_post == 0)echo '<br />Список пуст...<br />';
else{
if (($max*$page)<$k_post) $maxi = $max*$page; else $maxi = $k_post;
echo 'показаны '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
while($a = @mysql_fetch_array($r)){
echo $div2.'<b>'.user($a['id'],1).'</b> [<a href="users?mod=view&nick='.$a['id'].'">Апдейт</a>]'.$div9;
echo 'Зареган: <b>'.times($a['date']).'</b> | Уровень: <b>'.level($a['level']).'</b>';
if($order == 'total_on_site') echo '| Пробыл: <b>'.timecount($a['total_on_site']).'</b>';
echo '<dl></dl>';
}
if ($k_page>1){
echo "<dl></dl>";
str('users?mod='.$mod.'&desc='.$desc.'&order='.$order.'&sex='.$sex.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl></dl><br />";
}
break;
case 'searchip':
levels(7);
if(empty($act)){
echo '<br />';
echo '<form method="post" action="users?mod='.$mod.'&act=edit&'.SID.'" name="auth">';
echo 'IP юзера:<br/><input name="ipus" title="ipus"/><br/>';
echo '<input type="submit" class="ibutton" value="Искать" name="enter"/></form><br/>';
}else{
if (isset($_POST['ipus']))$ipus= check($_POST['ipus']);
else if (isset($_GET['ipus']))$ipus= check($_GET['ipus']);
$k_post=mysql_result(mysql_query("select COUNT(*) from users where user_ip='$ipus';"),0);
echo 'Потльзователей с (IP: '.$ipus.'): <b>'.$k_post.'</b><br /><br />';
$q=mysql_query("select * from users where user_ip='$ipus' order by id desc;");
$i=1;
while($arr=mysql_fetch_array($q)){
echo $div2.($i++).')<b>'.user($arr[id],1).'</b> (<a href="users?mod=ban_ip&ipus='.$arr['user_ip'].'">'.$arr['user_ip'].'</a> | '.$arr['user_soft'].")".$div9; echo '<dl></dl>';
}
}
break;
case 'access':
levels(7);
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from users where odobr = '1'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from users where odobr = '1' order by timereg LIMIT $start, $max");
if ($k_post == 0)echo '<br />Список пуст...<br />';
else{
if (($max*$page)<$k_post) $maxi = $max*$page; else $maxi = $k_post;
echo 'показаны '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
$nick = check($_GET['nick']);
if (isset($_GET['yes'])){
if (user_inf($nick, 'odobr') != 1) {
header('Location: index.php?');
die();
}
mysql_query('UPDATE `users` SET `odobr` = "0",`odobr_who` = "'.$user['id'].'" WHERE `id` = "'.$nick.'"');
$messs = '[b]'.$user['user'].'[/b] одобрил регу [b][url=http://'.$_SERVER['HTTP_HOST'].'/'.$nick.']'.user($nick).'[/url][/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('accessyes','$messs','$time')");
header('Location: ?mod=access&nick='.$nick.'&'.SID);
}
if (isset($_GET['no'])){
if (user_inf($nick, 'odobr') != 1) {
header('Location: index.php?');
die();
}
mysql_query('UPDATE `users` SET `odobr` = "2",`odobr_who` = "'.$user['id'].'" WHERE `id` = "'.$nick.'"');
$messs = '[b]'.$user['user'].'[/b] отклонил регу [b][url=http://'.$_SERVER['HTTP_HOST'].'/'.$nick.']'.user($nick).'[/url][/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('accessno','$messs','$time')");
header('Location: ?mod=access&nick='.$nick.'&'.SID);
}
while($a = @mysql_fetch_array($r)){
$q2=mysql_query("select * from users where id!='".$a['id']."' and user_ip='".$a['user_ip']."';");
if (mysql_affected_rows() != 0){
$ipus = '<a href="?mod=searchip&act=searchip&ipus='.$a['user_ip'].'"><font color="red"><b>'.$a['user_ip'].'</b></font></a>';
}else{
$ipus = ''.$a['user_ip'].'';
}
echo $div2.'<b>'.user($a[id],1).'</b> ('.$ipus.') [<a href="users?mod=access&nick='.$a[id].'&yes">Доп</a>]|[<a href="users?mod=access&nick='.$a[id].'&no">НЕдоп</a>]|[<a href="users?mod=view&nick='.$a[id].'">Апдейт</a>]'.$div9;
echo '<dl></dl>';
}
if ($k_page>1){
echo '<dl></dl>';
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
}
echo '<br /><dl></dl>';
echo 'Если IP <font color="red"><b>Красный</b></font>, значит пользователь с таким IP уже есть на сайте<br />';
break;
case 'edit':
levels(7);
if ($_GET['i']==1)echo '<b>Изменения сохранены.</b><br />';
if ($_GET['i']==2)echo '<b>Ошибка. Сообщите администрации</b><br />';
if (empty($act)){
if(isset($_POST['nick']))$nick = check($_POST['nick']);
else $nick = check($_GET['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = mysql_fetch_array (mysql_query ("Select * from users where id='".user_inf($nick)."'"));
if (($inf[level]>$user[level])||$user[level]==$inf[level] && $user[id]!=$inf[id])echo 'Доступ закрыт!<br />';
else{
echo '<form action="users?mod='.$mod.'&act=edit&nick='.$inf['id'].'&'.SID.'" method="post">';
echo 'Ник:<br /><input name="nik" value="'.$inf['user'].'" maxlength="15" emptyok="false"/><br />';
echo 'Постов в форуме:<br /><input name="postsf" value="'.$inf['postsf'].'" maxlength="15" emptyok="false"/><br />';
echo 'Постов в чате:<br /><input name="postsc" value="'.$inf['postsc'].'" maxlength="15" emptyok="false"/><br />';
echo 'Постов в гостевой:<br /><input name="postsg" value="'.$inf['postsg'].'" maxlength="15" emptyok="false"/><br />';
echo 'Комментариев:<br /><input name="postsk" value="'.$inf['postsk'].'" maxlength="15" emptyok="false"/><br />';
echo 'Постов вcего:<br /><input name="posts" value="'.$inf['posts'].'" maxlength="15" emptyok="false"/><br />';
echo 'Статус:<br /><input name="status" value="'.$inf['status'].'" emptyok="false"/><br />';
if ($inf['level']<$user['level']){
echo 'Уровень:<br /><select name="levela">';
echo '<option value="'.$inf['level'].'">'.$inf['level'].'-'.level($inf['level']).'</option>';
for($i = 0; $i <= ($user['level']-1); $i++) {
echo '<option value="'.$i.'">'.$i.'-'.level($i).'</option>';
}
echo '</select><br/>';
}
if($user["level"]==9){
echo "Модератор (модер и ст.модер):<br /><select name="moder_razd">";
echo "<option value="0">Обычный</option>";
echo "<option value="forum_msg">Форума</option>";
echo "</select><br/>";
echo 'Подфорум модератора:<br/>';
echo "<select name="mod_id">";
echo "<option value="0">Нет</option>";
$q = mysql_query("SELECT * FROM `forum_f` ORDER BY `id` ASC");
while ($r = mysql_fetch_array($q))
{
echo "<option value="$r[id]">$r[name]</option>";
}
echo "</select><br/>";
echo 'Журналист:<br /><select name="gazeta">';
if ($inf['gazeta']==0){echo '<option value="0">Нет</option>';
echo '<option value="1">Да</option>';
}
elseif ($inf['gazeta']==1){echo '<option value="1">Да</option>';
echo '<option value="0">Нет</option>';
}
echo '</select><br/>';
}
echo '<input name="nick" type="hidden" value="$nick"/>';
echo '<br /><input type="submit" class="ibutton" value="Сохранить"/></form><br /><br />';
}}
}else{
$nick = check($_GET['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = mysql_fetch_array (mysql_query ("Select * from users where id='".user_inf($nick)."'"));
if (($inf[level]>$user[level])||$user[level]==$inf[level] && $user[id]!=$inf[id])echo 'Доступ закрыт!<br />';
else{
$moder_razd= check($_POST['moder_razd']);
$mod_id= check(intval($_POST['mod_id']));
$nik= check($_POST['nik']);
$postsf= check(intval($_POST['postsf']));
$postsk= check(intval($_POST['postsk']));
$postsc= check(intval($_POST['postsc']));
$postsg= check(intval($_POST['postsg']));
$posts= check(intval($_POST['posts']));
if($user["level"]==9)
{$gazeta= check(intval($_POST['gazeta']));
if($gazeta==0)$gazetas = 0;
}else $gazeta = $inf['gazeta'];
if ($inf['level']<$user['level'])$levela= check(intval($_POST['levela']));
else $levela = $inf['level'];
if ($user['level'] <= $_POST['levela']) $levela = $inf['level'];
$status= check($_POST['status']);
$lat_nick = rus_lat(rus_utf_tolower($nik));
if (empty($nik))
$error = $error.'Не введён логин<br/>';
elseif (strlen2($nik) < 2 || strlen2($nik) > 15)
$error = $error.'Недопустимая длина Логина<br />';
if (preg_match("/[^1-9a-zA-Z-@*()?!~_=[]]+/", $lat_nick))
$error = $error.'Недопустимые символы в Логине<br/>';
$req = mysql_query("select * from `users` where `ruser`='".$lat_nick."' and `id` !='".$nick."' ;");
if (mysql_num_rows($req) != 0) {
$error = 'Этот ник уже занят!<br/>Выберите другой.<br/>';
}
if (empty($error)) {
$messs = '[b]'.$user['user'].'[/b] произвел Апдейт пользователя [b]'.$inf['user'].'[/b]<br /> Ник <b>'.$nik.'</b>|Постов форума: <b>'.$postsf.'</b>|Постов чата: <b>'.$postsc.'</b>|Постов гостевой: <b>'.$postsg.'</b>|Комментариев: <b>'.$postsk.'</b>|Постов: <b>'.$posts.'</b>|Журналист: <b>'.$gazeta.'</b>|Уровень: <b>'.level($levela).'</b>|Модер: <b>'.$moder_razd.'</b>|Раздел форума: <b>'.$mod_id.'</b>';
mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('edit','$messs','$time')");
$status= check(utf_substr($_POST['status'], 0, 20));
if(mysql_query('UPDATE `users` SET `status` = "'.$status.'" WHERE `id` = "'.$inf['id'].'"'));
if(mysql_query('UPDATE `users` SET `user` = "'.$nik.'", `ruser` = "'.$lat_nick.'",`postsf` = "'.$postsf.'", `postsc` = "'.$postsc.'", `postsk` = "'.$postsk.'", `postsg` = "'.$postsg.'", `posts` = "'.$posts.'", `level` = "'.$levela.'", `status` = "'.$status.'", `gazeta` = "'.$gazeta.'", `gazetas` = "'.$gazetas.'", `moder_razd` = "'.$moder_razd.'", `mod_id` = "'.$mod_id.'" WHERE `id` = "'.$inf['id'].'"'))
{
header ('Location: users?mod='.$mod.'&i=1&nick='.$nick.'&'.SID); exit;
}else{
header ('Location: users?mod='.$mod.'&i=2&nick='.$nick.'&'.SID); exit;
}
}else echo $error;
}}
}
break;
case 'spam':
if (isset($_GET['del'])){
########
$inBans = mysql_fetch_array(mysql_query("SELECT spam_id FROM spam WHERE id = '" . intval($_GET['del']) . "' LIMIT 1"));
$messs = '[b]'.user($user['id'], 1).'[/b] удалил жалобу на спам с ника [b]'.user($inBans[0], 1).'[/b]';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
########
mysql_query("DELETE FROM `spam` WHERE `id` = '".intval($_GET['del'])."' and `read` != '0' LIMIT 1");
header('Location: ?mod='.$mod);
}
if($level>=9){
if (isset($_GET['del_all'])){
mysql_query("DELETE FROM `spam`");
$messs = '[b]'.user($user['id'], 1).'[/b] очистил все жалобы на спам';
@mysql_query ("INSERT INTO logs (log,msg,time) VALUES ('banoff','$messs','$time')");
header('Location: ?mod='.$mod);
} }
if($level<7){
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from spam where `msg_t` = '".$user['moder_razd']."' and `msg_razd_id` = '".$user['mod_id']."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from spam where `msg_t` = '".$user['moder_razd']."' and `msg_razd_id` = '".$user['mod_id']."' order by `read` asc, `time` desc LIMIT $start, $max");
}else if($level>=7){
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=mysql_result(mysql_query("select count(*) as num from spam"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = mysql_query ("Select * from spam order by `read` asc, `time` desc limit $start, $max");
}
if ($k_post == 0)echo '<br />Нет жалоб!<br />';
else{
if (($max*$page)<$k_post) $maxi = $max*$page; else $maxi = $k_post;
echo 'показаны записи '.($start+1).'-'.$maxi.' из '.$k_post.'<br /><br />';
}
$post_k=$start+1;
while($a = mysql_fetch_array($r)){
if ($level>=9)$osv = ' [<a href="users?mod='.$mod.'&del='.$a['id'].'">Х</a>]';
echo $div2.'<b>'.user($a['user_id'],1).'</b> пожаловался на сообщение <b>'.user($a['spam_id'],1).'</b> '.text($a['mesto']).' ';
if ($a['read'] == 0) echo ' <span style="color:#DD0000">[Непроверена]</span>'.$div9;
else echo ' <span style="color:#00AE00">[Проверил <b>'.user($a['read'],1).'</b>]</span>'.$osv.$div9;
echo ''.text($a['msg']).'<br />';
echo 'Комментарий: <b>'.$a['komment'].'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl></dl><br />";
}
if ($k_post != 0 && $level>=9)echo '<dl></dl><a href="users?mod='.$mod.'&del_all">Очистить</a><br />';
break;
}
echo '<br />';
if ($mod)echo $div1.'<a href="users.php">Управление юзерами</a>'.$div9;
echo '<div class="menu_j"><a href="'.H.'admin/index.php" class="top_menu_j">Админка</a></div>';
include_once (H.'shaxty/foot.php');
/* by -=ШАХТЕР=- (waphp.ru - качай только тут) */ ?>