in thsi codes (    <?php
    // public/orders/add_order.php
    
    // Enable error reporting for debugging (disable in production)
    ini_set('display_errors', 1);
    ini_set('display_startup_errors', 1);
    error_reporting(E_ALL);
    
    // Start output buffering to prevent "headers already sent" errors
    ob_start();
    
    // Include authentication, database connection, and functions
    require_once __DIR__ . '/../../includes/auth.php';
    require_once __DIR__ . '/../../includes/db_connect.php';
    require_once __DIR__ . '/../../includes/functions.php'; // Include the functions.php for sanitize_input()
    
    // Initialize variables
    $success = '';
    $error = '';
    
    // Define an array of countries with their dialing codes
    $countries = [
        "Afghanistan" => "+93",
        "Albania" => "+355",
        "Algeria" => "+213",
        "Andorra" => "+376",
        "Angola" => "+244",
        "Antigua and Barbuda" => "+1-268",
        "Argentina" => "+54",
        "Armenia" => "+374",
        "Australia" => "+61",
        "Austria" => "+43",
        "Azerbaijan" => "+994",
        "Bahamas" => "+1-242",
        "Bahrain" => "+973",
        "Bangladesh" => "+880",
        "Barbados" => "+1-246",
        "Belarus" => "+375",
        "Belgium" => "+32",
        "Belize" => "+501",
        "Benin" => "+229",
        "Bhutan" => "+975",
        "Bolivia" => "+591",
        "Bosnia and Herzegovina" => "+387",
        "Botswana" => "+267",
        "Brazil" => "+55",
        "Brunei" => "+673",
        "Bulgaria" => "+359",
        "Burkina Faso" => "+226",
        "Burundi" => "+257",
        // ... (Add all other countries as needed)
        "Kuwait" => "+965",
        // Continue adding countries up to the desired list
    ];
    
    // Fetch products for selection
    $products_sql = "SELECT * FROM products ORDER BY name ASC";
    $products_result = $conn->query($products_sql);
    
    if (!$products_result) {
        die("Error fetching products: " . $conn->error);
    }
    
    // Initialize priority with default value
    $priority = 'Normal';
    
    // Handle form submission
    if ($_SERVER['REQUEST_METHOD'] == 'POST') {
        // Sanitize and validate input
        $selected_country = sanitize_input($_POST['country'] ?? '+965');
        $contact_input = sanitize_input($_POST['contact'] ?? '');
        $delivery_address = sanitize_input($_POST['delivery_address'] ?? '');
    
        // Ensure contact number contains only digits
        $contact_digits = preg_replace('/\D/', '', $contact_input);
        if (empty($contact_digits)) {
            $error = "A valid contact number is required.";
        } else {
            // Full contact number with country code
            $full_contact = $selected_country . $contact_digits;
    
            // Generate customer name
            $customer_name = 'Order_' . $contact_digits;
        }
    
        // Set priority
        $priority = sanitize_input($_POST['priority'] ?? 'Normal');
    
        $free_shipping = isset($_POST['free_shipping']) ? 1 : 0;
        $delivery_fee = $free_shipping ? 0.00 : (isset($_POST['delivery_fee']) ? floatval($_POST['delivery_fee']) : 0.00);
    
        // Validate priority
        $valid_priorities = ['Normal', 'Important', 'Quick'];
        if (!in_array($priority, $valid_priorities)) {
            $priority = 'Normal';
        }
    
        // Handle multiple products
        $product_ids = $_POST['product_id'] ?? [];
        $quantities = $_POST['quantity'] ?? [];
        $packaging_preferences = $_POST['packaging_preferences'] ?? [];
        $apply_discount = $_POST['apply_discount'] ?? [];
        $discount_percentages = $_POST['discount_percentage'] ?? [];
        $discount_reasons = $_POST['discount_reason'] ?? [];
    
        // Basic validation
        if (empty($customer_name)) {
            $error = "Customer name generation failed.";
        } elseif (empty($contact_input)) {
            $error = "Contact number is required.";
        } elseif (empty($product_ids) || !is_array($product_ids) || count($product_ids) == 0) {
            $error = "At least one product must be selected.";
        } else {
            // Validate each product entry
            foreach ($product_ids as $index => $pid) {
                if (empty($pid)) {
                    $error = "Product selection is required for all items.";
                    break;
                }
                if (!isset($quantities[$index]) || intval($quantities[$index]) <= 0) {
                    $error = "Quantity must be at least 1 for all items.";
                    break;
                }
                // If discount is applied, validate discount fields
                if (isset($apply_discount[$index])) {
                    $discount = trim($discount_percentages[$index]);
                    $reason = trim($discount_reasons[$index]);
                    if ($discount === '') {
                        $error = "Discount percentage is required if discount is applied.";
                        break;
                    }
                    if (!is_numeric($discount) || floatval($discount) < 0 || floatval($discount) > 100) {
                        $error = "Invalid discount percentage for product. It should be between 0 and 100.";
                        break;
                    }
                    if (empty($reason)) {
                        $error = "Discount reason is required if discount is applied.";
                        break;
                    }
                }
            }
    
            // Validate delivery_datetime
            $delivery_datetime_input = $_POST['delivery_datetime'] ?? '';
            if (!empty($delivery_datetime_input)) {
                // Convert from 'Y-m-d\TH:i' to 'Y-m-d H:i:s'
                $delivery_datetime = sanitize_input(str_replace('T', ' ', $delivery_datetime_input) . ':00');
                if (!preg_match("/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/", $delivery_datetime)) {
                    $error = "Invalid delivery date and time format.";
                } elseif (strtotime($delivery_datetime) < strtotime(date('Y-m-d H:i:s'))) {
                    $error = "Delivery date and time cannot be in the past.";
                }
            } else {
                $delivery_datetime = null;
            }
    
            // Validate delivery_fee if not free shipping
            if (!$free_shipping) {
                if (!isset($_POST['delivery_fee']) || !is_numeric($_POST['delivery_fee']) || floatval($_POST['delivery_fee']) < 0) {
                    $error = "Valid delivery fee is required.";
                }
            }
        }
    
        if (empty($error)) {
            // Start transaction
            $conn->begin_transaction();
    
            try {
                // Insert into customers table using prepared statement
                $stmt = $conn->prepare("INSERT INTO customers (name, contact, delivery_address) VALUES (?, ?, ?)");
                if (!$stmt) {
                    throw new Exception("Prepare statement failed: " . $conn->error);
                }
                $stmt->bind_param("sss", $customer_name, $full_contact, $delivery_address);
                if (!$stmt->execute()) {
                    throw new Exception("Execute failed: " . $stmt->error);
                }
                $customer_id = $stmt->insert_id;
                $stmt->close();
    
                // Insert into orders table using prepared statement
                $status = 'Pending'; // Default status
                $stmt = $conn->prepare("INSERT INTO orders (customer_id, status, priority, delivery_datetime, delivery_fee, free_shipping) VALUES (?, ?, ?, ?, ?, ?)");
                if (!$stmt) {
                    throw new Exception("Prepare statement failed: " . $conn->error);
                }
                $stmt->bind_param("isssdi", $customer_id, $status, $priority, $delivery_datetime, $delivery_fee, $free_shipping);
                if (!$stmt->execute()) {
                    throw new Exception("Execute failed: " . $stmt->error);
                }
                $order_id = $stmt->insert_id;
                $stmt->close();
    
                // Insert products into order_items table
                $stmt = $conn->prepare("INSERT INTO order_items (order_id, product_id, quantity, packaging_preferences, discount_percentage, discount_reason) VALUES (?, ?, ?, ?, ?, ?)");
                if (!$stmt) {
                    throw new Exception("Prepare statement failed: " . $conn->error);
                }
    
                // Loop through each product
                foreach ($product_ids as $index => $pid) {
                    $pid = intval($pid);
                    $qty = intval($quantities[$index]);
                    $pack_pref = sanitize_input($packaging_preferences[$index] ?? '');
    
                    // Handle discount
                    $discount_percent = 0.00;
                    $discount_rs = null;
                    if (isset($apply_discount[$index])) {
                        $discount_percent = floatval(trim($discount_percentages[$index]));
                        $discount_rs = sanitize_input($discount_reasons[$index]);
                    }
    
                    $stmt->bind_param("iiisds", $order_id, $pid, $qty, $pack_pref, $discount_percent, $discount_rs);
                    if (!$stmt->execute()) {
                        throw new Exception("Execute failed: " . $stmt->error);
                    }
                }
    
                $stmt->close();
    
                // Commit transaction
                $conn->commit();
    
                // Redirect to view_orders.php after successful addition
                header("Location: view_orders.php?success=1");
                exit();
            } catch (Exception $e) {
                // Rollback transaction
                $conn->rollback();
                $error = "Error adding order: " . $e->getMessage();
            }
        }
    }
    
    // Now include the header AFTER form handling
    require_once '../../includes/header.php';
    ?>
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Add New Order - Kaak Alia Management System</title>
        
        <!-- Tailwind CSS CDN -->
        <script src="https://cdn.tailwindcss.com"></script>
        
        <!-- Bootstrap Icons -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css">
        
        <!-- Flatpickr CSS for Date Picker -->
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
        
        <!-- Custom Styles -->
        <style>
            /* Custom scrollbar for better UX */
            ::-webkit-scrollbar {
                width: 8px;
            }
    
            ::-webkit-scrollbar-track {
                background: #f1f5f9; /* Tailwind's gray-100 */
            }
    
            ::-webkit-scrollbar-thumb {
                background: #20B2AA; /* Teal-500 */
                border-radius: 4px;
            }
    
            ::-webkit-scrollbar-thumb:hover {
                background: #0d9488; /* Teal-600 */
            }
    
            /* Responsive Table */
            @media (max-width: 768px) {
                table {
                    min-width: 600px;
                }
            }
        </style>
    
        <!-- Additional JavaScript for dynamic product addition, discount handling, and delivery fee toggle -->
        <script>
            let productCount = <?= isset($product_ids) ? count($product_ids) : 1; ?>;
    
            function addProductRow() {
                const productContainer = document.getElementById('products-container');
    
                const productRow = document.createElement('div');
                productRow.className = 'product-row bg-gray-50 p-4 rounded-lg shadow-md mb-4';
                productRow.innerHTML = `
                    <div class="grid grid-cols-1 md:grid-cols-4 gap-4">
                        <div>
                            <label class="block text-sm font-medium text-gray-700" for="product_id_${productCount}">Product <span class="text-red-500">*</span></label>
                            <select name="product_id[]" id="product_id_${productCount}" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" required>
                                <option value="">Select Product</option>
                                <?php
                                // Reset the products_result pointer
                                $products_result->data_seek(0);
                                while($product = $products_result->fetch_assoc()): ?>
                                    <option value="<?= htmlspecialchars($product['id']) ?>">
                                        <?= htmlspecialchars($product['name'] . " - " . $product['size'] . " (" . number_format($product['price'], 2) . " KD)") ?>
                                    </option>
                                <?php endwhile; ?>
                            </select>
                        </div>
                        <div>
                            <label class="block text-sm font-medium text-gray-700" for="quantity_${productCount}">Quantity <span class="text-red-500">*</span></label>
                            <input type="number" name="quantity[]" id="quantity_${productCount}" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" min="1" value="1" required>
                        </div>
                        <div>
                            <label class="block text-sm font-medium text-gray-700" for="packaging_preferences_${productCount}">Packaging Preferences</label>
                            <input type="text" name="packaging_preferences[]" id="packaging_preferences_${productCount}" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" placeholder="e.g., Gift Wrap">
                        </div>
                        <div>
                            <label class="block text-sm font-medium text-gray-700" for="discount_${productCount}">Apply Discount</label>
                            <div class="flex items-center mt-1">
                                <input type="checkbox" name="apply_discount[]" id="discount_checkbox_${productCount}" class="h-4 w-4 text-teal-600 border-gray-300 rounded" onchange="toggleDiscountFields(this, ${productCount})">
                                <label for="discount_checkbox_${productCount}" class="ml-2 block text-sm text-gray-700">
                                    Yes
                                </label>
                            </div>
                            <div id="discount_fields_${productCount}" class="discount-fields mt-2" style="display: none;">
                                <label class="block text-sm font-medium text-gray-700" for="discount_percentage_${productCount}">Discount Percentage (%) <span class="text-red-500">*</span></label>
                                <input type="number" name="discount_percentage[]" id="discount_percentage_${productCount}" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" min="0" max="100" step="0.01" placeholder="Enter discount percentage">
                                
                                <label class="block text-sm font-medium text-gray-700 mt-2" for="discount_reason_${productCount}">Discount Reason <span class="text-red-500">*</span></label>
                                <input type="text" name="discount_reason[]" id="discount_reason_${productCount}" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" placeholder="Enter reason for discount">
                            </div>
                        </div>
                    </div>
                    <div class="flex justify-end mt-2">
                        <button type="button" class="remove-product-button bg-red-500 text-white px-4 py-2 rounded-lg hover:bg-red-600 transition duration-300 flex items-center gap-2" onclick="removeProductRow(this)">
                            <i class="bi bi-trash-fill"></i> Remove Product
                        </button>
                    </div>
                `;
                productContainer.appendChild(productRow);
    
                // Initialize discount toggle for the new row
                const newCheckbox = productRow.querySelector(`input[name="apply_discount[]"]`);
                newCheckbox.addEventListener('change', function() {
                    toggleDiscountFields(this, productCount);
                });
    
                productCount++;
            }
    
            function removeProductRow(button) {
                const productRow = button.closest('.product-row');
                productRow.remove();
            }
    
            // Toggle discount fields based on checkbox
            function toggleDiscountFields(checkbox, count) {
                const discountFields = document.getElementById(`discount_fields_${count}`);
                if (checkbox.checked) {
                    discountFields.style.display = 'block';
                } else {
                    discountFields.style.display = 'none';
                    // Clear discount inputs
                    discountFields.querySelectorAll('input').forEach(input => input.value = '');
                }
            }
    
            // Toggle delivery fee field based on free shipping checkbox
            function toggleDeliveryFee() {
                const freeShippingCheckbox = document.getElementById('free_shipping');
                const deliveryFeeField = document.getElementById('delivery_fee_field');
                const deliveryFeeInput = document.getElementById('delivery_fee');
                if (freeShippingCheckbox.checked) {
                    deliveryFeeField.style.display = 'none';
                    deliveryFeeInput.value = '0.00';
                    deliveryFeeInput.disabled = true;
                } else {
                    deliveryFeeField.style.display = 'block';
                    deliveryFeeInput.disabled = false;
                }
            }
    
            // Auto-generate Customer Name based on Contact Number
            function autoGenerateCustomerName() {
                const contactInput = document.getElementById('contact');
                const customerNameInput = document.getElementById('customer_name');
                
                // Extract digits from contact number
                const digits = contactInput.value.replace(/\D/g, '');
                if (digits.length > 0) {
                    customerNameInput.value = 'Order_' + digits;
                } else {
                    customerNameInput.value = '';
                }
            }
    
            // Initialize on DOM content loaded
            document.addEventListener('DOMContentLoaded', function() {
                // Add initial product row if none exist
                if (document.getElementById('products-container').children.length === 0) {
                    addProductRow();
                }
    
                // Initialize delivery fee toggle
                toggleDeliveryFee();
                document.getElementById('free_shipping').addEventListener('change', toggleDeliveryFee);
    
                // Initialize Customer Name auto-generation
                document.getElementById('contact').addEventListener('input', autoGenerateCustomerName);
            });
        </script>
    
    </head>
    <body class="bg-gray-100">
    
        <!-- Main Container -->
        <main class="container mx-auto p-6">
            <!-- Header -->
            <div class="mb-8">
                <h1 class="text-3xl font-bold text-teal-600 flex items-center">
                    <i class="bi bi-cart-plus mr-2"></i> Add New Order
                </h1>
            </div>
    
            <!-- Welcome Section -->
            <div class="bg-white rounded-lg shadow-lg p-6 mb-8">
                <p class="text-gray-700">Fill out the form below to add a new customer order.</p>
            </div>
    
            <!-- Form Container -->
            <div class="bg-white rounded-lg shadow-lg p-6">
                <?php if (!empty($error)): ?>
                    <div class="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative mb-4 flex items-center">
                        <i class="bi bi-exclamation-triangle-fill mr-2"></i>
                        <span><?= htmlspecialchars($error) ?></span>
                    </div>
                <?php endif; ?>
                <?php if (!empty($success)): ?>
                    <div class="bg-green-100 border border-green-400 text-green-700 px-4 py-3 rounded relative mb-4 flex items-center">
                        <i class="bi bi-check-circle-fill mr-2"></i>
                        <span><?= htmlspecialchars($success) ?></span>
                    </div>
                <?php endif; ?>
                
                <form method="POST" action="add_order.php">
                    <!-- Customer Details -->
                    <div class="mb-6">
                        <h2 class="text-xl font-semibold text-gray-800 mb-4">Customer Details</h2>
                        
                        <div class="flex flex-col md:flex-row md:space-x-6">
                            <div class="flex-1 mb-4 md:mb-0">
                                <label class="block text-sm font-medium text-gray-700 mb-1" for="customer_name">Customer Name <span class="text-red-500">*</span></label>
                                <input type="text" id="customer_name" name="customer_name" class="form-control" 
                                       value="<?= htmlspecialchars($customer_name ?? '') ?>" 
                                       readonly placeholder="Auto-generated based on contact number" required>
                            </div>
                            <div class="flex-1 mb-4 md:mb-0">
                                <label class="block text-sm font-medium text-gray-700 mb-1" for="country">Country <span class="text-red-500">*</span></label>
                                <select name="country" id="country" class="form-control" required>
                                    <?php foreach($countries as $country => $code): ?>
                                        <option value="<?= htmlspecialchars($code) ?>" <?= (isset($_POST['country']) && $_POST['country'] === $code) ? 'selected' : '' ?>>
                                            <?= htmlspecialchars($country . " (" . $code . ")") ?>
                                        </option>
                                    <?php endforeach; ?>
                                </select>
                            </div>
                        </div>
    
                        <div class="flex flex-col md:flex-row md:space-x-6 mt-4">
                            <div class="flex-1 mb-4 md:mb-0">
                                <label class="block text-sm font-medium text-gray-700 mb-1" for="contact">Contact <span class="text-red-500">*</span></label>
                                <input type="text" id="contact" name="contact" class="form-control" 
                                       value="<?= htmlspecialchars($_POST['contact'] ?? '') ?>" 
                                       required placeholder="Enter contact number without country code">
                            </div>
                            <div class="flex-1">
                                <label class="block text-sm font-medium text-gray-700 mb-1" for="delivery_address">Delivery Address</label>
                                <textarea id="delivery_address" name="delivery_address" class="form-control" rows="3" placeholder="Enter delivery address"><?= htmlspecialchars($_POST['delivery_address'] ?? '') ?></textarea>
                            </div>
                        </div>
                    </div>
                    <hr class="my-6">
    
                    <!-- Order Details -->
                    <div class="mb-6">
                        <h2 class="text-xl font-semibold text-gray-800 mb-4">Order Details</h2>
                        
                        <!-- Priority Selection -->
                        <div class="mb-4">
                            <label class="block text-sm font-medium text-gray-700 mb-1">Order Priority</label>
                            <div class="flex space-x-4">
                                <?php
                                    $priorities = ['Normal', 'Important', 'Quick'];
                                    foreach ($priorities as $priority_option):
                                        $checked = ($priority === $priority_option) ? 'checked' : '';
                                ?>
                                    <label class="inline-flex items-center">
                                        <input type="radio" name="priority" value="<?= htmlspecialchars($priority_option) ?>" class="form-radio text-teal-600" <?= $checked ?> required>
                                        <span class="ml-2"><?= htmlspecialchars($priority_option) ?></span>
                                    </label>
                                <?php endforeach; ?>
                            </div>
                        </div>
    
                        <!-- Products Selection -->
                        <div class="mb-4">
                            <div class="flex justify-between items-center mb-2">
                                <label class="block text-sm font-medium text-gray-700">Products <span class="text-red-500">*</span></label>
                                <button type="button" class="bg-teal-500 text-white px-4 py-2 rounded-lg hover:bg-teal-600 transition duration-300 flex items-center gap-2" onclick="addProductRow()">
                                    <i class="bi bi-plus-circle-fill"></i> Add Product
                                </button>
                            </div>
                            <div id="products-container">
                                <!-- Product Rows will be added here -->
                                <?php
                                // If form was submitted with errors, repopulate the product rows
                                if ($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($error) && !empty($product_ids) && is_array($product_ids)) {
                                    foreach ($product_ids as $i => $pid) {
                                        ?>
                                        <div class="product-row bg-gray-50 p-4 rounded-lg shadow-md mb-4">
                                            <div class="grid grid-cols-1 md:grid-cols-4 gap-4">
                                                <div>
                                                    <label class="block text-sm font-medium text-gray-700" for="product_id_<?= $i ?>">Product <span class="text-red-500">*</span></label>
                                                    <select name="product_id[]" id="product_id_<?= $i ?>" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" required>
                                                        <option value="">Select Product</option>
                                                        <?php
                                                        $products_result->data_seek(0);
                                                        while($product = $products_result->fetch_assoc()):
                                                            $selected = ($product['id'] == $pid) ? 'selected' : '';
                                                        ?>
                                                            <option value="<?= htmlspecialchars($product['id']) ?>" <?= $selected ?>>
                                                                <?= htmlspecialchars($product['name'] . " - " . $product['size'] . " (" . number_format($product['price'], 2) . " KD)") ?>
                                                            </option>
                                                        <?php endwhile; ?>
                                                    </select>
                                                </div>
                                                <div>
                                                    <label class="block text-sm font-medium text-gray-700" for="quantity_<?= $i ?>">Quantity <span class="text-red-500">*</span></label>
                                                    <input type="number" name="quantity[]" id="quantity_<?= $i ?>" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" min="1" value="<?= isset($quantities[$i]) ? intval($quantities[$i]) : '1' ?>" required>
                                                </div>
                                                <div>
                                                    <label class="block text-sm font-medium text-gray-700" for="packaging_preferences_<?= $i ?>">Packaging Preferences</label>
                                                    <input type="text" name="packaging_preferences[]" id="packaging_preferences_<?= $i ?>" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" placeholder="e.g., Gift Wrap" value="<?= htmlspecialchars($packaging_preferences[$i] ?? '') ?>">
                                                </div>
                                                <div>
                                                    <label class="block text-sm font-medium text-gray-700" for="discount_${i}">Apply Discount</label>
                                                    <div class="flex items-center mt-1">
                                                        <input type="checkbox" name="apply_discount[]" id="discount_checkbox_<?= $i ?>" class="h-4 w-4 text-teal-600 border-gray-300 rounded" onchange="toggleDiscountFields(this, <?= $i ?>)" <?= isset($apply_discount[$i]) ? 'checked' : '' ?>>
                                                        <label for="discount_checkbox_<?= $i ?>" class="ml-2 block text-sm text-gray-700">
                                                            Yes
                                                        </label>
                                                    </div>
                                                    <div id="discount_fields_<?= $i ?>" class="discount-fields mt-2" style="display: <?= isset($apply_discount[$i]) ? 'block' : 'none' ?>;">
                                                        <label class="block text-sm font-medium text-gray-700" for="discount_percentage_<?= $i ?>">Discount Percentage (%) <span class="text-red-500">*</span></label>
                                                        <input type="number" name="discount_percentage[]" id="discount_percentage_<?= $i ?>" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" min="0" max="100" step="0.01" placeholder="Enter discount percentage" value="<?= htmlspecialchars($discount_percentages[$i] ?? '') ?>">
                                                        
                                                        <label class="block text-sm font-medium text-gray-700 mt-2" for="discount_reason_<?= $i ?>">Discount Reason <span class="text-red-500">*</span></label>
                                                        <input type="text" name="discount_reason[]" id="discount_reason_<?= $i ?>" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" placeholder="Enter reason for discount" value="<?= htmlspecialchars($discount_reasons[$i] ?? '') ?>">
                                                    </div>
                                                </div>
                                            </div>
                                            <div class="flex justify-end mt-2">
                                                <button type="button" class="remove-product-button bg-red-500 text-white px-4 py-2 rounded-lg hover:bg-red-600 transition duration-300 flex items-center gap-2" onclick="removeProductRow(this)">
                                                    <i class="bi bi-trash-fill"></i> Remove Product
                                                </button>
                                            </div>
                                        </div>
                                        <?php
                                    }
                                } else {
                                    // Add one default product row
                                    ?>
                                    <div class="product-row bg-gray-50 p-4 rounded-lg shadow-md mb-4">
                                        <div class="grid grid-cols-1 md:grid-cols-4 gap-4">
                                            <div>
                                                <label class="block text-sm font-medium text-gray-700" for="product_id_0">Product <span class="text-red-500">*</span></label>
                                                <select name="product_id[]" id="product_id_0" class="mt-1 block w-full border border-gray-300 rounded-md shadow-sm focus:ring-teal-500 focus:border-teal-500" required>
                                                    <option value="">Select Product</option>
                                                    <?php
                                                    $products_result->data_seek(0);
                                                    while($product = $products_result->fetch_assoc()): ?>
                                                        <option value="<?= htmlspecialchars($product['id']) ?>">
                                                            <?= htmlspecialchars($product['name'] . " - " . $product['size'] . " (" . number_format($product['price'], 2) . " KD)") ?>
                                                        </option>
                                                    <?php endwhile; ?>
                                                </select>
                                            </div>
                                            <div>
                                                <label class="block text-sm font-medium text-gray-700" for="quantity_0">Quantity <span class="text-red-500">*</span></label>
                                                <input type="number" name="quantity[]" id="quantity_0" class="form-control" min="1" value="1" required>
                                            </div>
                                            <div>
                                                <label class="block text-sm font-medium text-gray-700" for="packaging_preferences_0">Packaging Preferences</label>
                                                <input type="text" name="packaging_preferences[]" id="packaging_preferences_0" class="form-control" placeholder="e.g., Gift Wrap">
                                            </div>
                                            <div>
                                                <label class="block text-sm font-medium text-gray-700" for="discount_0">Apply Discount</label>
                                                <div class="flex items-center mt-1">
                                                    <input type="checkbox" name="apply_discount[]" id="discount_checkbox_0" class="h-4 w-4 text-teal-600 border-gray-300 rounded" onchange="toggleDiscountFields(this, 0)">
                                                    <label for="discount_checkbox_0" class="ml-2 block text-sm text-gray-700">
                                                        Yes
                                                    </label>
                                                </div>
                                                <div id="discount_fields_0" class="discount-fields mt-2" style="display: none;">
                                                    <label class="block text-sm font-medium text-gray-700" for="discount_percentage_0">Discount Percentage (%) <span class="text-red-500">*</span></label>
                                                    <input type="number" name="discount_percentage[]" id="discount_percentage_0" class="form-control" min="0" max="100" step="0.01" placeholder="Enter discount percentage">
                                                    
                                                    <label class="block text-sm font-medium text-gray-700 mt-2" for="discount_reason_0">Discount Reason <span class="text-red-500">*</span></label>
                                                    <input type="text" name="discount_reason[]" id="discount_reason_0" class="form-control" placeholder="Enter reason for discount">
                                                </div>
                                            </div>
                                        </div>
                                        <div class="flex justify-end mt-2">
                                            <button type="button" class="remove-product-button bg-red-500 text-white px-4 py-2 rounded-lg hover:bg-red-600 transition duration-300 flex items-center gap-2" onclick="removeProductRow(this)">
                                                <i class="bi bi-trash-fill"></i> Remove Product
                                            </button>
                                        </div>
                                    </div>
                                    <?php
                                }
                                ?>
                            </div>
                            <button type="button" class="bg-teal-500 text-white px-4 py-2 rounded-lg hover:bg-teal-600 transition duration-300 flex items-center gap-2" onclick="addProductRow()">
                                <i class="bi bi-plus-circle-fill"></i> Add Another Product
                            </button>
                        </div>
    
                        <!-- Delivery Details -->
                        <hr class="my-6">
                        <div class="mb-6">
                            <h2 class="text-xl font-semibold text-gray-800 mb-4">Delivery Details</h2>
                            <div class="flex items-center mb-4">
                                <input type="checkbox" id="free_shipping" name="free_shipping" class="h-4 w-4 text-teal-600 border-gray-300 rounded" <?= isset($_POST['free_shipping']) ? 'checked' : '' ?> onchange="toggleDeliveryFee()">
                                <label for="free_shipping" class="ml-2 block text-sm text-gray-700">
                                    Free Shipping
                                </label>
                            </div>
                            <div id="delivery_fee_field" class="mb-4">
                                <label class="block text-sm font-medium text-gray-700 mb-1" for="delivery_fee">Delivery Fee (KWD)</label>
                                <input type="number" step="0.01" min="0" name="delivery_fee" id="delivery_fee" class="form-control" 
                                       value="<?= isset($_POST['delivery_fee']) ? htmlspecialchars($_POST['delivery_fee']) : '0.00' ?>" 
                                       <?= isset($_POST['free_shipping']) ? 'disabled' : '' ?> required>
                            </div>
                            <div>
                                <label class="block text-sm font-medium text-gray-700 mb-1" for="delivery_datetime">Delivery Date and Time</label>
                                <input type="datetime-local" id="delivery_datetime" name="delivery_datetime" class="form-control" 
                                       value="<?= htmlspecialchars($_POST['delivery_datetime'] ?? '') ?>">
                            </div>
                        </div>
    
                        <!-- Submit Button -->
                        <div class="mb-6">
                            <button type="submit" class="w-full bg-teal-500 text-white px-4 py-3 rounded-lg hover:bg-teal-600 transition duration-300 flex justify-center items-center gap-2">
                                <i class="bi bi-plus-lg"></i> Add Order
                            </button>
                        </div>
                    </form>
                </div>
    
                <!-- Footer -->
                <div class="mt-12 text-center text-gray-600">
                    &copy; <?= date("Y") ?> Kaak Alia Bakery. All rights reserved.
                </div>
        </main>
    
        <!-- Bootstrap JS Bundle (optional if using Bootstrap components) -->
        <script src="/kaak_alia_management_system/assets/bootstrap/js/bootstrap.bundle.min.js"></script>
        
        <!-- Flatpickr JS for Date Picker -->
        <script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
    
        <!-- Flatpickr Initialization -->
        <script>
            flatpickr("#delivery_datetime", {
                enableTime: true,
                dateFormat: "Y-m-d\\TH:i",
                minDate: "today"
            });
        </script>
    
        <!-- Optional: Bootstrap Tooltip Initialization (if using tooltips in future) -->
        <script>
            var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="tooltip"]'))
            var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
                return new bootstrap.Tooltip(tooltipTriggerEl)
            })
        </script>
    
    </body>
    </html>
    <?php
    // Flush the output buffer
    ob_end_flush();
    // No closing PHP tag to prevent unwanted output
    ?> )refined version of each section’s descriptive sentences, with additional details and guidance to make the "Add Order" page clear and professional.

