• Mahmoud Aglan's avatar
    feat(branding): edit the colours the game reads; say which images it uses · 9b743e4f
    Mahmoud Aglan authored
    Both apps keep their theme in platform_theme, but the game only applies the
    keys in its theme.js COLOR_KEYS (back_*, card, ink, gold, board_*, ludo_*,
    bg_* ...). The palette this page edited (color_primary, surface_* ...) is
    the manager's own theme, so no change here ever reached a player. A new
    "app colours" tab edits exactly the game's keys, in groups with Arabic
    names, showing each one's default read from the game's tokens.css; reset
    removes the override so the app falls back to its design. The manager
    palette stays, labelled as the manager's.
    
    Every asset slot is marked as read by the game, read only for uploads made
    after 2026-10-19 (logo, tab icons), or ignored (the old emoji slots and
    the game-icon slots the app now draws itself), and new uploads may create
    any slot the game reads (icon_*, chess_piece_*, chess_bot_*,
    emoji_dice_1..6). Uploads go through SupabaseStorage: the hand-written
    request lacked the apikey header and Kong refused every upload.
    
    Flash messages are JSON-encoded into the toast script; a multi-line
    message (such as a storage error) used to break the script.
    Co-Authored-By: 's avatarClaude Opus 5.5 <noreply@anthropic.com>
    9b743e4f
routes.php 31.7 KB