<?php
$error = 0;
$login_function = new \Functions\Login();


if (isset($query['submit'])) {
    extract($query);
    $admin = $login_function->check_user_exists($username);
    if ($admin !== false) {
        $admins_function = new \Functions\Admins();
        $admin_info = $admins_function->get_by_id($admin);
        echo($admin_info[0]->forget_password_time > date("Y/m/d H:i:sa"));
        if ($admin_info[0]->forget_password_time > date("Y/m/d H:i:sa")) {
            $error = 2;
        } else {
            $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
            $charactersLength = strlen($characters);
            $randstring = '';
            for ($i = 0; $i < 30; $i++) {
                $randstring .= $characters[random_int(0, $charactersLength - 1)];
            }
            $admins_function->update(
                $admin,
                ["forget_password_time" => date("Y/m/d H:i", time() + 1800), "forget_password_hash" => $randstring]
            );

            $root = explode("/", $_SERVER['SCRIPT_URI']);
            $last_explode = $root[count($root) - 1];
            $root = str_replace($last_explode, "", $_SERVER['SCRIPT_URI']);

            $mail = new \Functions\Mail();
            $persian_date = new \Classes\PersianDate();
            $mail_res = $mail->Send(
                $admin_info[0]->email,
                "بازیابی کلمه عبور",
                "یک درخواست بازیابی کلمه عبور برای حساب کاربری شما ، ارسال شده است. در صورتیکه درخواست از طرف شما نبوده است این ایمیل را نادیده بگیرید.<br>" .
                "<a href=\"" . $root . "reset_password?a=$randstring\">برای بازیابی کلمه عبور خود اینجا کلیک کنید</a><br>" .
                "در صورتی که لینک بالا برای شما قابل مشاهده نیست از لینک زیر استفاده کنید(" . $root . "reset_password?a=$randstring)<br><br>" .
                "<br> آیپی : " . $_SERVER['REMOTE_ADDR'] . "<br>زمان ورود : " . $persian_date->jdate("Y/m/d H:i") . "<br>اطلاعات مرورگر : " . $_SERVER['HTTP_USER_AGENT'],
                null);
            echo $mail_res;
        }
    }
}

?>

<body>

<div class="container-fluid">
    <div class="row justify-content-center mt-5">
        <div class="col-md-4">
            <div class="card mb-0">
                <div class="card-body">
                    <div class="p-2">
                        <h4 class="text-muted float-right font-18 mt-4">بازیابی کلمه عبور</h4>
                        <div>
                            <a href="index-2.html" class="logo logo-admin"><img src="assets/img/icon.png" alt="logo"
                                                                                height="28"></a>
                        </div>
                    </div>

                    <div class="p-2">
                        <?php
                        if (isset($query['submit'])) {
                            if ($error == 0) {
                                ?>
                                <div class="my-2 alert alert-success mb-0" role="alert">
                                    <b>بازیابی موفق!</b> لینک بازیابی کلمه عبور با موفقیت ارسال شد و تا 30 دقیقه دیگر
                                    معتبر است
                                </div>
                                <?php
                            } elseif ($error == 2) {
                                ?>
                                <div class="my-2 alert alert-danger mb-0" role="alert">
                                    <b>دسترسی غیرمجاز!</b>کمتر از 5 دقیقه از زمان اخرین درخواست بازیابی کلمه عبور شما
                                    گذشته ، لطفا منتظر بمانید
                                </div>
                                <?php
                            }
                        }
                        ?>
                        <form class="form-horizontal m-t-20">

                            <div class="form-group row">
                                <div class="col-12">
                                    <input name="username" class="form-control" type="text" required=""
                                           placeholder="نام کاربری یا ایمیل">
                                </div>
                            </div>


                            <div class="form-group text-center row m-t-20">
                                <div class="col-12">
                                    <button name="submit" value="ok"
                                            class="btn btn-primary btn-block waves-effect waves-light" type="submit">
                                        ارسال لینک بازیابی کلمه عبور
                                    </button>
                                </div>
                            </div>

                            <span> برای ورود به حساب کاربری <a href="login">اینجا</a> کلیک کنید </span>

                        </form>
                    </div>

                </div>
            </div>
        </div>
    </div>
</div>
</body>