import { NextRequest, NextResponse } from "next/server"; import prisma from "@/lib/prisma"; export async function POST( request: NextRequest, context: { params: { inviteCode: string } } ) { try { const { inviteCode } = await context.params; const { userId, isReady } = await request.json(); // Récupérer le groupe const group = await prisma.group.findUnique({ where: { inviteCode }, select: { id: true }, }); if (!group) { return NextResponse.json({ error: "Groupe non trouvé" }, { status: 404 }); } // Mettre à jour le statut ready du joueur const player = await prisma.player.updateMany({ where: { groupId: group.id, userId: parseInt(userId), }, data: { isReady, }, }); // Récupérer le joueur mis à jour const updatedPlayer = await prisma.player.findFirst({ where: { groupId: group.id, userId: parseInt(userId), }, include: { user: true, }, }); if (!updatedPlayer) { return NextResponse.json({ error: "Joueur non trouvé" }, { status: 404 }); } return NextResponse.json({ success: true, player: { id: updatedPlayer.userId, name: updatedPlayer.user.name, isReady: updatedPlayer.isReady, }, }); } catch (error: any) { const errorMessage = error?.message || "Erreur inconnue"; console.error("Erreur lors de la mise à jour du statut:", errorMessage); return NextResponse.json( { error: "Erreur serveur", details: errorMessage }, { status: 500 } ); } }