from ..connection import connect from .is_public_played import is_public_played from .game_type_catalog import get_onboarding_type def game_meta(slug): conn = connect(slug) row = conn.execute("SELECT value FROM _meta WHERE key = 'name'").fetchone() conn.close() return { "slug": slug, "name": row["value"] if row else slug, # État par joueur (Phase 1) : disponible partout où `game` est # dans le contexte du template (base.html, la bascule "Publier en # ligne" en a besoin pour afficher son état actuel), sans avoir à # appeler is_public_played(slug) séparément dans chaque route. "is_public_played": is_public_played(slug), # Onboarding guidé (voir game_type_catalog.py) : utilisé par # templates/base.html pour cacher le lien "Tableau de bord" à un # compte "restreint" (quiz/embranchement/rpg). "onboarding_type": get_onboarding_type(slug), # Pas de "game_type" ici : depuis la fusion des moteurs (voir # screens/screens_repo/ensure_schema.py), "document"/"jeu_2d" est # une propriété PAR ÉCRAN (screen["kind"]), plus du projet. }