mirror of
https://github.com/myronblair/tomtomgames
synced 2026-07-27 17:02:27 -05:00
Fix stored XSS in admin gamer overview (unescaped username/alias/email) and undefined-variable logging bug in purchase.php
This commit is contained in:
+3
-3
@@ -1636,9 +1636,9 @@ function renderGamerOverview(u, stats) {
|
||||
const verified = parseInt(u.email_verified);
|
||||
document.getElementById('gm-info-grid').innerHTML = [
|
||||
{ label: 'User ID', val: '#' + u.id },
|
||||
{ label: 'Username', val: u.username },
|
||||
{ label: 'Alias', val: u.alias },
|
||||
{ label: 'Email', val: u.email || '—' },
|
||||
{ label: 'Username', val: escHtmlA(u.username) },
|
||||
{ label: 'Alias', val: escHtmlA(u.alias) },
|
||||
{ label: 'Email', val: u.email ? escHtmlA(u.email) : '—' },
|
||||
{ label: 'Status', val: `<span class="badge b-${u.status}">${u.status}</span>` },
|
||||
{ label: 'Email Verified',val: verified ? '<span style="color:var(--green)">✓ Yes</span>' : '<span style="color:var(--yellow)">⚠ No</span>' },
|
||||
{ label: 'Token Balance', val: `<span style="color:var(--gold);font-family:\'Exo 2\',sans-serif;font-weight:700">${parseFloat(u.tokens||0)} 🪙</span>` },
|
||||
|
||||
+2
-2
@@ -66,7 +66,7 @@ if ($isManual) {
|
||||
$playerName, $cardholderName, $billingEmail, $isCustom ? 1 : 0
|
||||
]);
|
||||
$pid = db()->lastInsertId();
|
||||
logActivity('manual_payment_pending', $userId, null, 'purchase', 0, "Manual payment pending: {$paymentMethod} \${$amountDollars}");
|
||||
logActivity('manual_payment_pending', $userId, null, 'purchase', 0, "Manual payment pending: {$method} \$" . number_format($priceCents / 100, 2));
|
||||
echo json_encode(['success'=>true,'manual'=>true,'purchase_id'=>$pid,
|
||||
'message'=>"Request #{$pid} submitted! Tokens credited after payment verification."]);
|
||||
exit;
|
||||
@@ -150,7 +150,7 @@ $bal = db()->prepare("SELECT tokens FROM users WHERE id=?");
|
||||
$bal->execute([$userId]);
|
||||
$newBal = (float)$bal->fetchColumn();
|
||||
logActivity('token_purchase', $userId, null, 'purchase', (int)db()->lastInsertId(),
|
||||
"Bought {$tokens} tokens via {$paymentMethod} for \${$amountDollars}");
|
||||
"Bought {$tokens} tokens via {$method} for \$" . number_format($priceCents / 100, 2));
|
||||
echo json_encode([
|
||||
'success' => true,
|
||||
'manual' => false,
|
||||
|
||||
Reference in New Issue
Block a user