View file public_html/module/cpanel/user.php

File size: 4.33Kb
<?php define('WEARNINGS', 1); 
define('H', $_SERVER['DOCUMENT_ROOT'] . '/');
foreach (array('starting', 'compress', 'worldcms', 'function', 'adm_check', 'encryption', 'account') as $kernel){
	require_once H.'kernel/' . $kernel . '.php'; }

user_access('user_prof_edit',null,'index.php?'.SID); 
adm_check();  
if (isset($_GET['id']))$ank['id']=intval($_GET['id']); 
else {header("Location: /index.php?".SID);exit;} 
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '$ank[id]' LIMIT 1"),0)==0){header("Location: /index.php?".SID);exit;} 
$ank=get_user($ank['id']); 
if ($user['level']<=$ank['level']){header("Location: /index.php?".SID);exit;}
$set['title']='Профиль пользователя '.$ank['nick']; 
require_once H.'kernel/switch/header.php'; 
title();
if (isset($_POST['save'])){ 
if (isset($_POST['nick']) && $_POST['nick']!=$ank['nick']) 
{ 
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `nick` = '".my_esc($_POST['nick'])."'"),0)==1)
$err='Ник '.$_POST['nick'].' уже занят'; 
elseif (user_access('user_change_nick')) 
{ 
$nick=my_esc($_POST['nick']); 
if( !preg_match("#^([A-zА-я0-9\-\_\ ])+$#ui", $nick))$err[]='В нике присутствуют запрещенные символы'; 
if (strlen2($nick)<3)$err[]='Короткий ник'; 
if (strlen2($nick)>32)$err[]='Длина ника превышает 32 символа'; 
if (!isset($err)) 
{ 
admin_log('Пользователи','Изменение ника',"Ник $ank[nick] изменен на $nick");
$ank['nick']=$nick; 
mysql_query("UPDATE `user` SET `nick` = '$nick' WHERE `id` = '$ank[id]' LIMIT 1");
} 
} 
else $err[]='У Вас нет привилегий на изменение ника пользователя'; 
} 

if (isset($_POST['new_pass']) && strlen2($_POST['new_pass'])>5) 
{ 
admin_log('Пользователи','Смена пароля',"Пользователю '$ank[nick]' установлен новый пароль");
mysql_query("UPDATE `user` SET `pass` = '".shif($_POST['new_pass'])."' WHERE `id` = '$ank[id]' LIMIT 1");
} 
if (user_access('user_change_group') && isset($_POST['group_access'])) 
{ 
if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_group` WHERE `id` = '".intval($_POST['group_access'])."' AND `level` < '$user[level]'"),0)==1)
{ 
if ($ank['group_access']!=intval($_POST['group_access'])) 
{ 
admin_log('Пользователи','Изменение статуса',"Пользователь '$ank[nick]': Статус '$ank[group_name]' изменен на '".mysql_result(mysql_query("SELECT `name` FROM `user_group` WHERE `id` = '".intval($_POST['group_access'])."'"),0)."'");
$ank['group_access']=intval($_POST['group_access']); 
mysql_query("UPDATE `user` SET `group_access` = '$ank[group_access]' WHERE `id` = '$ank[id]' LIMIT 1");
} 
} 
} 
admin_log('Пользователи','Профиль',"Редактирование профиля пользователя '$ank[nick]' (id#$ank[id])");
if (!isset($err))msg('Изменения успешно приняты'); }
err(); 
aut();
echo "<form method='post' action='user.php?id=$ank[id]'> 
    Ник:<br />\n<input".(user_access('user_change_nick')?null:' disabled="disabled"')." type='text' name='nick' value='$ank[nick]' maxlength='32' /><br />";

echo "Группа:<br />\n<select name='group_access'".(user_access('user_change_group')?null:' disabled="disabled"')."><br />\n"; 
$q=mysql_query("SELECT * FROM `user_group` ORDER BY `level`,`id` ASC"); 
while ($post = mysql_fetch_assoc($q)) 
{ 
echo "<option value='$post[id]'".($post['level']>=$user['level']?" disabled='disabled'":null)."".($post['id']==$ank['group_access']?" selected='selected'":null).">".$post['name']."</option>\n"; 
} 
echo "</select><br />\n"; 
echo "Новый пароль:<br />\n<input type='text' name='new_pass' value='' /><br />\n"; 
echo "<input type='submit' name='save' value='Сохранить' />\n"; 
echo "</form>\n"; 

echo "<div class='foot'>\n"; 
echo "&raquo;<a href=\"/mail.php?id=$ank[id]\">Написать сообщение</a><br />\n"; 
echo "&laquo;<a href=\"/info.php?id=$ank[id]\">В анкету</a><br />\n"; 
if (user_access('adm_panel_show')) 
echo '&laquo;<a href="'.CPANEL.'">Контроль Панель</a><br />';
echo "</div>\n"; 
require_once H.'kernel/switch/footer.php'; 
?>