Editing: /home/goacom/baji.princedev.shop/views/admin/dashboard.ejs
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Admin Dashboard | Velke 365</title> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css"> <link href="https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700&display=swap" rel="stylesheet"> <link rel="stylesheet" href="/css/style.css"> <style> .admin-nav { background-color: var(--bg-card); border-bottom: 1px solid var(--border-color); padding: 12px 20px; } .admin-nav-container { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 15px; } .admin-menu { display: flex; gap: 10px; flex-wrap: wrap; } .admin-menu a { color: var(--text-muted); text-decoration: none; padding: 8px 16px; border-radius: 8px; font-weight: 600; font-size: 0.9rem; transition: all 0.2s; } .admin-menu a:hover, .admin-menu a.active { background-color: var(--accent-gold); color: #000; } .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 15px; margin-bottom: 25px; } .stat-card { background-color: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 20px; display: flex; align-items: center; gap: 15px; } .stat-icon { font-size: 2.2rem; color: var(--accent-gold); background: rgba(255, 183, 3, 0.1); padding: 15px; border-radius: 12px; } .stat-info h4 { font-size: 0.85rem; color: var(--text-muted); text-transform: uppercase; } .stat-info .stat-number { font-size: 1.8rem; font-weight: 700; color: #fff; } .action-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; } .panel-card { background-color: var(--bg-card); border: 1px solid var(--border-color); border-radius: 12px; padding: 20px; } .panel-card h3 { color: var(--accent-gold); margin-bottom: 15px; font-size: 1.1rem; border-bottom: 1px solid var(--border-color); padding-bottom: 10px; } </style> </head> <body> <!-- Admin Header --> <header class="site-header"> <div class="header-container"> <a href="/admin/dashboard" class="logo-area"> <div class="logo-icon">ADMIN</div> <div class="logo-text"> <h1><%= settings.siteTitle %></h1> <span>ADMINISTRATION PANEL</span> </div> </a> <div> <a href="/" target="_blank" class="btn-admin" style="margin-right: 10px;"><i class="fas fa-external-link-alt"></i> View Site</a> <a href="/admin/logout" class="btn-admin" style="border-color: var(--accent-red); color: var(--accent-red);"><i class="fas fa-sign-out-alt"></i> Logout</a> </div> </div> </header> <!-- Admin Sub Navigation --> <nav class="admin-nav"> <div class="admin-nav-container"> <div class="admin-menu"> <a href="/admin/dashboard" class="active"><i class="fas fa-tachometer-alt"></i> Dashboard</a> <a href="/admin/api-settings"><i class="fas fa-plug"></i> API Providers</a> <a href="/admin/banners"><i class="fas fa-images"></i> Manage Banners</a> <a href="/admin/games"><i class="fas fa-gamepad"></i> Manage Game Images</a> <a href="/admin/users"><i class="fas fa-wallet"></i> Manage Balances</a> <a href="/admin/agents"><i class="fas fa-users-cog"></i> Manage Agents</a> <a href="/admin/inplay"><i class="fas fa-trophy"></i> Manage In-Play</a> <a href="/admin/settings"><i class="fas fa-sliders-h"></i> Site Settings</a> <a href="/admin/complaints"> <i class="fas fa-exclamation-circle"></i> Complaints <% if (stats.pendingComplaints > 0) { %> <span style="background: var(--accent-red); color: #fff; border-radius: 10px; padding: 2px 6px; font-size: 0.75rem;"><%= stats.pendingComplaints %></span> <% } %> </a> </div> </div> </nav> <main class="main-container"> <h2 style="margin-bottom: 20px; color: #fff;"><i class="fas fa-chart-line"></i> Dashboard Overview</h2> <!-- Stat Cards --> <div class="stats-grid"> <div class="stat-card"> <div class="stat-icon"><i class="fas fa-users"></i></div> <div class="stat-info"> <h4>Total Agents</h4> <div class="stat-number"><%= stats.totalAgents %></div> </div> </div> <div class="stat-card"> <div class="stat-icon"><i class="fas fa-crown"></i></div> <div class="stat-info"> <h4>Sub Admins</h4> <div class="stat-number"><%= stats.subAdminCount %></div> </div> </div> <div class="stat-card"> <div class="stat-icon"><i class="fas fa-star"></i></div> <div class="stat-info"> <h4>Super Agents</h4> <div class="stat-number"><%= stats.superAgentCount %></div> </div> </div> <div class="stat-card"> <div class="stat-icon"><i class="fas fa-user-check"></i></div> <div class="stat-info"> <h4>Master Agents</h4> <div class="stat-number"><%= stats.masterAgentCount %></div> </div> </div> <div class="stat-card"> <div class="stat-icon" style="color: var(--accent-red); background: rgba(230, 57, 70, 0.1);"><i class="fas fa-exclamation-triangle"></i></div> <div class="stat-info"> <h4>User Complaints</h4> <div class="stat-number"><%= stats.totalComplaints %></div> </div> </div> </div> <!-- Quick Actions Panel --> <div class="action-cards"> <div class="panel-card"> <h3><i class="fas fa-user-plus"></i> Quick Manage Agents</h3> <p style="color: var(--text-muted); font-size: 0.9rem; margin-bottom: 15px;">Add, edit or update WhatsApp numbers and verification status for agents.</p> <a href="/admin/agents" class="btn-submit" style="display: inline-block; text-align: center; text-decoration: none;"><i class="fas fa-arrow-right"></i> Open Agent Manager</a> </div> <div class="panel-card"> <h3><i class="fas fa-cog"></i> Website Settings & Notice</h3> <p style="color: var(--text-muted); font-size: 0.9rem; margin-bottom: 15px;">Update website announcement banner, title, helpline WhatsApp number and branding.</p> <a href="/admin/settings" class="btn-submit" style="display: inline-block; text-align: center; text-decoration: none;"><i class="fas fa-sliders-h"></i> Edit Site Settings</a> </div> </div> </main> </body> </html>
💾 Save