Inclut document_theme_apply.py oublié du commit précédent
Build and deploy / test-python (push) Successful in 11m34s
Build and deploy / test-js (push) Successful in 1m13s
Build and deploy / lint-python (push) Successful in 5m54s
Build and deploy / lint-js (push) Failing after 1m41s
Build and deploy / build-and-push (push) Skipped
Build and deploy / deploy (push) Skipped
Build and deploy / sonarqube (push) Failing after 4m49s
Build and deploy / test-python (push) Successful in 11m34s
Build and deploy / test-js (push) Successful in 1m13s
Build and deploy / lint-python (push) Successful in 5m54s
Build and deploy / lint-js (push) Failing after 1m41s
Build and deploy / build-and-push (push) Skipped
Build and deploy / deploy (push) Skipped
Build and deploy / sonarqube (push) Failing after 4m49s
La route de retrait de thème (theme_id vide) fait partie intégrante de la fonctionnalité "Aucun modèle" du commit précédent — fichier omis par erreur du git add initial. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
4db1269348
commit
e9d7f560e3
@@ -8,8 +8,8 @@ from core.flask_app import app
|
||||
|
||||
@app.route("/document/<slug>/theme/apply", methods=["POST"])
|
||||
def document_theme_apply(slug: str) -> Response | tuple[Response, int]:
|
||||
"""Applique un thème visuel au support — voir document_engine/themes/.
|
||||
`mode` décide du sort du contenu ACTUEL :
|
||||
"""Applique un thème visuel au support, ou le RETIRE — voir
|
||||
document_engine/themes/. `mode` décide du sort du contenu ACTUEL :
|
||||
- "keep_content" (défaut) : seul le thème change, le contenu du
|
||||
support reste tel quel.
|
||||
- "template_content" : le contenu du support est intégralement
|
||||
@@ -17,9 +17,19 @@ def document_theme_apply(slug: str) -> Response | tuple[Response, int]:
|
||||
document_engine.replace_document_content) — action destructive,
|
||||
dont la confirmation est à la charge du client (voir
|
||||
static/document/js/document-editor.js, aucune confirmation ici
|
||||
côté serveur : ce n'est pas son rôle)."""
|
||||
côté serveur : ce n'est pas son rôle).
|
||||
|
||||
`theme_id` vide (retour utilisateur du 26/09/2026 : la modale
|
||||
propose une carte "Aucun modèle" pour "revenir à un document de
|
||||
base") retire le thème (`db.remove_document_theme`) et s'arrête là
|
||||
— jamais de contenu de démonstration à appliquer pour "aucun
|
||||
modèle", `mode` n'a alors aucun sens et est ignoré."""
|
||||
payload = request.get_json(force=True) or {}
|
||||
theme_id = str(payload.get("theme_id", ""))
|
||||
if not theme_id:
|
||||
db.remove_document_theme(slug)
|
||||
return jsonify({"ok": True, "theme_id": ""})
|
||||
|
||||
theme = document_engine.get_document_theme_entry(theme_id)
|
||||
if theme is None:
|
||||
return jsonify({"error": "thème introuvable"}), 404
|
||||
|
||||
Reference in New Issue
Block a user