Add winner display name support in game metadata

Updated backend to include winner's display name in the game metadata API and frontend to display it alongside the email. This enhances clarity by showing a more user-friendly identifier.
This commit is contained in:
nessi committed 2026-02-06 13:52:19 +01:00
1 parent b4b5c7903a
commit 0c983f7e44
2 files changed
+13 -3

No files matched your search

+7 -2
View File
@@ -123,9 +123,13 @@ def get_game_meta(req: Request, game_id: str, db: Session = Depends(get_db)):
g = require_game_member(db, game_id, uid)
winner_email = None
winner_display_name = None
if g.winner_user_id:
wu = db.query(User).filter(User.id == g.winner_user_id).first()
winner_email = wu.email if wu else None
if wu:
winner_email = wu.email
winner_display_name = wu.display_name
return {
"id": g.id,
@@ -134,6 +138,7 @@ def get_game_meta(req: Request, game_id: str, db: Session = Depends(get_db)):
"host_user_id": g.host_user_id,
"winner_user_id": g.winner_user_id,
"winner_email": winner_email,
"winner_display_name": winner_display_name,
}
@@ -150,7 +155,7 @@ def list_members(req: Request, game_id: str, db: Session = Depends(get_db)):
.order_by(User.email.asc())
.all()
)
return [{"id": u.id, "email": u.email} for u in members]
return [{"id": u.id, "email": u.email, "display_name": u.display_name} for u in members]
@router.patch("/{game_id}/winner")
+6 -1
View File
@@ -411,7 +411,12 @@ export default function App() {
/>
{/* Sieger Badge: zwischen Spiel und Verdächtigte Person */}
<WinnerBadge winnerEmail={gameMeta?.winner_email || ""} />
<WinnerBadge
winner={{
display_name: gameMeta?.winner_display_name || "",
email: gameMeta?.winner_email || "",
}}
/>
<HelpModal open={helpOpen} onClose={() => setHelpOpen(false)} />