Файл: pages/users/user.php
Строк: 343
<?php
include '../../system/mysql.php';
include '../../system/sys_func.php';
switch ($_GET['menu']) {
case 'edit':
if (!isset($user)) {
$title = 'Анкета/Ошибка';
include '../../system/head.php';
echo '<div class="err">Чтобы просматривать данную страницу вы должны <a href="/pages/registration/">зарегистрироваться</a> или <a href="/pages/registration/?menu=login">авторизоваться</a>!</div>';
include '../../system/foot.php';
exit;
}
$error = false;
$errort = '';
if (isset($_POST['save'])) {
$name = filter($_POST['name']);
$pol = intval($_POST['pol']);
$age = intval($_POST['age']);
$email = filter($_POST['email']);
$md5 = md5(time().$user['login'].$email.rand(0, 10));
$msg = 'Для активации аккаунта перейдите по ссылке: http://'. $_SERVER['HTTP_HOST'] .'/pages/registration/?menu=email&log='. $user['login'] .'&sum='. $md5;
if ($user['email'] == NULL) $email_sql = ", `email` = '". $email ."', `md5_activation` = '". $md5 ."'";
else $email_sql = '';
if (strlen($name) > 1024) {
$error = true;
$errort .= '<div class="err">В поле "Имя" превышен лимит символов.</div>';
}
if (!empty($age) && !preg_match('#^([0-9_])+$#ui', $age)) {
$error = true;
$errort .= '<div class="err">В поле "Возраст", разрешается писать только цифры.</div>';
}
if (!empty($email) && $user['email'] == NULL) {
if (!empty($email) && !filter_var($email, FILTER_VALIDATE_EMAIL)) {
$error = true;
$errort .= '<div class="err">Неправильный E-mail!</div>';
} elseif (mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `email` = '". $email ."'"), 0) != 0) {
$error = true;
$errort .= '<div class="err">Такой E-mail уже зарегистрирован!</div>';
}
} elseif (!empty($email) && $user['email'] != NULL) {
$error = true;
$errort .= '<div class="err">Ваш E-mail уже подтверждён!</div>';
}
if (!$error) {
mysql_query("UPDATE `users` SET `name` = '$name', `pol` = '$pol', `age` = '$age'$email_sql WHERE `id` = '". $user['id'] ."'");
mail($email, 'Активация аккаунта на '. $_SERVER['HTTP_HOST'], $msg);
header('Location: user.php?name='. $user['login']);
}
}
$title = 'Кабинет/Редактирование анкеты';
include '../../system/head.php';
echo '<div class="title"><a href="/pages/personal/">Кабинет</a> / Редактирование анкеты</div>';
echo $errort;
echo '<form method="post">
<b>Имя</b>:<br>
<input type="text" name="name" '. (isset($_POST['name']) ? 'value="'. filter($_POST['name']) .'"' : 'value="'. $user['name'] .'"') .' /><br>
<b>Пол</b>:<br>
<input name="pol" type="radio" '. ($user['pol'] == 0 ? 'checked="checked"' : null) .' value="0" />Женский
<br><input name="pol" type="radio" '. ($user['pol'] == 1 ?'checked="checked"' : null) .' value="1" />Мужской<br>
<b>Возраст</b>:<br>
<input type="text" name="age" size="2" value="'. $user['age'] .'" maxlength="3" '. (isset($_POST['age']) ? 'value="'. intval($_POST['age']) .'"' : 'value="'. $user['age'] .'"') .' /><br>
<b>E-mail</b>:';
if ($user['email'] == NULL) {
echo '<br><input type="text" name="email" '. (isset($_POST['email']) ? 'value="'. filter($_POST['email']) .'"' : 'value="'. $user['email'] .'"') .' /><br>';
} else {
echo ' '. $user['email'] .'<br>';
}
echo '<input type="submit" name="save" value="Сохранить" />
</form>
<a class="link" href="user.php?name='. $user['login'] .'"><img src="/design/imgs/arr_b.png" align="center"> Анкета</a>
<a class="link" href="/pages/personal/"><img src="/design/imgs/arr_b.png" align="center"> Вернуться в кабинет</a>';
include '../../system/foot.php';
break;
case 'position':
if (!isset($user)) {
$title = 'Анкета/Ошибка';
include '../../system/head.php';
echo '<div class="err">Чтобы просматривать данную страницу вы должны <a href="/pages/registration/">зарегистрироваться</a> или <a href="/pages/registration/?menu=login">авторизоваться</a>!</div>';
include '../../system/foot.php';
exit;
}
$u = mysql_query("SELECT * FROM `users` WHERE `login` = '". filter($_GET['name']) ."'");
if (mysql_num_rows($u) != 1) {
$title = 'Пользователи/Ошибка';
include '../../system/head.php';
echo '<div class="title"><a href="index.php">Пользователи</a> / Ошибка</div>';
echo '<div class="err">Такого пользователя не существует!</div>
<a class="link" href="index.php"><img src="/design/imgs/arr_b.png" align="center"> Назад</a>';
include '../../system/foot.php';
exit;
}
if ($user['position'] != 'admin'){
$title = 'Пользователи/Ошибка';
include '../../system/head.php';
echo '<div class="title"><a href="index.php">Пользователи</a> / Ошибка</div>';
echo '<div class="err">Вы не администратор чтобы давать должность.</div>
<a class="link" href="index.php"><img src="/design/imgs/arr_b.png" align="center"> Назад</a>';
include '../../system/foot.php';
exit;
}
$ank = mysql_fetch_assoc($u);
if ($user['id'] == $ank['id']){
$title = 'Пользователи/Ошибка';
include '../../system/head.php';
echo '<div class="title"><a href="index.php">Пользователи</a> / Ошибка</div>';
echo '<div class="err">Вы не можете изменить себе должность</div>
<a class="link" href="index.php"><img src="/design/imgs/arr_b.png" align="center"> Назад</a>';
include '../../system/foot.php';
exit;
}
$err = '';
if (isset($_POST['save'])) {
if (isset($_POST['position'])) {
if (isset($_POST['position']) && $_POST['position'] == 'admin') {
mysql_query("UPDATE `users` SET `position` = 'admin' WHERE `id` = '". $ank['id'] ."'");
mysql_query("INSERT INTO `notifications` (`user_id`, `from_id`, `msg`, `time`) values('$ank[id]', '2', 'Администрация назначила вас Администратором сайта', '". time() ."')");
} elseif (isset($_POST['position']) && $_POST['position'] == 'mod_f') {
mysql_query("UPDATE `users` SET `position` = 'mod_f' WHERE `id` = '". $ank['id'] ."'");
mysql_query("INSERT INTO `notifications` (`user_id`, `from_id`, `msg`, `time`) values('$ank[id]', '2', 'Администрация назначила вас Модератором Форума', '". time() ."')");
} elseif (isset($_POST['position']) && $_POST['position'] == 'mod_c') {
mysql_query("UPDATE `users` SET `position` = 'mod_c' WHERE `id` = '". $ank['id'] ."'");
mysql_query("INSERT INTO `notifications` (`user_id`, `from_id`, `msg`, `time`) values('$ank[id]', '2', 'Администрация назначила вас Модератором Мини-Чата', '". time() ."')");
} elseif (isset($_POST['position']) && $_POST['position'] == 'user') {
mysql_query("UPDATE `users` SET `position` = 'user' WHERE `id` = '". $ank['id'] ."'");
}
header('Location: user.php?name='. $ank['login']);
} else {
$err = '<div class="err">Ошибка</div>';
}
}
$title = 'Кабинет/Анкета '. $ank['login'] .'/Назначение должности';
include '../../system/head.php';
echo '<div class="title"><a href="/pages/personal/">Кабинет</a> / <a href="/pages/users/user.php?name='. $ank['login'] .'">Анкета <b>'. $ank['login'] .'</b></a> / Изменение должности</div>';
echo $err;
echo '<div class="post">
<b>Пользователь:</b> ';
echo online($ank['id']);
echo '<a href="/pages/users/user.php?name='. $ank['login'] .'">'. $ank['login'] .'</a></div>';
echo '<form method="post">
<b>Должность:</b><br>
<input name="position" type="radio" '. ($ank['position'] == 'admin' ? 'checked="checked"' : null) .' value="admin" />Администратор<br>
<input name="position" type="radio" '. ($ank['position'] == 'mod_f' ? 'checked="checked"' : null) .' value="mod_f" />Модератор Форума<br>
<input name="position" type="radio" '. ($ank['position'] == 'mod_c' ? 'checked="checked"' : null) .' value="mod_c" />Модератор Чата<br>
<input name="position" type="radio" '. ($ank['position'] == 'user' ? 'checked="checked"' : null) .' value="user" />Пользователь<br>
<input type="submit" name="save" value="Изменить" />
</form>
<a class="link" href="/pages/users/user.php?name='. $ank['login'] .'"><img src="/design/imgs/arr_b.png" align="center"> Вернутся в анкету</a>';
include '../../system/foot.php';
break;
default:
$u = mysql_query("SELECT * FROM `users` WHERE `login` = '". filter($_GET['name']) ."'");
if (mysql_num_rows($u) != 1) {
$title = 'Пользователи/Ошибка';
include '../../system/head.php';
echo '<div class="title"><a href="/pages/users/">Пользователи</a> / Ошибка</div>';
echo '<div class="err">Такого пользователя не существует!</div>
<a class="link" href="index.php"><img src="/design/imgs/arr_b.png" align="center"> Назад</a>';
include '../../system/foot.php';
exit;
}
$ank = mysql_fetch_assoc($u);
$title = 'Пользователи/Анкета '. $ank['login'];
include '../../system/head.php';
echo '<div class="title"><a href="/pages/users/">Пользователи</a> / Анкета <b>'. $ank['login'] .'</b></div>';
if (!isset($user)) {
echo '<div class="err">Чтобы просматривать данную страницу вы должны <a href="/pages/registration/">зарегистрироваться</a> или <a href="/pages/registration/?menu=login">авторизоваться</a>!</div>';
include '../../system/foot.php';
exit;
}
echo '<div class="post">';
echo online($ank['id']);
echo $ank['login'];
echo user($ank['id']);
echo '<br>';
echo avatar($ank['id'], 'a');
if ($ank['position'] == 'admin') {
echo "<br><span style='color:green; font-size: small;'>Администратор сайта</span>";
} elseif ($ank['position'] == 'mod_f') {
echo "<br><span style='color:green; font-size: small;'>Модератор Форума</span>";
} elseif ($ank['position'] == 'mod_c') {
echo "<br><span style='color:green; font-size: small;'>Модератор Мини-Чата</span>";
}
echo '<br><b>ID:</b> '. $ank['id'] .'<br>';
if ($ank['name'] != NULL) echo '<b>Имя:</b> '. $ank['name'] .'<br>';
if ($ank['age'] != NULL) echo '<b>Возраст:</b> '. $ank['age'] .'<br>';
if ($ank['email'] != NULL) echo '<b>E-mail:</b> '. $ank['email'] .'<br>';
echo '<b>Бонусов:</b> '. $ank['bonus'] .'<br>';
if ($ank['time_reg'] != NULL) echo '<b>Дата регистрации:</b> '. ptime($ank['time_reg']) .'<br>';
if ($ank['time_last'] != NULL) echo '<b>Посл.посещение:</b> '. ptime($ank['time_last']) .'<br>';
echo '</div>';
/*
Вывод ссылки друзья
*/
$k_fr = mysql_result(mysql_query("SELECT COUNT(*) FROM `friends_all` WHERE `user` = '$ank[id]' AND `i` = '1'"), 0);
echo '<a class="link" href="/pages/friends/?id='.$ank['id'].'"><img src="/design/imgs/friends.png"> Друзья ('.$k_fr.')</a>';
/*
==============
Выводим нарушения
==============
*/
include_once '../../pages/ban/output.ban.php';
/*
==============
Для отзывов
==============
*/
$kol_reviews = mysql_result(mysql_query("SELECT COUNT(*) FROM `reviews` WHERE `user_reviews` = '".$ank['id']."'"), 0);
$kol_reviews_1 = mysql_result(mysql_query("SELECT COUNT(*) FROM `reviews` WHERE `user_reviews` = '".$ank['id']."' AND `attitude` = '1'"), 0);
$kol_reviews_2 = mysql_result(mysql_query("SELECT COUNT(*) FROM `reviews` WHERE `user_reviews` = '".$ank['id']."' AND `attitude` = '2'"), 0);
echo '<a class="link" href="/pages/reviews/?id='.$ank['id'].'"><img src="/design/imgs/reviews.png"> Отзывы <font color="#04B404">'.$kol_reviews_1.'</font> / <font color="red">'.$kol_reviews_2.'</font> / '.$kol_reviews.'</a>';
/*
==============
Нарушения
==============
*/
$kol_ban = mysql_result(mysql_query("SELECT COUNT(*) FROM `ban` WHERE `ank_id` = '".$ank['id']."'"), 0);
if($kol_ban != NULL)echo '<a class="link" href="/pages/ban/?id='.$ank['id'].'"><img src="/design/imgs/block.png"> Нарушения ('.$kol_ban.') </a>';
if ($ank['id'] != $user['id']) echo '<a class="link" href="/pages/mail/?name='. $ank['login'] .'"><img src="/design/imgs/mail.png"> Написать сообщение</a>';
if ($ank['id'] == $user['id']) echo '<a class="link" href="user.php?menu=edit"><img src="/design/imgs/ank_edit.png"> Изменить анкету</a>';
// Предложить дружбу
$d1sql = mysql_query("SELECT COUNT(*) FROM `friends_new` WHERE (`user` = '$user[id]' AND `to` = '$ank[id]') OR (`user` = '$ank[id]' AND `to` = '$user[id]') LIMIT 1");
$d2sql = mysql_query("SELECT COUNT(*) FROM `friends_all` WHERE (`user` = '$ank[id]' AND `frend` = '$user[id]') OR (`user` = '$user[id]' AND `frend` = '$ank[id]') LIMIT 1");
if ($user['id']!=$ank['id'] && mysql_result($d1sql, 0)==0 && mysql_result($d2sql, 0)==0)
{
echo '<a class="link" href="/pages/friends/?menu=add&id='.$ank['id'].'"><img src="/design/imgs/friends_add.png"> Предложить дружбу</a>';
}
/*
==============
Доступно только для администрации
==============
*/
if ($user['position'] == 'admin'){
if ($ank['id'] != $user['id']) echo '<div class="link"><img src="/design/imgs/up.png"> <a href="user.php?name='. $ank['login'] .'&menu=position"> Назначить на должность</a></div>';
if ($ank['id'] != $user['id']) echo '<div class="link"><img src="/design/imgs/block_add.png"><a href="/pages/ban/add.ban.php?id='. $ank['id'] .'&menu=position"> Нарушение (Бан)</a></div>';
echo '<div class="post">';
echo '<b>IP:</b> '. $ank['IP'] .'<br>';
echo '<b>UserAgent:</b> '. $ank['agent'];
echo '</div>';
}
include '../../system/foot.php';
break;
}
?>