Customer Details
"Customer Name"
"Automatically generated based on customer profile information. If unavailable, enter the customer's full name for record purposes."

"Country"
"Select the customer’s country to ensure accurate address formatting and delivery options. Default is set to Kuwait (+965)."

"Contact Number"
"Enter a valid contact number where the customer can be reached for order confirmation or delivery updates. Include area code if applicable."

"Delivery Address"
"Provide the full delivery address, including building name, street, area, and any special instructions to facilitate easy and efficient delivery."

Order Details
"Order Priority"
"Choose a priority level for this order based on urgency: Normal for standard processing, Important for prioritized handling, and Quick for immediate attention."

"Products"
"List each product the customer wishes to order. Use the ‘Add Another Product’ button to include multiple items within the same order. Ensure accurate product selection and quantity for inventory management."

"Product"
"Select the product from the dropdown menu. This list includes available items that can be added to the customer's order."

"Quantity"
"Enter the number of units required for each selected product. Quantities must be in whole numbers and are defaulted to one (1) if not specified."

"Packaging Preferences"
"Specify any particular packaging requests, such as ‘Gift Wrap’ or ‘Fragile - Handle with Care,’ to ensure customer satisfaction and safe delivery."

"Apply Discount"
"Check this box if the customer is eligible for a discount. Discounts will be applied to the total product cost at checkout."

