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:
1 parent
b4b5c7903a
commit
0c983f7e44
2 files changed
+13
-3
No files matched your search
@@ -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)
|
g = require_game_member(db, game_id, uid)
|
||||||
|
|
||||||
winner_email = None
|
winner_email = None
|
||||||
|
winner_display_name = None
|
||||||
|
|
||||||
if g.winner_user_id:
|
if g.winner_user_id:
|
||||||
wu = db.query(User).filter(User.id == g.winner_user_id).first()
|
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 {
|
return {
|
||||||
"id": g.id,
|
"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,
|
"host_user_id": g.host_user_id,
|
||||||
"winner_user_id": g.winner_user_id,
|
"winner_user_id": g.winner_user_id,
|
||||||
"winner_email": winner_email,
|
"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())
|
.order_by(User.email.asc())
|
||||||
.all()
|
.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")
|
@router.patch("/{game_id}/winner")
|
||||||
|
|||||||
@@ -411,7 +411,12 @@ export default function App() {
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
{/* Sieger Badge: zwischen Spiel und Verdächtigte Person */}
|
{/* 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)} />
|
<HelpModal open={helpOpen} onClose={() => setHelpOpen(false)} />
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user