<?php
session_start();
// এডমিন লগইন ভ্যালিডেশন
if (!isset($_SESSION['admin_id'])) {
    header("Location: index.php");
    exit();
}

// এক ফোল্ডার পেছনে থাকা কনফিগ ফাইল যুক্ত করা হলো
require_once __DIR__ . '/../config.php';

// সংখ্যার মানকে বাংলায় রূপান্তর করার জন্য একটি সহজ হেল্পার ফাংশন
function convertToBengaliNumber($number) {
    $bengali_digits = array('০','১','২','৩','৪','৫','৬','৭','৮','৯');
    $english_digits = array('0','1','2','3','4','5','6','7','8','9');
    return str_replace($english_digits, $bengali_digits, $number);
}

try {
    // ১. মোট রেভিনিউ হিসাব করা (শুধুমাত্র Delivered অর্ডারগুলোর grand_total যোগ হবে)
    $revenue_stmt = $pdo->query("SELECT SUM(grand_total) AS total FROM orders WHERE order_status = 'Delivered'");
    $revenue_data = $revenue_stmt->fetch(PDO::FETCH_ASSOC);
    $raw_revenue = isset($revenue_data['total']) ? floatval($revenue_data['total']) : 0;
    // ১,২৫,০০০ এই ফরমেটে টাকা দেখানোর জন্য নাম্বার ফরমেট করা হলো
    $formatted_revenue = number_format($raw_revenue, 0, '.', ',');
    $total_revenue = "৳" . convertToBengaliNumber($formatted_revenue);

    // ২. পেন্ডিং অর্ডারের সংখ্যা বের করা
    $pending_stmt = $pdo->query("SELECT COUNT(id) AS total FROM orders WHERE order_status = 'Pending'");
    $pending_data = $pending_stmt->fetch(PDO::FETCH_ASSOC);
    $total_pending = isset($pending_data['total']) ? $pending_data['total'] : 0;
    $pending_orders = convertToBengaliNumber($total_pending);

    // ৩. ডেলিভারি সম্পন্ন অর্ডারের সংখ্যা বের করা
    $delivered_stmt = $pdo->query("SELECT COUNT(id) AS total FROM orders WHERE order_status = 'Delivered'");
    $delivered_data = $delivered_stmt->fetch(PDO::FETCH_ASSOC);
    $total_delivered = isset($delivered_data['total']) ? $delivered_data['total'] : 0;
    $delivered_orders = convertToBengaliNumber($total_delivered);

    // ৪. ইউনিক কাস্টমার সংখ্যা বের করা (অর্ডার টেবিলের ইউনিক কাস্টমার ফোন নাম্বার কাউন্ট করে)
    $customer_stmt = $pdo->query("SELECT COUNT(DISTINCT customer_phone) AS total FROM orders WHERE customer_phone IS NOT NULL AND customer_phone != ''");
    $customer_data = $customer_stmt->fetch(PDO::FETCH_ASSOC);
    $total_unique_customers = isset($customer_data['total']) ? $customer_data['total'] : 0;
    $total_customers = convertToBengaliNumber($total_unique_customers);

} catch (PDOException $e) {
    // ডাটাবেজে সমস্যা হলে এরর দেখাবে
    die("ডাটাবেজ থেকে তথ্য আনতে ত্রুটি হয়েছে: " . $e->getMessage());
}
?>
<!DOCTYPE html>
<html lang="bn">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Naithe Soft | Admin Dashboard</title>
    
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    
    <link rel="stylesheet" href="css/sidebar.css?v=2.1">
    <link rel="stylesheet" href="css/dashboard.css?v=2.1">
</head>
<body>

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

    <div class="main-content">
        
        <div class="top-bar">
            <h2 class="page-title">অর্ডার কন্ট্রোল সেন্টার</h2>
            <div class="admin-badge">
                <i class="fa-regular fa-user-circle"></i> এডমিন: <?php echo htmlspecialchars($_SESSION['username']); ?>
            </div>
        </div>

        <div class="hero-grid">
            <div class="hero-card revenue">
                <div class="card-info">
                    <span>Total Revenue</span>
                    <h3><?php echo $total_revenue; ?></h3>
                </div>
                <div class="card-icon"><i class="fa-solid fa-bangladeshi-taka-sign"></i></div>
            </div>

            <div class="hero-card pending">
                <div class="card-info">
                    <span>Panding Orders</span>
                    <h3><?php echo $pending_orders; ?></h3>
                </div>
                <div class="card-icon"><i class="fa-solid fa-spinner fa-spin"></i></div>
            </div>

            <div class="hero-card delivered">
                <div class="card-info">
                    <span>Delivery completed</span>
                    <h3><?php echo $delivered_orders; ?></h3>
                </div>
                <div class="card-icon"><i class="fa-solid fa-truck-fast"></i></div>
            </div>

            <div class="hero-card customers">
                <div class="card-info">
                    <span>Total customers</span>
                    <h3><?php echo $total_customers; ?></h3>
                </div>
                <div class="card-icon"><i class="fa-solid fa-users"></i></div>
            </div>
        </div>

        <div class="dynamic-container" id="orders-ajax-content">
            <div class="spinner">
                <i class="fa-solid fa-circle-notch fa-spin"></i> অর্ডার কন্টেন্ট লোড হচ্ছে...
            </div>
        </div>
        
    </div>

<script>
document.addEventListener("DOMContentLoaded", function() {
    // ড্যাশবোর্ড লোড হওয়ার সাথে সাথে ব্যাকএন্ড থেকে orders_manager.php পেজটি লোড হবে
    loadOrdersPage('orders_manager.php');
});

function loadOrdersPage(pageUrl) {
    const container = document.getElementById('orders-ajax-content');
    container.innerHTML = '<div class="spinner"><i class="fa-solid fa-circle-notch fa-spin"></i> অর্ডার ডেটা লোড হচ্ছে...</div>';
    
    // Fetch API দিয়ে রিয়েল-টাইম orders_manager.php ফাইল লোড করা
    fetch(pageUrl)
        .then(response => {
            if (!response.ok) throw new Error('Network error');
            return response.text();
        })
        .then(data => {
            container.innerHTML = data;
        })
        .catch(error => {
            container.innerHTML = `
                <div style="color:#e74c3c; text-align:center; padding:40px 20px;">
                    <i class="fa-solid fa-circle-exclamation fa-2x"></i>
                    <br><br>
                    <strong>অর্ডার পেজটি লোড করা সম্ভব হয়নি।</strong><br>
                    <span style="font-size: 0.85rem; color: #858796;">"${pageUrl}" ফাইলটি ডিরেক্টরিতে তৈরি করা আছে কিনা নিশ্চিত করুন।</span>
                </div>`;
        });
}
</script>

</body>
</html>