<?php
require_once 'main/helper/connect.php';
require_once 'main/helper/functions.php';
require_once 'main/helper/qr_helper.php';

$page_title = 'تسجيل المستخدم';
$success_message = '';
$error_message = '';
$qr_data = null;
$data_qr_data = null;
$data_qr_row = null;

// Handle form submission
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name = check($_POST['name'] ?? '');
    $company_name = check($_POST['company_name'] ?? '');
    $phone = check($_POST['phone'] ?? '');

    // Basic validation
    if (empty($name) || empty($company_name) || empty($phone)) {
        $error_message = 'جميع الحقول مطلوبة.';
    } elseif (strlen($name) < 2) {
        $error_message = 'يجب أن لا يقل الاسم عن حرفين.';
    } elseif (strlen($company_name) < 2) {
        $error_message = 'يجب أن لا يقل اسم الشركة عن حرفين.';
    } elseif (!preg_match('/^[\+]?[0-9\s\-\(\)]{10,}$/', $phone)) {
        $error_message = 'يرجى إدخال رقم هاتف صحيح.';
    } else {
        try {
            // Insert user into database (بدون الرقم المميز)
            $stmt = $con->prepare("INSERT INTO users (name, company_name, phone) VALUES (?, ?, ?)");
            $stmt->execute([$name, $company_name, $phone]);

            $user_id = $con->lastInsertId();

            // Generate user link with correct path
            $protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http';
            $host = $_SERVER['HTTP_HOST'];
            $script_name = $_SERVER['SCRIPT_NAME'];
            $base_path = dirname($script_name);
            $user_link = $protocol . '://' . $host . $base_path . '/user.php?id=' . $user_id;

            // (تم إخفاء رمز الرابط والاكتفاء برمز البيانات)
            // $qr_data = generateQRCode($user_id, $user_link);

            // Generate data-embedded QR (CSV payload only)
            $data_qr_data = generateDataQRCode($user_id, $name, $company_name, $phone);
            // Fetch latest data QR row to read scan status
            $data_qr_row = getDataQRCode($user_id);

            if ($data_qr_data) {
                $success_message = 'تم التسجيل بنجاح! تم إنشاء رمز QR بالبيانات.';
            } else {
                $error_message = 'تم التسجيل بنجاح ولكن فشل إنشاء رمز QR للبيانات.';
            }

        } catch (Exception $e) {
            error_log("Registration error: " . $e->getMessage());
            $error_message = 'حدث خطأ أثناء التسجيل. يرجى المحاولة مرة أخرى.';
        }
    }
}

include 'includes/header.php';
?>

<div class="container">
    <?php if ($success_message): ?>
        <div class="success-container">
            <div class="alert alert-success" role="alert">
                <h4 class="alert-heading">✅ <?php echo htmlspecialchars($success_message); ?></h4>
            </div>

            <?php /* تم إخفاء عرض رمز الرابط */ ?>

            <?php if ($data_qr_data): ?>
                <div class="qr-code-container qr-card-navy mt-4">
                    <h5>رمز QR يتضمن البيانات</h5>
                    <div class="mb-3">
                        <strong>رقمك:</strong>
                        <span class="badge bg-secondary" style="font-size:1rem;">
                            <?php echo (int)($user_id ?? 0); ?>
                        </span>
                    </div>
                    <?php if (file_exists($data_qr_data['path'])): ?>
                        <img src="<?php echo htmlspecialchars($data_qr_data['web_path']); ?>" alt="Data QR Code" class="qr-code-image">
                    <?php else: ?>
                        <div class="alert alert-info">
                            <strong>المحتوى:</strong><br>
                            <code style="white-space: pre-wrap; display:block; direction:ltr; text-align:left;"><?php echo htmlspecialchars($data_qr_data['payload']); ?></code>
                        </div>
                    <?php endif; ?>

                    <div class="mt-3">
                        <a href="<?php echo htmlspecialchars($data_qr_data['web_path']); ?>"
                           download="<?php echo $data_qr_data['filename']; ?>" class="btn btn-gold me-2">
                            📥 تنزيل رمز البيانات
                        </a>
                    </div>
                </div>
            <?php endif; ?>

            <div class="mt-4">
                <a href="index.php" class="btn btn-outline-primary">تسجيل مستخدم آخر</a>
            </div>
        </div>
    <?php else: ?>
        <div class="registration-container">
            <div class="text-center mb-4">
                <h2 class="fw-bold">تسجيل المستخدم</h2>
            </div>

            <?php if ($error_message): ?>
                <div class="alert alert-danger" role="alert">
                    <?php echo htmlspecialchars($error_message); ?>
                </div>
            <?php endif; ?>

            <form method="POST" action="" novalidate>
                <div class="mb-3">
                    <label for="name" class="form-label">الاسم الكامل *</label>
                    <input type="text" class="form-control" id="name" name="name"
                        value="<?php echo htmlspecialchars($_POST['name'] ?? ''); ?>" required minlength="2"
                        placeholder="أدخل اسمك الكامل">
                </div>

                <div class="mb-3">
                    <label for="company_name" class="form-label">اسم الشركة *</label>
                    <input type="text" class="form-control" id="company_name" name="company_name"
                        value="<?php echo htmlspecialchars($_POST['company_name'] ?? ''); ?>" required minlength="2"
                        placeholder="أدخل اسم الشركة">
                </div>

                <div class="mb-4">
                    <label for="phone" class="form-label">رقم التليفون *</label>
                    <input type="tel" class="form-control" id="phone" name="phone"
                        value="<?php echo htmlspecialchars($_POST['phone'] ?? ''); ?>" required
                        pattern="[\+]?[0-9\s\-\(\)]{10,}" placeholder="أدخل رقم التليفون">  
                </div>

                <div class="d-grid">
                    <button type="submit" class="btn btn-primary btn-lg">
                        📝 تسجيل
                    </button>
                </div>
            </form>
        </div>
    <?php endif; ?>
</div>

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