world-game/site/templates/jouer.json.php
isUnknown cbe89acb21 Migration vers architecture Svelte + Kirby inspirée de design-to-pack
- Mise en place de Svelte 4 avec Vite pour le frontend (SPA)
- Simplification des templates PHP (header/footer minimalistes)
- Création de templates JSON pour API (home, about, expertise, portfolio, jouer, game, blog, article, project)
- Ajout d'un controller de site pour définir genericData globalement
- Structure des stores Svelte (page, navigation, locale, site)
- Router avec navaid pour navigation SPA et interception des liens
- Composants layout (Header, Footer, Cursor) et vues de base
- Build Vite vers assets/dist/ (index.js/css)
- Header PHP détecte assets/dist pour basculer dev/prod

Architecture fonctionnelle de base établie, à améliorer et compléter.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-06 16:30:15 +01:00

33 lines
904 B
PHP

<?php
$specificData = [
'intro' => [
'title' => $page->intro_title()->value(),
'text' => $page->intro_text()->value()
],
'games' => $page->children()->listed()->map(function($game) {
$badgeValue = $game->badge()->value();
$badgeLabel = 'none';
if ($badgeValue === 'new') {
$badgeLabel = 'NEW';
} elseif ($badgeValue === 'coming_soon') {
$badgeLabel = 'INCOMING';
}
return [
'title' => $game->title()->value(),
'slug' => $game->slug(),
'url' => $game->url(),
'description' => $game->description()->value(),
'cover' => $game->cover()->toFile()?->url(),
'badge' => $badgeValue,
'badge_label' => $badgeLabel,
'game_status' => $game->game_status()->value()
];
})->values()
];
$pageData = array_merge($genericData, $specificData);
header('Content-Type: application/json');
echo json_encode($pageData);