from ..connection import connect def set_xapi_settings(slug: str, endpoint: str, login: str, password: str | None = None) -> None: """Enregistre les réglages xAPI de CE jeu (voir get_xapi_settings.py). `password=None` (champ laissé vide côté formulaire, voir routes/game/publish/xapi_settings.py) laisse le mot de passe déjà enregistré INCHANGÉ — jamais écrasé par une chaîne vide, pour ne pas obliger à le retaper à chaque modification de l'URL/du login, et pour que la route GET puisse ne jamais renvoyer sa valeur au navigateur (juste un booléen "déjà configuré").""" conn = connect(slug) conn.execute("INSERT OR REPLACE INTO _meta (key, value) VALUES ('xapi_lrs_endpoint', ?)", (endpoint or "",)) conn.execute("INSERT OR REPLACE INTO _meta (key, value) VALUES ('xapi_lrs_login', ?)", (login or "",)) if password is not None: conn.execute("INSERT OR REPLACE INTO _meta (key, value) VALUES ('xapi_lrs_password', ?)", (password,)) conn.commit() conn.close()