<?php
if (session_status() === PHP_SESSION_NONE) {
    session_start();
}
require_once 'includes/db.php';

// যদি ইউজার আগে থেকেই লগইন করা থাকে
if (isset($_SESSION['customer_id'])) {
    header("Location: profile.php"); 
    exit;
}

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

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name = trim($_POST['name']);
    $phone = trim($_POST['phone']);
    $email = trim($_POST['email']) ?: null; // ইমেইল না দিলে NULL হিসেবে সেভ হবে
    $address = trim($_POST['address']);
    $password = $_POST['password'];
    $confirm_password = $_POST['confirm_password'];

    // ভ্যালিডেশন
    if (empty($name) || empty($phone) || empty($address) || empty($password)) {
        $error = "অনুগ্রহ করে সবগুলো প্রয়োজনীয় (*) ঘর পূরণ করুন।";
    } elseif (strlen($password) < 6) {
        $error = "পাসওয়ার্ড কমপক্ষে ৬ অক্ষরের হতে হবে।";
    } elseif ($password !== $confirm_password) {
        $error = "পাসওয়ার্ড দুটি মিলছে না।";
    } else {
        // মোবাইল নাম্বার ইউনিক কি না চেক করা
        $check_phone = $pdo->prepare("SELECT id FROM users WHERE phone = ?");
        $check_phone->execute([$phone]);
        
        if ($check_phone->rowCount() > 0) {
            $error = "এই মোবাইল নাম্বারটি দিয়ে ইতিপূর্বে রেজিস্ট্রেশন করা হয়েছে।";
        } else {
            try {
                $hashed_password = password_hash($password, PASSWORD_DEFAULT);
                $stmt = $pdo->prepare("INSERT INTO users (name, phone, email, address, password, role) VALUES (?, ?, ?, ?, ?, 'customer')");
                
                if ($stmt->execute([$name, $phone, $email, $address, $hashed_password])) {
                    // রেজিস্ট্রেশন সফল হলে অটো-লগইন করানো
                    $user_id = $pdo->lastInsertId();
                    $_SESSION['customer_id'] = $user_id;
                    $_SESSION['customer_name'] = $name;
                    $_SESSION['customer_phone'] = $phone;
                    $_SESSION['customer_address'] = $address;

                    // যদি কার্টে কিছু থাকে তবে চেকআউটে যাবে, না থাকলে প্রোফাইলে
                    if (!empty($_SESSION['cart'])) {
                        header("Location: checkout.php");
                    } else {
                        header("Location: profile.php");
                    }
                    exit;
                }
            } catch (PDOException $e) {
                $error = "রেজিস্ট্রেশন ব্যর্থ হয়েছে: " . $e->getMessage();
            }
        }
    }
}

require_once 'includes/header.php';
?>

