<?php
/* Defend php injection */
define('_CONSTANT_', 1);
/* Connect classes and core */
require_once '../../core/start.php';
/* Title/ Head */
head('Восстановление пароля');
/* Only for unregistered */
checkIn();
/* Image */
echo '<div class="headerImg"><img src="' . HOME . '/img/shadow.png" alt="[header-img]" height="70px"></div>';
/* Try */
if (isset($_POST['try'])) 
{
    $data = $_POST;
    $data['userId'] = $Filter->clearInt($data['userId']);
    /* Check profile */
    $profile = DB::$dbs->queryFetch("SELECT * FROM " . USERS . " WHERE `id` = ?", [$data['userId']]); 
    if (!$profile) 
    {
        error('Такого пользователя не существует', '/', 'На главную');
    }
    /* Filter $data */
    $data['passwordNew'] = $Filter->clearString($data['passwordNew']);
    $data['secretWord'] = $Filter->clearString($data['secretWord']); 
    $data['secretWord'] = crypt($data['secretWord'], '$1$sec$');
    /* Check error */
    if (empty($data['passwordNew']) || empty($data['userId']) || empty($data['secretWord'])) 
    {
        error('Обнаружено пустое поле', '/', 'На главную');        
    } 
    if (strlen($data['passwordNew']) > 20 || strlen($data['passwordNew']) < 6) 
    {
        error('Пароль должен быть в диапазоне [6-20]', '/', 'На главную');
    } 
    if ($data['secretWord'] != $profile['secret_word']) 
    {
        error('Не верные данные', '/', 'На главную');
    }
    /* If don`t get error */
    DB::$dbs->query("UPDATE " . USERS . " SET `password` = ? WHERE `id` = ?", [crypt($data['passwordNew'], '$1$game$'), $profile['id']]);
    success('Пароль сменен', '/', 'На главную');    
}
?> 
<form action="" method="POST">
ID персонажа:<br/>
<input type="text" name="userId" placeholder="Введите текст..."><br/>
Секретное слово:<br/>
<input type="text" name="secretWord" placeholder="Введите текст..."><br/>
Новый пароль:<br/>
<input type="text" name="passwordNew" placeholder="Введите текст..."><br/>
<input type="submit" name="try" value="Продолжить">
</form>
<?php 
/* Connect footer */
require_once '../../core/foot.php';