<?php
// orders.php - مع تحديث تلقائي كل 10 ثواني باستخدام AJAX
include 'config.php';
checkCustomerAuth();

$customer_id = $_SESSION['customer_id'];

// جلب طلبات العميل مع معلومات التخفيضات
$sql = "SELECT o.*, d.discount_name, 
               (SELECT COUNT(*) FROM order_items WHERE order_id = o.id) as items_count,
               (SELECT SUM(quantity) FROM order_items WHERE order_id = o.id) as total_items
        FROM orders o 
        LEFT JOIN direct_discounts d ON o.discount_id = d.id 
        WHERE o.customer_id = ? 
        ORDER BY o.created_at DESC";

$stmt = $conn->prepare($sql);
if (!$stmt) {
    die("خطأ في إعداد الاستعلام: " . $conn->error);
}

$stmt->bind_param("i", $customer_id);
$stmt->execute();
$orders_result = $stmt->get_result();

// جلب بيانات المستخدم
$customer_name = isset($_SESSION['customer_name']) ? $_SESSION['customer_name'] : 'زائر';
$customer_email = isset($_SESSION['customer_email']) ? $_SESSION['customer_email'] : '';

// حساب عدد العناصر في السلة للقائمة الجانبية
$cart_count = 0;
if (isset($_SESSION['cart']) && is_array($_SESSION['cart'])) {
    foreach ($_SESSION['cart'] as $item) {
        $cart_count += $item['quantity'] ?? 0;
    }
}

