Файл: vzabave/admin/users.php
Строк: 560
<?
require'../config.php';
$align='left';
$title='Управление юзерами';
head();
aut();
who_add(0,'enter');
switch($mod){
default:
levels(7);
if ($ver!='wml')echo '<form action="users?mod=view&'.SID.'" method="post">';
echo 'Ник/ID:<br /><input type="text" name="nick" maxlength="15" title="Text"/><br />';
if ($ver=='wml'){
echo '<anchor title="go">Искать<go href="users?mod=view&'.SID.'" method="post">';
echo '<postfield name="nick" value="$nick"/>
<postfield name="mode" value="$mode"/>
</go></anchor><dt></dt><br />';
;
}else{
echo '<input type="submit" class="ibutton" value="Найти"/></form><dt></dt><br />';
}
echo '» <a href="users?mod=access"><b>Одобрить рег-ции</b></a> ('.$db->sql_fetchfield($db->sql_query("select count(*) as num from users where odobr = '1'"),0).')<br /><br />';
echo '» <a href="users?mod=users">Список юзеров</a> ('.$db->sql_fetchfield($db->sql_query("select count(*) as num from users"),0).')<br />';
echo '» <a href="users?mod=searchip">Поиск по IP</a><br />';
echo '<dt></dt>» <a href="users?mod=kiks_list">Список выпнутых</a> ('.$db->sql_fetchfield($db->sql_query("select count(*) as num from users where kik > '".$time."'"),0).')<br />';
echo '» <a href="users?mod=ban_is_list">Список баннов IP и SOFT</a> ('.$db->sql_fetchfield($db->sql_query("select count(*) as num from bannlist"),0).')<br />';
echo '» <a href="users?mod=ban_ip_list">Список баннов IP</a> ('.$db->sql_fetchfield($db->sql_query("select count(*) as num from bannip"),0).')<br />';
echo '» <a href="users?mod=banns_list">Список ников в бане</a> ('.$db->sql_fetchfield($db->sql_query("select count(*) as num from users where bann > '".$time."'"),0).')<br /><br />';
break;
case sends:
echo '<FORM method="POST" action="users?mod=sends">
Текст рассылки:<br/>
<textarea name="text" cols="50" rows="5"></textarea>
<br/>
<input type="submit" name="ok_send" value="Разослать"/>
</FORM>';
if (isset($_POST['ok_send'])) {
$text = trim(mysql_real_escape_string(htmlspecialchars($_POST['text'])));
if (empty($text)) {
exit('Вы не ввели текст рассылки!');
}
$_num = mysql_query("SELECT * FROM `users`");
while($all = mysql_fetch_assoc($_num)) {
mysql_query("INSERT INTO `privat` SET
`user` = '$user[user]',
`user_id` = '$user[id]',
`to_user` = '$all[user]',
`to_id` = '$all[id]',
`time` = '$time',
`msg` = '$text'");
}
echo '<b style="color:red">Рассылка выполенена!</b><br/>';
}
break;
case view:
levels(7);
if(isset($_POST['nick']))$nick = check($_POST['nick']);
else $nick = check($_GET['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = $db->sql_fetchrow ($db->sql_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.'!<dt></dt><br />';
echo '<a href="users?mod=kik&nick='.$inf[id].'">Пнуть</a><br />';
echo '<a href="users?mod=ban_ip_soft&nick='.$inf[id].'">Банн ip+soft</a><br />';
echo '<a href="users?mod=ban_ip&ipus='.$inf[user_ip].'">Банн ip</a><br />';
echo '<a href="users?mod=ban&nick='.$inf[id].'">Забанить ник</a><br />';
echo '<a href="del_user?nick='.$inf[id].'">Удалить ник</a><dl><dt></dt></dl>';
echo '<a href="users?mod=edit&nick='.$inf[id].'"><b>Апдейт юзера</b><br />';
echo '<a href="profile?nick='.$inf[id].'">Редактировать анкету</a><br />';
echo '<a href="setting?nick='.$inf[id].'">Настройки юзера</a><br />';
echo "</a><dt></dt><br />IP: ".$inf[user_ip]." (".opsos($inf[user_ip]).")<br/>";
echo "Soft: ".$inf[user_soft]."<br/>";
if ($inf[ver]==wml) echo "Версия сайта: WML<br/>";
else echo "Версия сайта: xHTML<br/>";
}}
break;
case kik:
levels(5);
if (empty($act)){
if ($ver!='wml')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="whykik" title="Причина"/><br /><br />';
if ($ver=='wml'){
echo '<anchor title="go">Пнуть<go href="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo '<postfield name="nick" value="$nick"/>
<postfield name="na" value="$na"/>
<postfield name="vremja" value="$vremja"/>
<postfield name="whykik" value="$whykik"/>
</go></anchor><br />';
;
}else{
echo '<input type="submit" class="ibutton" value="Пнуть"/></form><dt></dt>';
}
}else{
$nick = check($_POST['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = $db->sql_fetchrow ($db->sql_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)echo 'Не, <b>'.$inf[user].'</b> пинать просто не реально!<br />';
else{
if (strlen2($_POST['whykik'])<5)echo 'Причина должна быть более существенной! Не менее 5 символов!<br />';
else{
if ($_POST['na'] < 1 || empty($_POST['na']))echo 'Вы не указали время!<br />';
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;
$whykik = check($_POST['whykik']);
$na = $time+$na;
$db->sql_query('UPDATE `users` SET `kik` = "'.$na.'", `whokik` = "'.$user[id].'", `whykik` = "'.$whykik.'" WHERE `id` = "'.$inf[id].'" LIMIT 1');
if ($set['kik_notify']==1){
$messs = '[b]'.$user['user'].'[/b] выпнул пользователя [b]'.$inf['user'].'[/b] на [b]'.kikt($na).'[/b]<br /> Причина: [b]'.$whykik.'[/b]';
$db->sql_query ("INSERT INTO logs (log,msg,time) VALUES ('kik','$messs','$time')");
$s_post=$db->sql_fetchfield($db->sql_query("select COUNT(*) from rooms WHERE `system` != '0';"),0);
$k_page=k_page($s_post,$s_post);
$page=page($k_page);
$s1=$s_post*$page-$s_post;
$num = @$db->sql_query("SELECT * from rooms WHERE `system` != '0' order by rm DESC limit $s1, $s_post;" );
while($nums = @$db->sql_fetchrow($num)){
$db->sql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_system','0','$time','$messs','$nums[rm]')");
}
}
echo 'Пользователь <b>'.$inf[user].'</b> выпнут на <b>'.kikt($na).'</b><br />Причина: <b>'.$whykik.'</b><br />';
}}}}}}
}
break;
case ban_ip_soft:
levels(6);
if (empty($act)){
if ($ver!='wml')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="why" title="Причина"/><br /><br />';
if ($ver=='wml'){
echo '<anchor title="go">Банн<go href="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo '<postfield name="nick" value="$nick"/>
<postfield name="why" value="$why"/>
</go></anchor><br />';
;
}else{
echo '<input type="submit" class="ibutton" value="Банн"/></form><dt></dt>';
}
}else{
$nick = check($_POST['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = $db->sql_fetchrow ($db->sql_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)echo 'Не, <b>'.$inf[user].'</b> забаннить просто не реально!<br />';
else{
if (strlen2($_POST['why'])<5)echo 'Причина должна быть более существенной! Не менее 5 символов!<br />';
else{
$why = check($_POST['why']);
$db->sql_query ("INSERT INTO bannlist SET ip = '".$inf[user_ip]."', soft = '".$inf[user_soft]."', user_id = '".$inf[id]."', who_id = '".$user[id]."', why = '".$why."'");
if ($set['ban2_notify']==1){
$messs = '[b]'.$user['user'].'[/b] забаннил пользователя [b]'.$inf['user'].'[/b] по [b]ip+soft[/b]';
$db->sql_query ("INSERT INTO logs (log,msg,time) VALUES ('ban_ip_soft','$messs','$time')");
$s_post=$db->sql_fetchfield($db->sql_query("select COUNT(*) from rooms WHERE `system` != '0';"),0);
$k_page=k_page($s_post,$s_post);
$page=page($k_page);
$s1=$s_post*$page-$s_post;
$num = @$db->sql_query("SELECT * from rooms WHERE `system` != '0' order by rm DESC limit $s1, $s_post;" );
while($nums = @$db->sql_fetchrow($num)){
$db->sql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_system','0','$time','$messs','$nums[rm]')");
}
}
echo 'Пользователь <b>'.$inf[user].'</b> забанен!<br />Причина: <b>'.$why.'</b><br />Его IP: <b>'.$inf[user_ip].'</b> | SOFT: <b>'.$inf[user_soft].'</b><br />';
}}}}}
}
break;
case ban_ip:
levels(7);
if (empty($act)){
echo 'IP:<br/><i>Пример: 127.0.0.1 без отступов и пробелов<br/>
Или по маске 127.0.0, 127.0, будут забанены все IP совпадающие по начальным цифрам</i><br/>';
if ($ver!='wml')echo '<form action="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo '<input type="text" name="ban" value="'.$_GET['ipus'].'" title="IP"/><br /><br />';
if ($ver=='wml'){
echo '<anchor title="go">Банн<go href="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo '<postfield name="ban" value="$ban"/>
</go></anchor><br />';
;
}else{
echo '<input type="submit" class="ibutton" value="Банн"/></form><dt></dt>';
}
}else{
$messs = '[b]'.$user['user'].'[/b] забаннил пользователя [b]'.$inf['user'].'[/b] по [b]IP: '.$ban.'[/b]';
$db->sql_query ("INSERT INTO logs (log,msg,time) VALUES ('ban_ip','$messs','$time')");
$ban = check($_POST['ban']);
$db->sql_query("INSERT INTO bannip SET ip = '".$ban."', who_id = '".$user[id]."'");
echo 'IP <b>'.$ban.'</b> забаннен!<br />';
}
break;
case ban:
levels(6);
if (empty($act)){
if ($ver!='wml')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 />';
if ($ver=='wml'){
echo '<anchor title="go">Банн<go href="users?mod='.$mod.'&act=act&'.SID.'" method="post">';
echo '<postfield name="nick" value="$nick"/>
<postfield name="na" value="$na"/>
<postfield name="vremja" value="$vremja"/>
<postfield name="whyban" value="$whyban"/>
</go></anchor><br />';
;
}else{
echo '<input type="submit" class="ibutton" value="Банн"/></form><dt></dt>';
}
}else{
$nick = check($_POST['nick']);
if (!user($nick))echo 'Такого юзера нет!<br />';
else{
$inf = $db->sql_fetchrow ($db->sql_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)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 ($_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']);
$na = $time+$na;
$db->sql_query('UPDATE `users` SET `bann` = "'.$na.'", `whobann` = "'.$user[id].'", `whybann` = "'.$whyban.'" WHERE `id` = "'.$inf[id].'" LIMIT 1');
if ($set['ban_notify']==1){
$messs = '[b]'.$user['user'].'[/b] забаннил пользователя [b]'.$inf['user'].'[/b] на [b]'.kikt($na).'[/b]<br /> Причина: [b]'.$whyban.'[/b]';
$db->sql_query ("INSERT INTO logs (log,msg,time) VALUES ('ban','$messs','$time')");
$s_post=$db->sql_fetchfield($db->sql_query("select COUNT(*) from rooms WHERE `system` != '0';"),0);
$k_page=k_page($s_post,$s_post);
$page=page($k_page);
$s1=$s_post*$page-$s_post;
$num = @$db->sql_query("SELECT * from rooms WHERE `system` != '0' order by rm DESC limit $s1, $s_post;" );
while($nums = @$db->sql_fetchrow($num)){
$db->sql_query ("INSERT INTO message (user,user_id,time,msg,rm) VALUES ('$user_system','0','$time','$messs','$nums[rm]')");
}
}
echo 'Пользователь <b>'.$inf[user].'</b> забаннен на <b>'.kikt($na).'</b><br />Причина: <b>'.$whyban.'</b><br />';
}}}}}}
}
break;
case kiks_list:
levels(4);
if (isset($_GET['del'])){
$db->sql_query('UPDATE `users` SET `kik` = "0", `whokik` = "0", `whykik` = "" WHERE `id` = "'.intval($_GET['del']).'" LIMIT 1');
}
if (isset($_GET['del_all'])){
$db->sql_query('UPDATE `users` SET `kik` = "0", `whokik` = "0", `whykik` = "" WHERE `kik` != "0"');
}
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from users where kik > '".$time."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from users where kik > '".$time."' order by kik 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 = @$db->sql_fetchrow($r)){
echo links.'<b>'.user($a[id],1).'</b> выпнут на '.kikt($a[kik]).' [<a href="users?mod='.$mod.'&del='.$a[id].'">Осв.</a>]'.div;
echo 'Выпнул: <b>'.user($a[whokik]).'</b> | Причина: <b>'.$a[whykik].'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl><dt></dt></dl><br />";
}
if ($k_post != 0)echo '<a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
case ban_is_list:
levels(6);
if (isset($_GET['del'])){
@$db->sql_query("delete from `bannlist` where id='".intval($_GET['del'])."';");
}
if (isset($_GET['del_all'])){
@$db->sql_query("delete from `bannlist` where id>'0';");
}
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from bannlist"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from bannlist order by id desc LIMIT $start, $max");
if ($k_post == 0)echo '<br />Список баннов по IP и SOFT пуст...<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 = @$db->sql_fetchrow($r)){
echo links.'<b>'.user($a[user_id],1).'</b> [<a href="users?mod='.$mod.'&del='.$a[id].'">Осв.</a>]'.div;
echo 'Забаннил: <b>'.user($a[who_id]).'</b> | Причина: <b>'.$a[why].'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl><dt></dt></dl><br />";
}
if ($k_post != 0)echo '<a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
case ban_ip_list:
levels(7);
if (isset($_GET['del'])){
@$db->sql_query("delete from `bannip` where id='".intval($_GET['del'])."';");
}
if (isset($_GET['del_all'])){
@$db->sql_query("delete from `bannip` where id>'0';");
}
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from bannip"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from bannip order by id desc LIMIT $start, $max");
if ($k_post == 0)echo '<br />Список баннов по IP и SOFT пуст...<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 = @$db->sql_fetchrow($r)){
echo links.'<b>'.$a[ip].'</b> [<a href="users?mod='.$mod.'&del='.$a[id].'">Осв.</a>]'.div;
echo 'Забаннил: <b>'.user($a[who_id]).'</b> | Причина: <b>'.$a[why].'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl><dt></dt></dl><br />";
}
if ($k_post != 0)echo '<a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
case banns_list:
levels(6);
if (isset($_GET['del'])){
$db->sql_query('UPDATE `users` SET `bann` = "0", `whobann` = "0", `whybann` = "" WHERE `id` = "'.intval($_GET['del']).'" LIMIT 1');
}
if (isset($_GET['del_all'])){
$db->sql_query('UPDATE `users` SET `bann` = "0", `whobann` = "0", `whybann` = "" WHERE `kik` != "0"');
}
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from users where bann > '".$time."'"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from users where bann > '".$time."' order by bann 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 = @$db->sql_fetchrow($r)){
echo links.'<b>'.user($a[id],1).'</b> выпнут на '.kikt($a[bann]).' [<a href="users?mod='.$mod.'&del='.$a[id].'">Осв.</a>]'.div;
echo 'Выпнул: <b>'.user($a[whobann]).'</b> | Причина: <b>'.$a[whybann].'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl><dt></dt></dl><br />";
}
if ($k_post != 0)echo '<a href="users?mod='.$mod.'&del_all">Освободить всех</a><br />';
break;
case users:
levels(7);
if(empty($_GET['order']))$order = 'id';
else $order = check($_GET['order']);
if($_GET['desc']=='') $desc = '';
else $desc = check($_GET['desc']);
echo 'Сортировать:<br />По: ';
$arr = array('id-ID','timereg-Дата реги','level-Уровень','posts-Посты','rur-Деньги','vote_us-Рейтинг','onl-Посл. авт.');
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 (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_query("select count(*) as num from users"),0);
$k_page=k_page($k_post,$max);
$page=page($k_page);
$start=$max*$page-$max;
$r = $db->sql_query ("Select * from users 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 = @$db->sql_fetchrow($r)){
echo links.'<b>'.user($a[id],1).'</b> [<a href="users?mod=view&nick='.$a[id].'">Апдейт</a>]'.div;
echo 'Зареган: <b>'.times($a[timereg]).'</b> | Уровень: <b>'.lev_neme($a[level]).'</b><dl></dl>';
}
if ($k_page>1){
echo "<dl><dt></dt></dl>";
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
echo "<br /><dl><dt></dt></dl><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 = $db->sql_fetchrow ($db->sql_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 ($ver!='wml')echo '<form action="users?mod='.$mod.'&act=edit&nick='.$inf['id'].'&'.SID.'" method="post">';
echo '<br />Ник:<br /><input name="nik" value="'.$inf['user'].'" maxlength="15" emptyok="false"/><br />';
/*if ($user[level]==9)echo 'Пароль:<br /><input name="pass" value="'.$inf['pass'].'" maxlength="30" emptyok="false"/><br />';*/
echo 'Постов на форуме:<br /><input name="postsf" value="'.$inf['postsf'].'" maxlength="15" emptyok="false"/><br />';
echo 'Постов вcего:<br /><input name="posts" value="'.$inf['posts'].'" maxlength="15" emptyok="false"/><br />';
echo 'Денег:<br /><input name="rur" value="'.$inf['rur'].'" maxlength="15" emptyok="false"/><br />';
echo 'Игровой баланс:<br /><input name="gposts" value="'.$inf['gposts'].'" maxlength="15" emptyok="false"/><br />';
echo 'Ответов в викторине:<br /><input name="credits" value="'.$inf['credits'].'" maxlength="15" emptyok="false"/><br />';
echo 'Куплено ответов:<br /><input name="byeotv" value="'.$inf['byeotv'].'" maxlength="15" emptyok="false"/><br />';
echo 'Кредитов в Мафии:<br /><input name="mafcredits" value="'.$inf['mafcredits'].'" maxlength="15" emptyok="false"/><br />';
echo 'Статус:<br /><input name="status" value="'.$inf['status'].'" emptyok="false"/><br />';
echo 'Уровень:<br /><select name="level">';
if($inf[level]!=0)echo '<option value="'.$inf[level].'">'.lev_neme($inf[level]).'</option>';
if ($inf[level]<$user[level]){
for($i = 0; $i <= ($user[level]-1); $i++) {
echo '<option value="'.$i.'">'.$i.'-'.lev_neme($i).'</option>';
}}
echo '</select><br/>';
if ($ver=='wml'){
echo '<br /><anchor title="go">Сохранить<go href="users?mod='.$mod.'&act=edit&nick='.$inf['id'].'&'.SID.'" method="post">';
echo '
<postfield name="nick" value="$nick"/>
<postfield name="nik" value="$nik"/>
<postfield name="postsf" value="$postsf"/>
<postfield name="posts" value="$posts"/>
<postfield name="rur" value="$rur"/>
<postfield name="gposts" value="$gposts"/>
<postfield name="credits" value="$credits"/>
<postfield name="byeotv" value="$byeotv"/>
<postfield name="mafcredits" value="$mafcredits"/>
<postfield name="level" value="$level"/>
<postfield name="status" value="$status"/>
</go></anchor>';
echo '<br/><br />';
}else{
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 = $db->sql_fetchrow ($db->sql_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{
$nik= check($_POST['nik']);
$postsf= check(intval($_POST['postsf']));
$posts= check(intval($_POST['posts']));
$rur= check(intval($_POST['rur']));
$gposts= check(intval($_POST['gposts']));
$credits= check(intval($_POST['credits']));
$byeotv= check(intval($_POST['byeotv']));
$mafcredits= check(intval($_POST['mafcredits']));
$level= check(intval($_POST['level']));
$status= check($_POST['status']);
if ($set['rus']==1){
$lat_nik = rus_to_lat(tolower($nik));
$help = 'В нике цифры разрешено использовать только вместе со знаками латинского или русского алфавита.<br /><br />';
}else{
$lat_nik = tolower($nik);
$help = 'В нике цифры разрешено использовать только вместе со знаками латинского алфавита.<br /><br />';
}
if(ctype_digit($nik))$err = $help;
else if (preg_match("/[^1-9a-zA-Z-@*()?!~_=[]]+/", $lat_nik))$msg = 'В нике обнаружены запрешенные знаки!<br />';
else if ($nik === "")$err = $emp;
elseif (strpos($nik,"|")!==false)$msg = 'В нике обнаружены запрешенные знаки!<br /><br />';
if (strlen2($nik) < 4) $err = 'Ник не должен содержать менее 4-ёх знаков!<br /><br />';
else if (strlen2($nik) > 15) $err = 'Ник не должен содержать более 15 знаков!<br /><br />';
$runik = rus_to_k($nik);
if(isset($err)){echo $err; exit;}
$messs = '[b]'.$user['user'].'[/b] произвел Апдейт пользователя [b]'.$inf['user'].'[/b]<br /> Ник <b>'.$nik.'</b>|Постов форума: <b>'.$postsf.'</b>|Постов: <b>'.$posts.'</b>|Денег: <b>'.$rur.'</b>|Игровой баланс: <b>'.$gposts.'</b>|Куплено ответов: <b>'.$byeotv.'</b>|Кредитов в Мафии: <b>'.$credits.'</b>|Статус: <b>'.$status.'</b>|Уровень: <b>'.$level.'</b>';
$db->sql_query ("INSERT INTO logs (log,msg,time) VALUES ('edit','$messs','$time')");
if($db->sql_query('UPDATE `users` SET `user` = "'.$nik.'", `ruser` = "'.$runik.'", `postsf` = "'.$postsf.'", `posts` = "'.$posts.'", `rur` = "'.$rur.'", `gposts` = "'.$gposts.'", `credits` = "'.$credits.'", `byeotv` = "'.$byeotv.'", `mafcredits` = "'.$mafcredits.'", `level` = "'.$level.'", `status` = "'.$status.'" 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;
}
}}
}
break;
case 'searchip':
if(empty($act)){
echo '<br />';
if ($ver!='wml')echo '<form method="post" action="users?mod='.$mod.'&act=edit&'.SID.'" name="auth">';
echo 'IP юзера:<br/><input name="ipus" title="ipus"/><br/>';
if ($ver=='wml'){
echo '<anchor title="go">Искать<go href="users?mod='.$mod.'&act=edit&'.SID.'" method="post">';
echo '<postfield name="ipus" value="$(ipus)"/>
</go></anchor><br/>';
}else{
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=$db->sql_fetchfield($db->sql_query("select COUNT(*) from users where user_ip='$ipus';"),0);
echo 'Потльзователей с (IP: '.$ipus.'): <b>'.$k_post.'</b><br /><br />';
$q=$db->sql_query("select * from users where user_ip='$ipus' order by id desc;");
$i=1;
while($arr=$db->sql_fetchrow($q)){
echo links.($i++).')<b>'.user($arr[id],1).'</b> ('.$arr['user_ip'].'; '.$arr['user_soft'].")".div; echo '<dl></dl>';
}
}
break;
case 'access':
levels(7);
if (empty($user['max'])) $user['max']=10;
$max = $user['max'];
$k_post=$db->sql_fetchfield($db->sql_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 = $db->sql_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'])){
$db->sql_query('UPDATE `users` SET `odobr` = "0" WHERE `id` = "'.$nick.'"');
header('Location: ?mod=access&nick='.$nick.'&'.SID);
}
if (isset($_GET['no'])){
$db->sql_query('UPDATE `users` SET `odobr` = "2" WHERE `id` = "'.$nick.'"');
header('Location: ?mod=access&nick='.$nick.'&'.SID);
}
while($a = @$db->sql_fetchrow($r)){
$q2=$db->sql_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 links.'<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>]'.div;
echo '<dl></dl>';
}
if ($k_page>1){
echo '<dl><dt></dt></dl>';
str('users?mod='.$mod.'&',$k_page,$page); // Вывод страниц
}
echo '<br /><dl><dt></dt></dl>';
echo 'Если IP <font color="red"><b>Крастый</b></font>, значит пользователь с таким IP уже есть в чате<br />';
break;
}
echo '<br />';
if ($mod)echo gb.'<a href="users">Управление юзерами</a>'.div;
echo gb.'<a href="index">В админку</a><br />'.div;
echo gb.'<a href="'.H.'enter">Прихожая</a>'.div;
foot();
?>