<?php
session_start();
require_once 'config/connexion.php';

// Rediriger si l'email ou la vérification du code n'est pas faite
if (empty($_SESSION['reset_email']) || empty($_SESSION['code_verified'])) {
    header('Location: forgot-password.php');
    exit;
}

$error = '';
$success = '';

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $password = $_POST['password'] ?? '';
    $confirm = $_POST['confirm_password'] ?? '';
    $email = $_SESSION['reset_email'];

    // Validation du mot de passe (même logique que register.php)
    if (empty($password) || empty($confirm)) {
        $error = "Veuillez saisir et confirmer le mot de passe.";
    } elseif ($password !== $confirm) {
        $error = "Les mots de passe ne correspondent pas.";
    } elseif (strlen($password) < 8) {
        $error = "Le mot de passe doit contenir au moins 8 caractères.";
    } elseif (!preg_match('/[A-Z]/', $password)) {
        $error = "Le mot de passe doit contenir au moins une majuscule.";
    } elseif (!preg_match('/[a-z]/', $password)) {
        $error = "Le mot de passe doit contenir au moins une minuscule.";
    } elseif (!preg_match('/[0-9]/', $password)) {
        $error = "Le mot de passe doit contenir au moins un chiffre.";
    } else {
        // Hash et mise à jour
        $hash = password_hash($password, PASSWORD_DEFAULT);
        $stmt = $conn->prepare("UPDATE users_table SET user_pass = ?, recup_pass = NULL, recup_expiry = NULL WHERE user_email = ?");
        $stmt->bind_param("ss", $hash, $email);
        if ($stmt->execute()) {
            // Nettoyer la session de récupération
            unset($_SESSION['reset_email'], $_SESSION['reset_code'], $_SESSION['reset_code_time'], $_SESSION['code_verified']);
            $success = "Votre mot de passe a été réinitialisé avec succès. <a href='login.php'>Connectez-vous</a>";
        } else {
            $error = "Erreur lors de la mise à jour du mot de passe.";
        }
        $stmt->close();
    }
}
?>
<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <title>Réinitialiser le mot de passe</title>
    <link href="vendor/bootstrap/css/bootstrap.min.css" rel="stylesheet" type="text/css">
    <link href="css/ruang-admin.min.css" rel="stylesheet">
</head>
<body class="bg-gradient-login">
<div class="container-login">
    <div class="row justify-content-center">
        <div class="col-xl-6 col-lg-6 col-md-9">
            <div class="card shadow-sm my-5">
                <div class="card-body p-0">
                    <div class="row">
                        <div class="col-lg-12">
                            <div class="login-form">
                                <div class="text-center">
                                    <h1 class="h4 text-gray-900 mb-4">Réinitialiser le mot de passe</h1>
                                </div>
                                <?php if ($error): ?>
                                    <div class="alert alert-danger text-center"><?= $error ?></div>
                                <?php endif; ?>
                                <?php if ($success): ?>
                                    <div class="alert alert-success text-center"><?= $success ?></div>
                                <?php else: ?>
                                <form method="POST" action="">
                                    <div class="form-group">
                                        <label>Nouveau mot de passe</label>
                                        <input type="password" class="form-control" name="password" required minlength="8" autocomplete="new-password">
                                    </div>
                                    <div class="form-group">
                                        <label>Confirmer le mot de passe</label>
                                        <input type="password" class="form-control" name="confirm_password" required minlength="8" autocomplete="new-password">
                                    </div>
                                    <div class="form-group">
                                        <button type="submit" class="btn btn-primary btn-block">Réinitialiser</button>
                                    </div>
                                </form>
                                <?php endif; ?>
                                <hr>
                                <div class="text-center">
                                    <a class="font-weight-bold small" href="login.php">Retour à la connexion</a>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<script src="vendor/jquery/jquery.min.js"></script>
<script src="vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="vendor/jquery-easing/jquery.easing.min.js"></script>
<script src="js/ruang-admin.min.js"></script>
</body>
</html>