// جلب عدد الشكاوي غير المقروءة
$unread_tickets = 0;
if (isset($_SESSION['customer_id'])) {
    $stmt = $conn->prepare("
        SELECT COUNT(*) as count
        FROM ticket_messages m
        JOIN customer_tickets t ON m.ticket_id = t.id
        WHERE t.customer_id = ? 
        AND m.sender_type = 'admin' 
        AND m.is_read = FALSE
    ");
    $stmt->bind_param('i', $_SESSION['customer_id']);
    $stmt->execute();
    $result = $stmt->get_result();
    $row = $result->fetch_assoc();
    $unread_tickets = $row['count'] ?? 0;
    $stmt->close();
}

// حساب الإحصائيات
$pending_orders = 0;
$total_orders = 0;
$completed_orders = 0;

if ($orders_result && $orders_result->num_rows > 0) {
    $orders_result->data_seek(0);
    while ($order = $orders_result->fetch_assoc()) {
        $total_orders++;
        if ($order['status'] == 'pending') $pending_orders++;
        if ($order['status'] == 'delivered') $completed_orders++;
    }
    $orders_result->data_seek(0);
}

// دالة لتحديد لون القسم
function getPortionColor($portion_name) {
    $portion_name = trim($portion_name);
    
    $colors = [
        'ربع' => '#4CAF50',
        'نص' => '#2196F3',
        'حبة' => '#F57C00',
        'صغير' => '#FF9800',
        'وسط' => '#03A9F4',
        'كبير' => '#F44336',
        'نفر' => '#9C27B0',
        'نص نفر' => '#673AB7'
    ];
    
    foreach ($colors as $key => $color) {
        if ($portion_name == $key || strpos($portion_name, $key) !== false) {
            return $color;
        }
    }
    
    return '#F57C00';
}

// رسالة النجاح من الجلسة
$success_message = $_SESSION['success_message'] ?? '';
unset($_SESSION['success_message']);
?>
<!DOCTYPE html>
<html lang="ar" dir="rtl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <title>Max - طلباتي</title>
    <link href="https://fonts.googleapis.com/css2?family=Tajawal:wght@400;500;700;800&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.0/font/bootstrap-icons.css">
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            -webkit-tap-highlight-color: transparent;
        }

        :root {
            --primary: #F57C00;
            --primary-dark: #E65100;
            --primary-light: #FFB74D;
            --primary-soft: #FFF3E0;
            --accent: #FF9800;
            --success: #4CAF50;
            --danger: #F44336;
            --warning: #FF9800;
            --info: #29B6F6;
            --dark: #2E3B4E;
            --gray: #78909C;
            --gray-light: #ECEFF1;
            --white: #FFFFFF;
            --shadow-sm: 0 2px 8px rgba(245, 124, 0, 0.1);
            --shadow-md: 0 4px 16px rgba(245, 124, 0, 0.15);
            --radius-md: 20px;
            --radius-round: 100px;
            --header-height: 60px;
        }

        body {
            font-family: 'Tajawal', sans-serif;
            background: #f8f9fa;
            padding-top: var(--header-height);
            padding-bottom: 20px;
            min-height: 100vh;
        }

        .main-header {
            background: linear-gradient(135deg, var(--primary), var(--accent));
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            height: var(--header-height);
            z-index: 1000;
            display: flex;
            align-items: center;
            padding: 0 15px;
            box-shadow: var(--shadow-md);
        }

        .header-content {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            max-width: 500px;
            margin: 0 auto;
        }

        .header-left {
            display: flex;
            align-items: center;
        }

        .menu-toggle {
            background: rgba(255, 255, 255, 0.2);
            border: none;
            width: 44px;
            height: 44px;
            border-radius: 50%;
            color: white;
            font-size: 1.5rem;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.2s ease;
        }

        .menu-toggle:active {
            transform: scale(0.95);
            background: rgba(255, 255, 255, 0.3);
        }

        .header-center {
            flex: 1;
            text-align: center;
        }

        .restaurant-name {
            color: white;
            font-size: 1.3rem;
            font-weight: 800;
            text-decoration: none;
            display: inline-flex;
            align-items: center;
            gap: 5px;
        }

        .header-right {
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .icon-btn {
            background: rgba(255, 255, 255, 0.2);
            border: none;
            width: 44px;
            height: 44px;
            border-radius: 50%;
            color: white;
            font-size: 1.3rem;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            text-decoration: none;
            position: relative;
            transition: all 0.2s ease;
        }

        .icon-btn:active {
            transform: scale(0.95);
            background: rgba(255, 255, 255, 0.3);
        }

        .badge {
            position: absolute;
            top: -5px;
            left: -5px;
            background: var(--danger);
            color: white;
            font-size: 11px;
            min-width: 20px;
            height: 20px;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            border: 2px solid white;
            font-weight: bold;
        }

        .sidebar-overlay {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0, 0, 0, 0.5);
            z-index: 2000;
            display: none;
            backdrop-filter: blur(3px);
        }

        .sidebar-overlay.active {
            display: block;
        }

        .sidebar {
            position: fixed;
            top: 0;
            right: -300px;
            width: 280px;
            height: 100vh;
            background: white;
            z-index: 2001;
            transition: right 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            display: flex;
            flex-direction: column;
            box-shadow: -5px 0 20px rgba(0, 0, 0, 0.2);
        }

        .sidebar.active {
            right: 0;
        }

        .sidebar-header {
            background: linear-gradient(135deg, var(--primary), var(--accent));
            color: white;
            padding: 30px 20px;
            position: relative;
        }

        .sidebar-close {
            position: absolute;
            top: 10px;
            left: 10px;
            background: rgba(255, 255, 255, 0.2);
            border: none;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            color: white;
            font-size: 1.3rem;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.2s ease;
        }

        .sidebar-close:active {
            transform: scale(0.9);
            background: rgba(255, 255, 255, 0.3);
        }

        .sidebar-user {
            text-align: center;
        }

        .sidebar-avatar {
            width: 70px;
            height: 70px;
            background: rgba(255, 255, 255, 0.2);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 2.5rem;
            margin: 0 auto 10px;
            border: 3px solid rgba(255, 255, 255, 0.3);
        }

        .sidebar-name {
            font-weight: 700;
            font-size: 1.2rem;
            color: white;
        }

        .sidebar-email {
            font-size: 0.85rem;
            opacity: 0.9;
            color: white;
        }

        .sidebar-menu {
            flex: 1;
            overflow-y: auto;
        }

        .menu-item {
            display: flex;
            align-items: center;
            padding: 15px 20px;
            color: var(--dark);
            text-decoration: none;
            border-bottom: 1px solid var(--gray-light);
            transition: background 0.2s ease;
        }

        .menu-item:active {
            background: var(--primary-soft);
        }

        .menu-item i {
            width: 30px;
            color: var(--primary);
            font-size: 1.2rem;
        }

        .menu-item span {
            flex: 1;
            font-weight: 500;
        }

        .menu-badge {
            background: var(--danger);
            color: white;
            padding: 3px 10px;
            border-radius: 20px;
            font-size: 11px;
            font-weight: bold;
        }

        .sidebar-footer {
            padding: 20px;
            text-align: center;
            border-top: 1px solid var(--gray-light);
            color: var(--gray);
            font-size: 0.85rem;
        }

        .page-container {
            padding: 15px;
            max-width: 500px;
            margin: 0 auto;
        }

        .page-header {
            text-align: center;
            margin-bottom: 20px;
        }

        .page-title {
            font-size: 1.8rem;
            font-weight: 800;
            color: var(--primary);
            margin-bottom: 5px;
        }

        .page-subtitle {
            color: var(--gray);
            font-size: 0.95rem;
        }

        .stats-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 10px;
            margin-bottom: 25px;
        }

        .stat-card {
            background: white;
            border-radius: var(--radius-md);
            padding: 15px 5px;
            text-align: center;
            box-shadow: var(--shadow-sm);
            border: 1px solid var(--primary-light);
        }

        .stat-number {
            font-size: 1.5rem;
            font-weight: 800;
            color: var(--primary);
            line-height: 1.2;
        }

        .stat-label {
            font-size: 12px;
            color: var(--gray);
            font-weight: 500;
        }

        .orders-list {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .order-card {
            background: white;
            border-radius: var(--radius-md);
            padding: 15px;
            box-shadow: var(--shadow-sm);
            border: 1px solid var(--primary-light);
            cursor: pointer;
            transition: transform 0.2s ease;
            position: relative;
        }

        .order-card.updated {
            animation: highlight 1s ease;
        }

        @keyframes highlight {
            0% { background-color: rgba(245, 124, 0, 0.2); }
            100% { background-color: white; }
        }

        .order-card:active {
            transform: scale(0.98);
        }

        .order-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 5px;
            color: var(--gray);
            font-size: 0.85rem;
        }

        .order-id {
            font-weight: 700;
            color: var(--primary);
            font-size: 1rem;
        }

        .order-date {
            color: var(--gray);
        }

        .order-status {
            font-size: 0.9rem;
            font-weight: 600;
            margin-bottom: 8px;
            transition: all 0.3s ease;
        }

        .status-pending {
            color: var(--warning);
        }

        .status-accepted {
            color: var(--info);
        }

        .status-preparing {
            color: var(--info);
        }

        .status-on_the_way {
            color: var(--info);
        }

        .status-delivered {
            color: var(--success);
        }

        .status-cancelled {
            color: var(--danger);
        }

        .order-meal {
            font-size: 1rem;
            font-weight: 600;
            color: var(--dark);
            margin-bottom: 5px;
        }

        .portion-info {
            display: inline-flex;
            align-items: center;
            gap: 3px;
            margin-right: 5px;
            font-size: 0.8rem;
            font-weight: 500;
        }

        .order-price {
            font-size: 1rem;
            font-weight: 700;
            color: var(--primary);
            margin: 5px 0;
        }

        .view-details {
            color: var(--primary);
            font-weight: 600;
            font-size: 0.9rem;
            margin-top: 5px;
        }

        .empty-state {
            text-align: center;
            padding: 50px 20px;
            background: white;
            border-radius: var(--radius-md);
            box-shadow: var(--shadow-sm);
        }

        .empty-icon {
            font-size: 4rem;
            color: var(--primary-light);
            margin-bottom: 20px;
        }

        .btn-primary {
            background: linear-gradient(135deg, var(--primary), var(--accent));
            color: white;
            padding: 12px 25px;
            border: none;
            border-radius: var(--radius-round);
            font-weight: 700;
            display: inline-flex;
            align-items: center;
            gap: 8px;
            text-decoration: none;
            margin-top: 15px;
        }

        .modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0,0,0,0.5);
            z-index: 3000;
            display: none;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(3px);
        }

        .modal-overlay.active {
            display: flex;
        }

        .modal-content {
            background: white;
            border-radius: var(--radius-md);
            width: 92%;
            max-width: 450px;
            max-height: 85vh;
            overflow-y: auto;
            animation: modalPop 0.3s ease;
        }

        @keyframes modalPop {
            from {
                transform: scale(0.8);
                opacity: 0;
            }
            to {
                transform: scale(1);
                opacity: 1;
            }
        }

        .modal-header {
            background: linear-gradient(135deg, var(--primary), var(--accent));
            color: white;
            padding: 15px 20px;
            border-radius: var(--radius-md) var(--radius-md) 0 0;
            position: relative;
        }

        .modal-close {
            position: absolute;
            top: 10px;
            left: 15px;
            background: rgba(255,255,255,0.2);
            border: none;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            color: white;
            font-size: 1.2rem;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
        }

        .modal-body {
            padding: 20px;
        }

        .toast-container {
            position: fixed;
            top: 70px;
            left: 15px;
            right: 15px;
            z-index: 4000;
            pointer-events: none;
        }

        .toast {
            background: white;
            border-radius: 15px;
            padding: 12px 20px;
            margin-bottom: 10px;
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
            display: flex;
            align-items: center;
            gap: 10px;
            animation: slideDown 0.3s ease;
            border-right: 5px solid var(--success);
            pointer-events: auto;
        }

        .toast.success { border-right-color: var(--success); }
        .toast.info { border-right-color: var(--info); }
        .toast.warning { border-right-color: var(--warning); }

        .toast-icon {
            width: 30px;
            height: 30px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .toast.success .toast-icon {
            background: rgba(76,175,80,0.1);
            color: var(--success);
        }

        .toast.info .toast-icon {
            background: rgba(41,182,246,0.1);
            color: var(--info);
        }

        .toast.warning .toast-icon {
            background: rgba(255,152,0,0.1);
            color: var(--warning);
        }

        @keyframes slideDown {
            from {
                transform: translateY(-20px);
                opacity: 0;
            }
            to {
                transform: translateY(0);
                opacity: 1;
            }
        }

        @keyframes spin {
            to { transform: rotate(360deg); }
        }

        .loading-spinner {
            width: 40px;
            height: 40px;
            border: 3px solid var(--gray-light);
            border-top-color: var(--primary);
            border-radius: 50%;
            animation: spin 1s linear infinite;
            margin: 0 auto;
        }

        @media (max-width: 360px) {
            .stats-grid {
                grid-template-columns: 1fr;
            }
        }

        /* مؤشر التحديث الخفي */
        #update-indicator {
            position: fixed;
            bottom: 20px;
            right: 20px;
            width: 40px;
            height: 40px;
            border-radius: 50%;
            background: var(--primary);
            color: white;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.2rem;
            box-shadow: var(--shadow-md);
            opacity: 0;
            transition: opacity 0.3s ease;
            z-index: 9999;
            pointer-events: none;
        }
        
        #update-indicator.show {
            opacity: 0.7;
        }
    </style>
