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

$error = '';

// اگر کاربر از قبل لاگین کرده بود، مستقیم برود داشبورد
if (isset($_SESSION['user_id'])) {
    header("Location: modules/dashboard.php");
    exit;
}

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    // گرفتن اطلاعات از فرم
    $username = trim($_POST['username']);
    $password = $_POST['password'];
    $captcha_input = trim($_POST['captcha']);

    // ۱. اعتبارسنجی کپچا (قبل از هرگونه ارتباط با دیتابیس)
    if (!isset($_SESSION['captcha_answer']) || $captcha_input != $_SESSION['captcha_answer']) {
        $error = "کد امنیتی (حاصل جمع) اشتباه است.";
    } else {
        // ۲. جستجوی دقیق بر اساس یوزرنیم انگلیسی
        $stmt = $pdo->prepare("SELECT * FROM users WHERE username = ?");
        $stmt->execute([$username]);
        $user = $stmt->fetch();

        if ($user && password_verify($password, $user['password'])) {
            // لاگین موفق
            $_SESSION['user_id'] = $user['id'];
            $_SESSION['username'] = $user['username'];
            $_SESSION['role'] = $user['role'];
            
            // ذخیره نام نمایشی (فارسی)
            $_SESSION['fullname'] = !empty($user['fullname']) ? $user['fullname'] : $user['username'];

            header("Location: modules/dashboard.php");
            exit;
        } else {
            $error = "نام کاربری یا رمز عبور اشتباه است.";
        }
    }
}

// تولید کپچای جدید برای نمایش در فرم (همیشه بعد از پردازش POST ساخته می‌شود)
$num1 = rand(1, 9);
$num2 = rand(1, 9);
$_SESSION['captcha_answer'] = $num1 + $num2;
?>
<!DOCTYPE html>
<html lang="fa" dir="rtl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>ورود به پنل VPNet</title>
    <script src="/vpnet-panel/assets/js/tailwindcss.js"></script>
    <link href="/vpnet-panel/assets/css/Vazirmatn-font-face.css" rel="stylesheet">
    <style> body { font-family: 'Vazirmatn', sans-serif; } </style>
</head>
<body class="bg-gray-100 flex items-center justify-center min-h-screen">
    <div class="bg-white p-8 rounded-3xl shadow-xl w-full max-w-sm border-t-8 border-blue-600">
        <div class="text-center mb-8">
            <h1 class="text-3xl font-black text-gray-800 tracking-tighter">VPNet</h1>
            <p class="text-sm text-gray-500 mt-2 font-bold">سیستم مدیریت یکپارچه فروش</p>
        </div>

        <?php if($error): ?>
            <div class="bg-red-50 border border-red-200 text-red-600 px-4 py-3 rounded-xl mb-6 text-sm font-bold text-center">
                <?php echo $error; ?>
            </div>
        <?php endif; ?>

        <form method="POST" class="space-y-5">
            <div>
                <label class="block text-sm font-bold text-gray-700 mb-2">نام کاربری (انگلیسی)</label>
                <input type="text" name="username" required class="w-full border-2 border-gray-200 p-3 rounded-xl text-left font-mono outline-none focus:border-blue-500 transition bg-gray-50 focus:bg-white" dir="ltr" placeholder="Username">
            </div>
            
            <div>
                <label class="block text-sm font-bold text-gray-700 mb-2">رمز عبور</label>
                <input type="password" name="password" required class="w-full border-2 border-gray-200 p-3 rounded-xl text-left font-mono outline-none focus:border-blue-500 transition bg-gray-50 focus:bg-white" dir="ltr" placeholder="••••••••">
            </div>

            <!-- بخش کپچای امنیتی -->
            <div>
                <label class="block text-sm font-bold text-gray-700 mb-2">کد امنیتی</label>
                <div class="flex items-center gap-3">
                    <div class="bg-blue-50 border border-blue-200 text-blue-700 font-mono font-black text-lg px-4 py-2.5 rounded-xl w-1/2 text-center select-none" dir="ltr">
                        <?php echo $num1; ?> + <?php echo $num2; ?> = ?
                    </div>
                    <input type="number" name="captcha" required class="w-full border-2 border-gray-200 p-3 rounded-xl text-center font-mono outline-none focus:border-blue-500 transition bg-gray-50 focus:bg-white w-1/2" dir="ltr" placeholder="جواب">
                </div>
            </div>

            <button type="submit" class="w-full bg-blue-600 hover:bg-blue-700 text-white font-bold py-3.5 rounded-xl transition shadow-md text-lg mt-2">
                ورود به حساب
            </button>
        </form>
    </div>
</body>
</html>