View file ä󿪫¬/modules/shop/login.php

File size: 5.29Kb
<?php

/* DCMS Mixanza
 * Дата последнего редактирования 09.01.2018
 * Модифицировал Mixanza
 */

foreach (array('start', 'compress', 'sess', 'settings', 'db_connect', 'ipua', 'fnc', 'user') as $inc) {
    require_once "../../sys/inc/$inc.php";
}

$set['title'] = lang('Смена ника');

include_once H . 'sys/inc/thead.php';

aut();
err();

echo "<div class='card-header'>";
echo "<a href='/' data-toggle='tooltip' data-placement='right' title='" . lang('На главную') . "'><i class='fa fa-home fa-lg'></i></a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='/info.php?id=$user[id]'>$user[nick]</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo "<a href='/modules/shop/'>магазин услуг</a> <i class='fa fa-angle-right fa-fw'></i> ";
echo lang('Смена ника');
echo "</div>";

if (isset($_GET['yes'])) {
    if (isset($user) & $user['money'] <= 100) {
        $_SESSION['err'] = lang('У Вас недостаточно на счету');

        header("Location: /modules/shop/");
        exit();
    }

    if (isset($_POST['save'])) {
        if (isset($_POST['name'])) {
            if (isset($user) & $user['money'] <= 100) {
                $_SESSION['err'] = lang('У Вас недостаточно на счету');

                header("Location: /modules/shop/");
                exit();
            } else {
                $nick = htmlspecialchars($_POST['name']);

                if (!preg_match("#^([A-z0-9\-\_])+$#ui", $nick)) {
                    $_SESSION['err'] = lang('В нике присутствуют запрещенные символы');

                    header("Location: /modules/shop/login.php?yes");
                    exit();
                } elseif (preg_match("#[a-z]+#ui", $nick) && preg_match("#[а-я]+#ui", $nick)) {
                    $_SESSION['err'] = lang('Разрешается использовать символы только английского алфавита и цифр');

                    header("Location: /modules/shop/login.php?yes");
                    exit();
                } elseif (preg_match("#(^\ )|(\ $)#ui", $nick)) {
                    $_SESSION['err'] = lang('Запрещено использовать пробел в начале и конце ника');

                    header("Location: /modules/shop/login.php?yes");
                    exit();
                } elseif (utf8_strlen($nick) < 3) {
                    $_SESSION['err'] = lang('Короткий ник');

                    header("Location: /modules/shop/login.php?yes");
                    exit();
                } elseif (utf8_strlen($nick) > 15) {
                    $_SESSION['err'] = lang('Длина ника превышает 15 символов');

                    header("Location: /modules/shop/login.php?yes");
                    exit();
                } elseif ($pdo->query(("SELECT COUNT(*) FROM `user` WHERE `nick` = '" . htmlspecialchars($nick) . "'"), 0)->fetchColumn()!= 0) {
                    $_SESSION['err'] = lang('Выбранный Вами ник уже занят');

                    header("Location: /modules/shop/login.php?yes");
                    exit();
                } else {
                    $pdo->query("UPDATE `user` SET `money` = '" . ($user['money'] - 100) . "' WHERE `id` = '$user[id]' LIMIT 1");

                    if ($user['nick'] != $nick) {
                        $pdo->query("INSERT INTO `history_nick` SET `nick_last` = '$user[nick]', `nick_new` = '$nick', `user_id` = '$user[id]', `who` = '$user[id]', `time` = '$time'");
                    }
                    $pdo->query("UPDATE `user` SET `nick` = '" . htmlspecialchars($nick) . "' WHERE `id` = '$user[id]' LIMIT 1");
                    $pdo->query("INSERT INTO `notification` (`id_user`, `id_kont`, `msg`, `time`) values('0', '" . $user['id'] . "', 'Вы воспользовались услугой. С Вашего счета было списано 100 рублей.', '" . $time . "')");
                    
                    $msgs = 'Вы сменили логин [red]-100 рублей[/red]';
                    $pdo->query("INSERT INTO `rub_out` (`id_u`, `ank`, `msg`, `time`) values('$user[id]', '$user[id]', '$msgs', '$time')");

                    $_SESSION['message'] = lang('Изменения сохранены');

                    header("Location: /modules/shop/");
                    exit();
                }
            }
        }
    }

    echo "<div class='list-group-item'>У вас <font color='green'><b>$user[money]</b></font> рублей.</div>";
    echo "<form method='post' action='?yes' class='list-group-item'>\n";
    echo "Новый ник:<br />";
    echo"<input type='text' name='name' value='' class='form-control'/><br />";
    $doc->Button('knopka', 'save', 'save', 'Сохранить');
    echo "</form>\n";

    include_once H . 'sys/inc/tfoot.php';
    exit();
}
echo "<div class='list-group-item'>";
echo "Вы действительно хотите изменить свой ник?<br /> <a href='?yes' class='btn btn-primary-outline btn-sm'>Да</a> <a href='index.php' class='btn btn-secondary-outline btn-sm'>Нет</a><br />";
echo "Стоимость услуги <font color=green><b>100</b></font> Рублей.</div>";

include_once H . 'sys/inc/tfoot.php';