<?php
require_once 'config.php';

// Access Control
if (!isAdmin()) {
    header('Location: login.php');
    exit;
}

// 1. Calculate Stats
// Total Sales
$stmt_sales = $pdo->query("SELECT SUM(net_amount) as total_sales FROM orders");
$total_sales = $stmt_sales->fetch()['total_sales'] ?? 0;

// Total Orders
$stmt_orders = $pdo->query("SELECT COUNT(*) as total_orders FROM orders");
$total_orders = $stmt_orders->fetch()['total_orders'] ?? 0;

// Total Customers
$stmt_users = $pdo->query("SELECT COUNT(*) as total_customers FROM users WHERE role = 'customer'");
$total_customers = $stmt_users->fetch()['total_customers'] ?? 0;

// Low Stock Alert (quantity < 5)
$stmt_stock = $pdo->query("SELECT COUNT(*) as low_stock FROM products WHERE stock < 5");
$low_stock = $stmt_stock->fetch()['low_stock'] ?? 0;

// 2. Fetch Low Stock Items
$low_stock_items = $pdo->query("SELECT p.*, c.name as category_name FROM products p LEFT JOIN categories c ON p.category_id = c.id WHERE p.stock < 5 ORDER BY p.stock ASC LIMIT 5")->fetchAll();

// 3. Fetch Recent Orders
$recent_orders = $pdo->query("SELECT o.*, u.full_name FROM orders o JOIN users u ON o.user_id = u.id ORDER BY o.id DESC LIMIT 5")->fetchAll();
?>
<?php include 'header.php'; ?>

<div class="admin-container">
    <!-- Admin Sidebar -->
    <aside class="sidebar">
        <ul class="sidebar-menu">
            <li>
                <a href="admin_dashboard.php" class="sidebar-link active">📊 Dashboard Overview</a>
            </li>
            <li>
                <a href="admin_products.php" class="sidebar-link">👗 Manage Clothes</a>
            </li>
            <li>
                <a href="admin_orders.php" class="sidebar-link">📦 Manage Orders</a>
            </li>
            <li>
                <a href="index.php" class="sidebar-link" style="margin-top: 30px; border-top: 1px solid var(--gray-border); padding-top: 20px;">🌐 Go to Shop</a>
            </li>
        </ul>
    </aside>

    <!-- Admin Content Area -->
    <main class="admin-main">
        <div class="section-title">
            <span>Admin Control Panel Overview</span>
        </div>

        <!-- Stats Grid -->
        <div class="stats-grid">
            <div class="stat-card">
                <h4>Total Revenue</h4>
                <div class="value" style="color: var(--success);">฿<?php echo number_format($total_sales, 2); ?></div>
            </div>
            <div class="stat-card">
                <h4>Total Orders</h4>
                <div class="value"><?php echo $total_orders; ?></div>
            </div>
            <div class="stat-card">
                <h4>Customers</h4>
                <div class="value"><?php echo $total_customers; ?></div>
            </div>
            <div class="stat-card" style="<?php echo $low_stock > 0 ? 'border-color: var(--danger); background: #fff0f0;' : ''; ?>">
                <h4>Low Stock Items</h4>
                <div class="value" style="<?php echo $low_stock > 0 ? 'color: var(--danger);' : ''; ?>"><?php echo $low_stock; ?></div>
            </div>
        </div>

        <!-- Alerts -->
        <?php if ($low_stock > 0): ?>
            <div class="alert alert-danger" style="display: flex; justify-content: space-between; align-items: center;">
                <span>⚠️ Attention: You have <strong><?php echo $low_stock; ?> items</strong> running low on stock!</span>
                <a href="admin_products.php" style="text-decoration: underline; font-weight: bold;">Restock Now</a>
            </div>
        <?php endif; ?>

        <!-- Low Stock Items Details -->
        <?php if (!empty($low_stock_items)): ?>
            <div class="table-container" style="margin-bottom: 40px;">
                <h3 style="font-weight: 700; margin-bottom: 15px;">Low Stock Outfits Alert</h3>
                <table>
                    <thead>
                        <tr>
                            <th>Image</th>
                            <th>Outfit Name</th>
                            <th>Category</th>
                            <th>Price</th>
                            <th>Stock Left</th>
                            <th>Action</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php foreach ($low_stock_items as $item): ?>
                            <tr>
                                <td>
                                    <img src="<?php echo htmlspecialchars($item['image_url']); ?>" alt="" style="width: 40px; height: 50px; object-fit: cover; border-radius: var(--radius-sm);">
                                </td>
                                <td><strong><?php echo htmlspecialchars($item['name']); ?></strong></td>
                                <td><?php echo htmlspecialchars($item['category_name'] ?? 'General'); ?></td>
                                <td>฿<?php echo number_format($item['price'], 2); ?></td>
                                <td style="color: var(--danger); font-weight: bold;"><?php echo $item['stock']; ?></td>
                                <td>
                                    <a href="admin_products.php?edit=<?php echo $item['id']; ?>" class="btn btn-outline" style="padding: 5px 12px; font-size: 12px;">Edit Stock</a>
                                </td>
                            </tr>
                        <?php endforeach; ?>
                    </tbody>
                </table>
            </div>
        <?php endif; ?>

        <!-- Recent Orders Details -->
        <div class="table-container">
            <h3 style="font-weight: 700; margin-bottom: 15px;">Recent Orders</h3>
            <?php if (empty($recent_orders)): ?>
                <p style="color: var(--text-muted); text-align: center; padding: 20px;">No orders recorded yet.</p>
            <?php else: ?>
                <table>
                    <thead>
                        <tr>
                            <th>Order ID</th>
                            <th>Customer</th>
                            <th>Net Total</th>
                            <th>Status</th>
                            <th>Order Date</th>
                            <th>Action</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php foreach ($recent_orders as $order): ?>
                            <tr>
                                <td><strong>#ORD-<?php echo str_pad($order['id'], 6, '0', STR_PAD_LEFT); ?></strong></td>
                                <td><?php echo htmlspecialchars($order['full_name']); ?></td>
                                <td>฿<?php echo number_format($order['net_amount'], 2); ?></td>
                                <td>
                                    <span class="badge badge-<?php echo $order['status']; ?>">
                                        <?php echo ucfirst($order['status']); ?>
                                    </span>
                                </td>
                                <td><?php echo date('d M Y H:i', strtotime($order['created_at'])); ?></td>
                                <td>
                                    <a href="admin_orders.php" class="btn btn-primary" style="padding: 5px 12px; font-size: 12px;">Manage</a>
                                </td>
                            </tr>
                        <?php endforeach; ?>
                    </tbody>
                </table>
            <?php endif; ?>
        </div>
    </main>
</div>

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