feat: gestion complète des actions (clone, delete, reorder, presets)
- actions_api.py: POST /create, POST /{idx}/clone, DELETE /{idx},
PUT /reorder, PUT /{idx} étendu (ui_trigger.*),
GET/POST/POST-restore/DELETE /presets
- admin_api.py: route /admin/actions simplifiée (plus de pré-chargement Jinja2)
- actions.html: page full JS dynamique
· Drag & drop pour réordonner (barre de sauvegarde explicite)
· Clone, suppression, création par bouton
· Edit form complet: général, cadre, fond, traitement, UI bouton
· Sélecteurs cadres/fonds avec dropdown + saisie libre
· Mapping bouton dynamique
· Presets: save/restore/delete avec nom + description
This commit is contained in:
@@ -96,17 +96,8 @@ async def admin_actions(request: Request):
|
||||
redirect = _require_auth(request)
|
||||
if redirect:
|
||||
return redirect
|
||||
|
||||
pb = request.app.state.photobooth_service
|
||||
cfg = request.app.state.config
|
||||
pb_config = await pb.read_pb_config()
|
||||
actions = pb_config.get("actions", {}).get("image", [])
|
||||
|
||||
return _templates.TemplateResponse(request, "admin/actions.html", {
|
||||
"config": cfg,
|
||||
"pb_actions": actions,
|
||||
"button_mapping": cfg.button_actions,
|
||||
})
|
||||
return _templates.TemplateResponse(request, "admin/actions.html", {"config": cfg})
|
||||
|
||||
|
||||
@router.get("/admin/settings", response_class=HTMLResponse)
|
||||
|
||||
Reference in New Issue
Block a user