<?php
// modules/profile.php
require_once '../includes/auth.php';
checkLogin();
require_once '../config/db.php';

$userId = $_SESSION['user_id'];
$msg = '';
$error = '';

if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['action']) && $_POST['action'] === 'change_my_password') {
    $oldPassword = $_POST['old_password'];
    $newPassword = $_POST['new_password'];
    $confirmPassword = $_POST['confirm_password'];

    // دریافت رمز فعلی از دیتابیس برای بررسی صحت آن
    $stmt = $pdo->prepare("SELECT password FROM users WHERE id = ?");
    $stmt->execute([$userId]);
    $user = $stmt->fetch();

    if (!password_verify($oldPassword, $user['password'])) {
        $error = "رمز عبور فعلی اشتباه است.";
    } elseif ($newPassword !== $confirmPassword) {
        $error = "رمز عبور جدید و تکرار آن یکسان نیستند.";
    } elseif (strlen($newPassword) < 6) {
        $error = "رمز عبور جدید باید حداقل ۶ کاراکتر باشد.";
    } else {
        // هش کردن رمز جدید و ذخیره در دیتابیس
        $hashedPassword = password_hash($newPassword, PASSWORD_DEFAULT);
        $updateStmt = $pdo->prepare("UPDATE users SET password = ? WHERE id = ?");
        $updateStmt->execute([$hashedPassword, $userId]);
        $msg = "رمز عبور شما با موفقیت تغییر کرد.";
    }
}

require_once '../includes/header.php';
?>

<div class="max-w-md mx-auto bg-white rounded-2xl shadow-sm border border-gray-100 p-8 mt-10 border-t-4 border-t-blue-500">
    <h2 class="text-2xl font-bold text-gray-800 mb-6 text-center">تغییر رمز عبور شخصی</h2>
    
    <?php if($error): ?>
        <div class="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded mb-4 text-sm font-bold"><?php echo $error; ?></div>
    <?php endif; ?>
    <?php if($msg): ?>
        <div class="bg-green-100 border border-green-400 text-green-700 px-4 py-3 rounded mb-4 text-sm font-bold"><?php echo $msg; ?></div>
    <?php endif; ?>

    <form method="POST">
        <input type="hidden" name="action" value="change_my_password">
        
        <div class="mb-4">
            <label class="block text-sm font-bold mb-2 text-gray-700">رمز عبور فعلی</label>
            <input type="password" name="old_password" required class="w-full border rounded-lg p-3 bg-gray-50 focus:border-blue-500" dir="ltr">
        </div>
        
        <div class="mb-4">
            <label class="block text-sm font-bold mb-2 text-gray-700">رمز عبور جدید</label>
            <input type="password" name="new_password" required class="w-full border rounded-lg p-3 bg-gray-50 focus:border-blue-500" dir="ltr">
        </div>
        
        <div class="mb-6">
            <label class="block text-sm font-bold mb-2 text-gray-700">تکرار رمز عبور جدید</label>
            <input type="password" name="confirm_password" required class="w-full border rounded-lg p-3 bg-gray-50 focus:border-blue-500" dir="ltr">
        </div>
        
        <button type="submit" class="w-full bg-blue-600 text-white font-bold py-3 rounded-lg hover:bg-blue-700 transition">ذخیره رمز جدید</button>
    </form>
</div>

<?php require_once '../includes/footer.php'; ?>