<?php
if (session_status() === PHP_SESSION_NONE) session_start();
require_once dirname(__DIR__) . '/config.php';

// Error handling
set_exception_handler(function (Throwable $e) {
    error_log("Admin dashboard exception: " . $e->getMessage() . " in " . $e->getFile() . ":" . $e->getLine());
    if (!headers_sent()) header('Content-Type: text/html; charset=utf-8');
    $detail = (defined('DEBUG') && DEBUG)
        ? '<br><small>' . htmlspecialchars($e->getMessage()) . '</small><br><small>' . htmlspecialchars($e->getFile() . ':' . $e->getLine()) . '</small>'
        : ' برای مشاهده جزئیات در config.php مقدار DEBUG را true قرار دهید.';
    echo '<!DOCTYPE html><html lang="fa" dir="rtl"><head><meta charset="UTF-8"><title>خطا</title><link rel="stylesheet" href="../assets/css/theme.css"></head><body class="p-5"><div class="alert alert-danger">خطا در بارگذاری داشبورد.' . $detail . '</div><p><a href="../login.php" class="btn btn-primary">بازگشت به ورود</a></p></body></html>';
    exit;
});

if (!isLoggedIn()) redirect('../login.php');
if (!isAdmin()) {
    setMessage('دسترسی غیرمجاز', 'error');
    redirect('../login.php');
}

$page_title = 'داشبورد مدیر';

// Fetch stats safely
$stats = ['panels' => 0, 'representatives' => 0, 'users' => 0, 'total_traffic' => 0];
try {
    $stats['panels'] = (int)($pdo->query("SELECT COUNT(*) FROM panels WHERE status = \'active\'")->fetchColumn());
    $stats['representatives'] = (int)($pdo->query("SELECT COUNT(*) FROM representatives WHERE status = \'active\'")->fetchColumn());
    $stats['users'] = (int)($pdo->query("SELECT COUNT(*) FROM reseller_users WHERE status = \'active\'")->fetchColumn());
    $stats['total_traffic'] = (float)($pdo->query("SELECT COALESCE(SUM(total_traffic),0) FROM reseller_users")->fetchColumn() ?: 0);
} catch (Exception $e) {
    // Log error if needed, stats will remain 0
    error_log("Dashboard stats query failed: " . $e->getMessage());
}

require_once ROOT_PATH . '/includes/header.php';
?>