Delivery Details
"Free Shipping"
"Select this option if the customer qualifies for free shipping based on promotional offers or order amount. Delivery fees will automatically update."

"Delivery Fee (KWD)"
"Enter any applicable delivery fee in Kuwaiti Dinar (KWD). This field will automatically set to 0 if ‘Free Shipping’ is selected."

"Delivery Date and Time"
"Choose a specific date and time for the order delivery. Ensure the date aligns with the customer’s availability and our delivery schedule to avoid delays."

General Notes for the Page
Overall Goal: This form is designed to streamline the order-placing process for both customers and administrators. Each section is divided by clear headings and detailed descriptions, making it easy to gather the necessary information without missing any critical fields.
Button Guidance:
Add Product Button: "Use this button to include additional products in the order. Each new line will prompt for a product, quantity, and any special instructions."
Remove Product Button: "If you mistakenly add an extra product or need to make adjustments, click ‘Remove Product’ to delete that product line."
Add Order Button: "Once all sections are complete, click this button to save the order to the system. The order will be reviewed and prepared according to the specified priority level and delivery details."
Additional Suggestions
These descriptions should appear in a slightly smaller, gray-toned font below each field label to ensure readability without overwhelming the page visually. Adding a few icons or helper tips (small question mark icons with tooltips) next to each description could also enhance user guidance.

These descriptions aim to be concise yet informative, providing clear instructions to prevent user errors and enhance the experience. Let me know if you'd like more customization options!






 and type full codes and make it better and readable