mirror of
https://github.com/myronblair/tomtomgames
synced 2026-06-30 17:51:08 -05:00
Add platform credit overview to dashboard
New section below pending purchases/cashouts: one square card per active platform showing net credit balance, completed purchase count, and sent cashout count. Loads on page load alongside other dashboard data. Credits turn yellow below 100 and red at/below 0 with a warning. Clicking a card jumps to Game Management and opens that platform's credit modal. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -68,6 +68,23 @@ switch ($action) {
|
||||
}
|
||||
break;
|
||||
|
||||
// ─── PLATFORM STATS ──────────────────────────────────────
|
||||
case 'platform_stats':
|
||||
if (!$isAdmin) { echo json_encode(['success'=>false,'error'=>'Forbidden']); exit; }
|
||||
$rows = db()->query("
|
||||
SELECT p.id, p.name, p.slug, p.color,
|
||||
COALESCE(SUM(CASE WHEN pc.type='debit' THEN -pc.credits_purchased ELSE pc.credits_purchased END),0) AS credits_balance,
|
||||
(SELECT COUNT(*) FROM token_purchases tp WHERE tp.platform_id=p.slug AND tp.status='completed') AS purchases,
|
||||
(SELECT COUNT(*) FROM cashout_requests cr WHERE cr.platform_id=p.slug AND cr.status IN ('sent','approved')) AS cashouts
|
||||
FROM platforms p
|
||||
LEFT JOIN platform_credits pc ON pc.platform_id=p.id
|
||||
WHERE p.is_deleted=0 AND p.is_active=1
|
||||
GROUP BY p.id, p.name, p.slug, p.color
|
||||
ORDER BY p.sort_order, p.id
|
||||
")->fetchAll();
|
||||
echo json_encode(['success'=>true,'platforms'=>$rows]);
|
||||
break;
|
||||
|
||||
// ─── PURCHASES ────────────────────────────────────────────
|
||||
case 'purchases':
|
||||
$status = $_GET['status'] ?? 'pending';
|
||||
|
||||
Reference in New Issue
Block a user