<div class="py-12 md:py-20 bg-gray-50 min-h-screen flex items-center justify-center px-4 pb-24">
    <div class="max-w-2xl w-full bg-white p-8 md:p-12 rounded-3xl shadow-xl border border-gray-100">
        
        <div class="text-center mb-10">
            <h2 class="text-3xl md:text-4xl font-bold font-bangla text-primary mb-2">নতুন একাউন্ট</h2>
            <p class="text-gray-500 font-bangla">IzhaanPrinters-এ আপনাকে স্বাগতম! আপনার তথ্য দিয়ে ফর্মটি পূরণ করুন।</p>
        </div>

        <?php if($error): ?>
            <div class="bg-red-50 text-red-600 p-4 rounded-xl mb-8 text-sm font-bangla border border-red-100 flex items-center gap-3">
                <i class="fa-solid fa-circle-exclamation text-lg"></i> <?= $error ?>
            </div>
        <?php endif; ?>

        <form action="register.php" method="POST" class="space-y-6 font-bangla text-gray-700">
            
            <div class="grid grid-cols-1 md:grid-cols-2 gap-6">
                <!-- Name -->
                <div>
                    <label class="block text-sm font-bold mb-1 ml-1">আপনার নাম <span class="text-red-500">*</span></label>
                    <div class="relative">
                        <span class="absolute inset-y-0 left-0 pl-3 flex items-center text-gray-400"><i class="fa-regular fa-user"></i></span>
                        <input type="text" name="name" value="<?= htmlspecialchars($name ?? '') ?>" required placeholder="যেমন: আব্দুর রহমান" class="w-full pl-10 pr-4 py-3 bg-gray-50 border border-gray-200 rounded-xl focus:ring-2 focus:ring-primary outline-none transition">
                    </div>
                </div>

                <!-- Phone -->
                <div>
                    <label class="block text-sm font-bold mb-1 ml-1">মোবাইল নাম্বার <span class="text-red-500">*</span></label>
                    <div class="relative">
                        <span class="absolute inset-y-0 left-0 pl-3 flex items-center text-gray-400"><i class="fa-solid fa-phone"></i></span>
                        <input type="text" name="phone" value="<?= htmlspecialchars($phone ?? '') ?>" required placeholder="01XXXXXXXXX" class="w-full pl-10 pr-4 py-3 bg-gray-50 border border-gray-200 rounded-xl focus:ring-2 focus:ring-primary outline-none en-font transition">
                    </div>
                </div>
            </div>

            <!-- Email -->
            <div>
                <label class="block text-sm font-bold mb-1 ml-1">ইমেইল ঠিকানা (ঐচ্ছিক)</label>
                <div class="relative">
                    <span class="absolute inset-y-0 left-0 pl-3 flex items-center text-gray-400"><i class="fa-regular fa-envelope"></i></span>
                    <input type="email" name="email" value="<?= htmlspecialchars($email ?? '') ?>" placeholder="example@mail.com" class="w-full pl-10 pr-4 py-3 bg-gray-50 border border-gray-200 rounded-xl focus:ring-2 focus:ring-primary outline-none en-font transition">
                </div>
            </div>

            <!-- Full Address -->
            <div>
                <label class="block text-sm font-bold mb-1 ml-1">বিস্তারিত ঠিকানা <span class="text-red-500">*</span></label>
                <div class="relative">
                    <span class="absolute top-3 left-3 text-gray-400"><i class="fa-solid fa-location-dot"></i></span>
                    <textarea name="address" required rows="2" placeholder="আপনার ডেলিভারি ঠিকানা লিখুন..." class="w-full pl-10 pr-4 py-3 bg-gray-50 border border-gray-200 rounded-xl focus:ring-2 focus:ring-primary outline-none transition resize-none"><?= htmlspecialchars($address ?? '') ?></textarea>
                </div>
            </div>

            <div class="grid grid-cols-1 md:grid-cols-2 gap-6">
                <!-- Password -->
                <div>
                    <label class="block text-sm font-bold mb-1 ml-1">পাসওয়ার্ড <span class="text-red-500">*</span></label>
                    <div class="relative">
                        <span class="absolute inset-y-0 left-0 pl-3 flex items-center text-gray-400"><i class="fa-solid fa-lock"></i></span>
                        <input type="password" name="password" required placeholder="••••••••" class="w-full pl-10 pr-4 py-3 bg-gray-50 border border-gray-200 rounded-xl focus:ring-2 focus:ring-primary outline-none en-font transition">
                    </div>
                </div>

                <!-- Confirm Password -->
                <div>
                    <label class="block text-sm font-bold mb-1 ml-1">পাসওয়ার্ড পুনরায় দিন <span class="text-red-500">*</span></label>
                    <div class="relative">
                        <span class="absolute inset-y-0 left-0 pl-3 flex items-center text-gray-400"><i class="fa-solid fa-circle-check"></i></span>
                        <input type="password" name="confirm_password" required placeholder="••••••••" class="w-full pl-10 pr-4 py-3 bg-gray-50 border border-gray-200 rounded-xl focus:ring-2 focus:ring-primary outline-none en-font transition">
                    </div>
                </div>
            </div>

            <div class="pt-4">
                <button type="submit" class="w-full bg-primary text-white py-4 rounded-2xl font-bold text-lg shadow-lg hover:bg-blue-900 transition transform active:scale-[0.98] font-bangla flex items-center justify-center gap-2">
                    <i class="fa-solid fa-user-plus"></i> একাউন্ট তৈরি করুন
                </button>
            </div>
        </form>

        <div class="mt-10 pt-6 border-t border-gray-100 text-center">
            <p class="text-sm font-bangla text-gray-500">
                ইতিমধ্যে একাউন্ট আছে? 
                <a href="login.php" class="text-primary font-bold hover:underline ml-1">লগইন করুন</a>
            </p>
        </div>
    </div>
</div>

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