</head>
<body>
    <!-- مؤشر التحديث الخفي (يمكن إخفاؤه تماماً) -->
    <div id="update-indicator">
        <i class="bi bi-arrow-repeat"></i>
    </div>

    <!-- الهيدر الموحد -->
    <header class="main-header">
        <div class="header-content">
            <div class="header-left">
                <button class="menu-toggle" onclick="openSidebar()">
                    <i class="bi bi-list"></i>
                </button>
            </div>
            <div class="header-center">
                <span class="restaurant-name">
                    <i class="bi bi-shop"></i> Max
                </span>
            </div>
            <div class="header-right">
                <a href="support.php" class="icon-btn" title="الإشعارات">
                    <i class="bi bi-bell"></i>
                    <?php if($unread_tickets > 0): ?>
                    <span class="badge"><?= $unread_tickets ?></span>
                    <?php endif; ?>
                </a>
            </div>
        </div>
    </header>

    <!-- القائمة الجانبية الموحدة -->
    <div class="sidebar-overlay" id="sidebarOverlay" onclick="closeSidebar()"></div>
    <div class="sidebar" id="sidebar">
        <div class="sidebar-header">
            <button class="sidebar-close" onclick="closeSidebar()">
                <i class="bi bi-x"></i>
            </button>
            <div class="sidebar-user">
                <div class="sidebar-avatar">
                    <i class="bi bi-person-circle"></i>
                </div>
                <div class="sidebar-name"><?= htmlspecialchars($customer_name) ?></div>
                <div class="sidebar-email"><?= htmlspecialchars($customer_email) ?></div>
            </div>
        </div>
        <div class="sidebar-menu">
            <a href="home.php" class="menu-item">
                <i class="bi bi-house-door"></i>
                <span>الرئيسية</span>
            </a>
            <a href="cart.php" class="menu-item">
                <i class="bi bi-cart3"></i>
                <span>السلة</span>
                <?php if($cart_count > 0): ?>
                <span class="menu-badge"><?= $cart_count ?></span>
                <?php endif; ?>
            </a>
            <a href="orders.php" class="menu-item active">
                <i class="bi bi-receipt"></i>
                <span>طلباتي</span>
            </a>
            <a href="profile.php" class="menu-item">
                <i class="bi bi-person"></i>
                <span>حسابي</span>
            </a>
            <a href="privacy.php" class="menu-item">
                <i class="bi bi-shield-lock"></i>
                <span>سياسة الخصوصية</span>
            </a>
            <a href="about.php" class="menu-item">
                <i class="bi bi-info-circle"></i>
                <span>عن المطعم</span>
            </a>
            <a href="about.php#developer" class="menu-item">
                <i class="bi bi-code-square"></i>
                <span>عن المطور</span>
            </a>
            <?php if (isset($_SESSION['customer_id'])): ?>
            <a href="logout.php" class="menu-item" style="color: var(--danger);">
                <i class="bi bi-box-arrow-left" style="color: var(--danger);"></i>
                <span>تسجيل الخروج</span>
            </a>
            <?php endif; ?>
        </div>
        <div class="sidebar-footer">
            <small>Max App v2.0</small>
        </div>
    </div>

    <!-- مودال تفاصيل الطلب -->
    <div class="modal-overlay" id="orderModal">
        <div class="modal-content">
            <div class="modal-header">
                <button class="modal-close" onclick="closeOrderModal()"><i class="bi bi-x"></i></button>
                <h3 id="modalOrderId">تفاصيل الطلب</h3>
                <p id="modalOrderDate"></p>
            </div>
            <div class="modal-body" id="modalBody">
                <div style="text-align: center; padding: 30px;">
                    <div class="loading-spinner"></div>
                    <p style="color: var(--gray); margin-top: 15px;">جاري تحميل التفاصيل...</p>
                </div>
            </div>
        </div>
    </div>

    <!-- رسائل التوست -->
    <div class="toast-container" id="toastContainer">
        <?php if (!empty($success_message)): ?>
        <div class="toast success">
            <div class="toast-icon"><i class="bi bi-check-circle"></i></div>
            <div class="toast-content"><?= htmlspecialchars($success_message) ?></div>
        </div>
        <?php endif; ?>
    </div>

    <div class="page-container">
        <div class="page-header">
            <h1 class="page-title">طلبات</h1>
            <p class="page-subtitle">تتبع طلبات السابقة والحالية</p>
        </div>

        <!-- إحصائيات -->
        <div class="stats-grid">
            <div class="stat-card">
                <div class="stat-number" id="pending-count"><?= $pending_orders ?></div>
                <div class="stat-label">قيد الانظار</div>
            </div>
            <div class="stat-card">
                <div class="stat-number" id="total-count"><?= $total_orders ?></div>
                <div class="stat-label">إجمالي الطلبات</div>
            </div>
            <div class="stat-card">
                <div class="stat-number" id="completed-count"><?= $completed_orders ?></div>
                <div class="stat-label">مكتملة</div>
            </div>
        </div>

        <!-- قائمة الطلبات -->
        <?php if ($orders_result && $orders_result->num_rows > 0): ?>
            <div class="orders-list" id="ordersList">
                <?php while ($order = $orders_result->fetch_assoc()): 
                    // تحديد نص الحالة
                    $status_text = [
                        'pending' => 'قيد الانظار',
                        'accepted' => 'تم القبول',
                        'preparing' => 'جاري التجهيز',
                        'ready' => 'جاهز',
                        'on_the_way' => 'في الطريق',
                        'delivered' => 'تم التوصيل',
                        'cancelled' => 'ملغي'
                    ][$order['status']] ?? $order['status'];
                    
                    // تحديد كلاس الحالة
                    $status_class = [
                        'pending' => 'status-pending',
                        'accepted' => 'status-accepted',
                        'preparing' => 'status-preparing',
                        'ready' => 'status-accepted',
                        'on_the_way' => 'status-on_the_way',
                        'delivered' => 'status-delivered',
                        'cancelled' => 'status-cancelled'
                    ][$order['status']] ?? 'status-pending';
                    
                    // جلب عناصر الطلب مع الأقسام
                    $items_sql = "SELECT oi.*, m.name as meal_name
                                 FROM order_items oi
                                 LEFT JOIN meals m ON oi.meal_id = m.id
                                 WHERE oi.order_id = ?
                                 ORDER BY oi.id ASC";
                    $items_stmt = $conn->prepare($items_sql);
                    $items_stmt->bind_param("i", $order['id']);
                    $items_stmt->execute();
                    $items_result = $items_stmt->get_result();
                    
                    // أخذ أول عنصر فقط للعرض
                    $first_item = $items_result->fetch_assoc();
                ?>
                <div class="order-card" data-order-id="<?= $order['id'] ?>" data-status="<?= $order['status'] ?>" onclick="viewOrderDetails(<?= $order['id'] ?>, '<?= date('Y/m/d', strtotime($order['created_at'])) ?>')">
                    <div class="order-header">
                        <span class="order-id">#<?= $order['id'] ?></span>
                        <span class="order-date"><?= date('Y/m/d', strtotime($order['created_at'])) ?></span>
                    </div>
                    
                    <div class="order-status <?= $status_class ?>" id="status-<?= $order['id'] ?>">
                        <?= $status_text ?>
                    </div>
                    
                    <?php if ($first_item): ?>
                    <div class="order-meal">
                        <?= htmlspecialchars($first_item['meal_name']) ?>
                        <?php if (!empty($first_item['portion_name']) && $first_item['portion_name'] != 'كامل'): ?>
                        <span class="portion-info" style="color: <?= getPortionColor($first_item['portion_name']) ?>">
                            <i class="bi bi-tag"></i> <?= htmlspecialchars($first_item['portion_name']) ?>
                        </span>
                        <?php endif; ?>
                    </div>
                    <?php endif; ?>
                    
                    <div class="view-details">
                        عرض التفاصيل
                    </div>
                </div>
                <?php endwhile; ?>
            </div>
        <?php else: ?>
            <!-- لا توجد طلبات -->
            <div class="empty-state">
                <i class="bi bi-inbox empty-icon"></i>
                <h3 class="empty-title">لا توجد طلبات</h3>
                <p class="empty-text">لم تقم بإجراء أي طلبات بعد</p>
                <a href="home.php" class="btn-primary">
                    <i class="bi bi-shop"></i> تصفح الوجبات
                </a>
            </div>
        <?php endif; ?>
    </div>

    <script>
    // ===== متغيرات عامة =====
    let updateInterval;
    let activeOrders = [];
    let isUpdating = false;
    let updateCount = 0;
    
    // مؤشر التحديث (يمكن إخفاؤه)
    const updateIndicator = document.getElementById('update-indicator');

    // ===== القائمة الجانبية =====
    function openSidebar() {
        document.getElementById('sidebar').classList.add('active');
        document.getElementById('sidebarOverlay').classList.add('active');
        document.body.style.overflow = 'hidden';
    }

    function closeSidebar() {
        document.getElementById('sidebar').classList.remove('active');
        document.getElementById('sidebarOverlay').classList.remove('active');
        document.body.style.overflow = '';
    }

    // ===== مودال تفاصيل الطلب =====
    function viewOrderDetails(orderId, orderDate = '') {
        const modal = document.getElementById('orderModal');
        const modalBody = document.getElementById('modalBody');
        const modalOrderId = document.getElementById('modalOrderId');
        const modalOrderDate = document.getElementById('modalOrderDate');
        
        modalOrderId.textContent = 'طلب #' + orderId;
        modalOrderDate.textContent = orderDate ? orderDate : '';
        
        modalBody.innerHTML = `
            <div style="text-align: center; padding: 30px;">
                <div class="loading-spinner"></div>
                <p style="color: var(--gray); margin-top: 15px;">جاري تحميل التفاصيل...</p>
            </div>
        `;
        
        modal.classList.add('active');
        
        // استخدام AJAX لتحميل التفاصيل
        const xhr = new XMLHttpRequest();
        xhr.open('GET', 'get_order_details.php?id=' + orderId, true);
        xhr.onreadystatechange = function() {
            if (xhr.readyState === 4 && xhr.status === 200) {
                modalBody.innerHTML = xhr.responseText;
            } else if (xhr.readyState === 4 && xhr.status !== 200) {
                modalBody.innerHTML = `
                    <div style="text-align: center; padding: 30px; color: var(--danger);">
                        <i class="bi bi-exclamation-triangle" style="font-size: 3rem; display: block; margin-bottom: 15px;"></i>
                        <p>حدث خطأ في تحميل التفاصيل</p>
                        <button onclick="closeOrderModal()" style="margin-top:15px; padding:8px 20px; background:var(--primary); color:white; border:none; border-radius:100px;">إغلاق</button>
                    </div>
                `;
            }
        };
        xhr.send();
    }

    function closeOrderModal() {
        document.getElementById('orderModal').classList.remove('active');
    }

    // ===== تحديث حالة الطلبات التلقائي باستخدام AJAX =====
    function startAutoUpdate() {
        console.log('بدء التحديث التلقائي AJAX...');
        collectActiveOrders();
        
        // تحديث كل 10 ثواني
        updateInterval = setInterval(function() {
            checkOrderUpdates();
        }, 10000);
        
        // تحديث فوري بعد 2 ثانية
        setTimeout(checkOrderUpdates, 2000);
    }

    function stopAutoUpdate() {
        if (updateInterval) {
            clearInterval(updateInterval);
            updateInterval = null;
            console.log('تم إيقاف التحديث التلقائي');
        }
    }

    function collectActiveOrders() {
        activeOrders = [];
        const orderCards = document.querySelectorAll('.order-card');
        
        orderCards.forEach(card => {
            const orderId = card.getAttribute('data-order-id');
            if (orderId) {
                activeOrders.push(parseInt(orderId));
            }
        });
        
        console.log('الطلبات النشطة:', activeOrders.length);
    }

    function showUpdateIndicator(show = true) {
        if (show) {
            updateIndicator.classList.add('show');
            setTimeout(() => {
                updateIndicator.classList.remove('show');
            }, 500);
        }
    }

    function checkOrderUpdates() {
        // منع التحديثات المتزامنة
        if (isUpdating) return;
        
        if (activeOrders.length === 0) {
            collectActiveOrders();
        }
        
        if (activeOrders.length === 0) return;
        
        isUpdating = true;
        showUpdateIndicator(true);
        
        let completedRequests = 0;
        let updatedCount = 0;
        
        // تحديث كل طلب على حدة باستخدام AJAX
        activeOrders.forEach(orderId => {
            const xhr = new XMLHttpRequest();
            xhr.open('GET', 'get_order_status.php?id=' + orderId + '&t=' + Date.now(), true);
            
            xhr.onreadystatechange = function() {
                if (xhr.readyState === 4) {
                    completedRequests++;
                    
                    if (xhr.status === 200) {
                        try {
                            const data = JSON.parse(xhr.responseText);
                            
                            if (data.success) {
                                const orderCard = document.querySelector(`.order-card[data-order-id="${orderId}"]`);
                                if (orderCard) {
                                    const currentStatus = orderCard.getAttribute('data-status');
                                    const statusElement = document.getElementById(`status-${orderId}`);
                                    
                                    if (statusElement && currentStatus !== data.status) {
                                        console.log(`تحديث الطلب #${orderId}: ${currentStatus} -> ${data.status}`);
                                        
                                        // تحديث الحالة
                                        orderCard.setAttribute('data-status', data.status);
                                        statusElement.textContent = data.status_text;
                                        statusElement.className = `order-status ${data.status_class}`;
                                        
                                        updatedCount++;
                                    }
                                }
                            }
                        } catch (e) {
                            console.log('خطأ في تحليل JSON للطلب #' + orderId);
                        }
                    }
                    
                    // بعد اكتمال جميع الطلبات
                    if (completedRequests === activeOrders.length) {
                        if (updatedCount > 0) {
                            console.log(`تم تحديث ${updatedCount} طلب/طلبات`);
                            updateStats();
                        }
                        isUpdating = false;
                        showUpdateIndicator(false);
                    }
                }
            };
            
            xhr.send();
        });
    }

    function updateStats() {
        // إعادة حساب الإحصائيات
        let pending = 0;
        let completed = 0;
        let total = 0;
        
        document.querySelectorAll('.order-card').forEach(card => {
            const status = card.getAttribute('data-status');
            total++;
            if (status === 'pending') pending++;
            if (status === 'delivered') completed++;
        });
        
        // تحديث الأرقام في الواجهة
        document.getElementById('pending-count').textContent = pending;
        document.getElementById('total-count').textContent = total;
        document.getElementById('completed-count').textContent = completed;
    }

    function refreshOrderDetails(orderId) {
        const modal = document.getElementById('orderModal');
        if (modal.classList.contains('active')) {
            const modalOrderIdElement = document.getElementById('modalOrderId');
            if (modalOrderIdElement && modalOrderIdElement.textContent.includes(orderId.toString())) {
                const modalBody = document.getElementById('modalBody');
                
                const xhr = new XMLHttpRequest();
                xhr.open('GET', 'get_order_details.php?id=' + orderId + '&t=' + Date.now(), true);
                xhr.onreadystatechange = function() {
                    if (xhr.readyState === 4 && xhr.status === 200) {
                        modalBody.innerHTML = xhr.responseText;
                    }
                };
                xhr.send();
            }
        }
    }

    // ===== إغلاق المودال =====
    document.getElementById('orderModal').addEventListener('click', (e) => {
        if (e.target === document.getElementById('orderModal')) {
            closeOrderModal();
        }
    });

    document.addEventListener('keydown', (e) => {
        if (e.key === 'Escape') {
            closeSidebar();
            closeOrderModal();
        }
    });

    document.querySelectorAll('.menu-item').forEach(item => {
        item.addEventListener('click', closeSidebar);
    });

    // ===== بدء التحديث التلقائي عند تحميل الصفحة =====
    document.addEventListener('DOMContentLoaded', () => {
        console.log('الصفحة جاهزة، بدء التحديث التلقائي AJAX...');
        startAutoUpdate();
        
        // إخفاء رسائل التوست بعد 3 ثواني
        setTimeout(() => {
            const toast = document.querySelector('.toast');
            if (toast) toast.remove();
        }, 3000);
    });

    // ===== إيقاف التحديث عند مغادرة الصفحة =====
    window.addEventListener('beforeunload', () => {
        stopAutoUpdate();
    });

    // ===== إعادة تشغيل التحديث عند العودة للصفحة =====
    document.addEventListener('visibilitychange', () => {
        if (document.visibilityState === 'visible') {
            console.log('العودة للصفحة، إعادة تشغيل التحديث...');
            collectActiveOrders();
            startAutoUpdate();
        } else {
            stopAutoUpdate();
        }
    });

    // ===== تحديث يدوي عند الحاجة =====
    window.forceUpdate = function() {
        console.log('تحديث يدوي...');
        checkOrderUpdates();
    };
    </script>
</body>
</html>