import { NextRequest, NextResponse } from "next/server"; import { getServerSession } from "next-auth/next"; import { authOptions } from "@/app/api/auth/[...nextauth]/route"; import { prisma } from "@/lib/prisma"; export async function DELETE( req: NextRequest, { params }: { params: { id: string } } ) { const session = await getServerSession(authOptions); if (!session?.user?.username) { return NextResponse.json({ error: "Non authentifié" }, { status: 401 }); } try { // Verify event ownership through calendar const event = await prisma.event.findFirst({ where: { id: params.id, }, include: { calendar: true } }); if (!event || event.calendar.userId !== session.user.username) { return NextResponse.json( { error: "Événement non trouvé ou non autorisé" }, { status: 404 } ); } await prisma.event.delete({ where: { id: params.id, }, }); return NextResponse.json({ success: true }); } catch (error) { console.error("Erreur lors de la suppression de l'événement:", error); return NextResponse.json({ error: "Erreur serveur" }, { status: 500 }); } }