<div class="card admin-main-card">
    <div class="card-header">
        <h3 class="card-title"><?= htmlspecialchars($page_title) ?></h3>
    </div>
    <div class="card-body">
    <div class="row g-4 mb-4">
        <div class="col-md-6 col-xl-3">
            <div class="card stat-card-pro h-100">
                <div class="card-body d-flex align-items-center">
                    <div class="stat-icon bg-soft-primary text-primary me-3"><i class="bi bi-server"></i></div>
                    <div>
                        <h6 class="text-muted fw-normal mt-0" title="تعداد پنل‌های فعال">پنل‌های فعال</h6>
                        <h3 class="mt-1 mb-0"><?= $stats['panels'] ?></h3>
                    </div>
                </div>
            </div>
        </div>
        <div class="col-md-6 col-xl-3">
            <div class="card stat-card-pro h-100">
                <div class="card-body d-flex align-items-center">
                    <div class="stat-icon bg-soft-success text-success me-3"><i class="bi bi-people"></i></div>
                    <div>
                        <h6 class="text-muted fw-normal mt-0" title="تعداد نمایندگان فعال">نمایندگان فعال</h6>
                        <h3 class="mt-1 mb-0"><?= $stats['representatives'] ?></h3>
                    </div>
                </div>
            </div>
        </div>
        <div class="col-md-6 col-xl-3">
            <div class="card stat-card-pro h-100">
                <div class="card-body d-flex align-items-center">
                    <div class="stat-icon bg-soft-info text-info me-3"><i class="bi bi-person-check"></i></div>
                    <div>
                        <h6 class="text-muted fw-normal mt-0" title="تعداد کاربران فعال">کاربران فعال</h6>
                        <h3 class="mt-1 mb-0"><?= $stats['users'] ?></h3>
                    </div>
                </div>
            </div>
        </div>
        <div class="col-md-6 col-xl-3">
            <div class="card stat-card-pro h-100">
                <div class="card-body d-flex align-items-center">
                    <div class="stat-icon bg-soft-warning text-warning me-3"><i class="bi bi-bar-chart-line"></i></div>
                    <div>
                        <h6 class="text-muted fw-normal mt-0" title="مجموع ترافیک مصرفی">ترافیک کل</h6>
                        <h3 class="mt-1 mb-0"><?= number_format($stats['total_traffic'] / (1024 * 1024 * 1024), 2) ?> <small>GB</small></h3>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <h5 class="mb-3 text-muted">دسترسی سریع</h5>
    <div class="row g-3">
    <div class="col-md-6 col-lg-4">
        <a href="xui_management.php" class="card-link">
            <div class="card h-100 text-center quick-access-card">
                <div class="card-body d-flex flex-column justify-content-center">
                    <i class="bi bi-hdd-stack fs-1 text-primary"></i>
                    <h5 class="card-title mt-3">مدیریت X-UI</h5>
                    <p class="card-text text-muted">مدیریت پنل‌ها، اینباندها و تنظیمات مرتبط با X-UI</p>
                </div>
            </div>
        </a>
    </div>
    <div class="col-md-6 col-lg-4">
        <a href="representatives.php" class="card-link">
            <div class="card h-100 text-center quick-access-card">
                <div class="card-body d-flex flex-column justify-content-center">
                    <i class="bi bi-people-fill fs-1 text-success"></i>
                    <h5 class="card-title mt-3">مدیریت نمایندگان</h5>
                    <p class="card-text text-muted">افزودن، ویرایش و مدیریت نمایندگان فروش</p>
                </div>
            </div>
        </a>
    </div>
    <div class="col-md-6 col-lg-4">
        <a href="financial.php" class="card-link">
            <div class="card h-100 text-center quick-access-card">
                <div class="card-body d-flex flex-column justify-content-center">
                    <i class="bi bi-wallet2 fs-1 text-warning"></i>
                    <h5 class="card-title mt-3">امور مالی</h5>
                    <p class="card-text text-muted">مشاهده تراکنش‌ها، گزارشات و مدیریت کیف پول</p>
                </div>
            </div>
        </a>
    </div>
    <div class="col-md-6 col-lg-4">
        <a href="monitoring.php" class="card-link">
            <div class="card h-100 text-center quick-access-card">
                <div class="card-body d-flex flex-column justify-content-center">
                    <i class="bi bi-display fs-1 text-danger"></i>
                    <h5 class="card-title mt-3">مانیتورینگ</h5>
                    <p class="card-text text-muted">بررسی وضعیت سرورها و مصرف منابع</p>
                </div>
            </div>
        </a>
    </div>
    <div class="col-md-6 col-lg-4">
        <a href="online_users.php" class="card-link">
            <div class="card h-100 text-center quick-access-card">
                <div class="card-body d-flex flex-column justify-content-center">
                    <i class="bi bi-wifi fs-1 text-info"></i>
                    <h5 class="card-title mt-3">کاربران آنلاین</h5>
                    <p class="card-text text-muted">مشاهده لیست کاربران متصل به پنل‌ها</p>
                </div>
            </div>
        </a>
    </div>
    <div class="col-md-6 col-lg-4">
        <a href="settings.php" class="card-link">
            <div class="card h-100 text-center quick-access-card">
                <div class="card-body d-flex flex-column justify-content-center">
                    <i class="bi bi-gear fs-1 text-secondary"></i>
                    <h5 class="card-title mt-3">تنظیمات کلی</h5>
                    <p class="card-text text-muted">تنظیمات عمومی سیستم و پروفایل مدیر</p>
                </div>
            </div>
        </a>
    </div>
    </div>
</div>

<?php require_once ROOT_PATH . '/includes/footer.php'; ?>

