Файл: pages/users/user.php
Строк: 266
<?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;
        }
        $ank = mysql_fetch_assoc($u);
        $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>';
        if ($user['position'] == 'admin') echo '<b>IP:</b> '. $ank['IP'] .'<br>';
        if ($user['position'] == 'admin') echo '<b>UserAgent:</b> '. $ank['agent'];
        echo '</div>';
        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>';
        if ($user['position'] == 'admin' && $ank['id'] != $user['id']) echo '<a class="link" href="user.php?name='. $ank['login'] .'&menu=position"><img src="/design/imgs/up.png"> Назначить на должность</a>';
        include '../../system/foot.php';
    break;
}
?>