From d88547e310516db5b32cf0ef3d262670f8af9a8f Mon Sep 17 00:00:00 2001 From: David Inostroza Date: Fri, 24 Apr 2026 18:51:38 -0400 Subject: [PATCH] =?UTF-8?q?reinicia=20votos=20al=20activar=20ventana=20de?= =?UTF-8?q?=20votaci=C3=B3n=20y=20al=20reproducir=20ganador?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- app/routers/admin.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/app/routers/admin.py b/app/routers/admin.py index 0190d0f..cbcac36 100644 --- a/app/routers/admin.py +++ b/app/routers/admin.py @@ -299,12 +299,24 @@ def update_voting_config( status_code=400, ) + was_active = config.is_active + new_active = is_active == "on" + config.start_time = start_time config.end_time = end_time - config.is_active = is_active == "on" + config.is_active = new_active db.commit() + votes_reset = False + if new_active and not was_active: + db.query(Vote).delete() + db.commit() + votes_reset = True + results = _vote_results(db) + success_msg = "Configuración guardada" + if votes_reset: + success_msg = "Configuración guardada · Votos reiniciados para la nueva ventana" return templates.TemplateResponse( "admin/voting.html", { @@ -314,7 +326,7 @@ def update_voting_config( "total_votes": sum(r["votes"] for r in results), "server_time": now_str, "error": None, - "success": "Configuración guardada", + "success": success_msg, }, ) @@ -341,6 +353,8 @@ def play_winner(request: Request, db: Session = Depends(get_db)): except Exception as e: raise HTTPException(status_code=500, detail=str(e)) + db.query(Vote).delete() + db.commit() return RedirectResponse(url="/admin/voting", status_code=303)