import os from ..game_dir import game_dir def move_game(old_slug, new_slug): """Renomme le dossier d'un jeu vers un nouveau slug — utilisé quand un utilisateur change son adresse email (voir routes/auth/profile.py, project_slug = slugify(email) pour un compte "user") : le dossier physique du jeu doit suivre. Rend le nouveau slug unique de la même façon que create_game() si, par un hasard extrême, il correspond déjà à un dossier existant. Renvoie le slug FINAL (potentiellement suffixé), à enregistrer comme nouveau project_slug.""" if old_slug == new_slug: return old_slug base = new_slug n = 2 while os.path.isdir(game_dir(base)): base = f"{new_slug}-{n}" n += 1 new_slug = base os.rename(game_dir(old_slug), game_dir(new_slug)) return new_slug