Files
football-next/app/api/players/[id]/route.ts
2026-05-13 15:46:27 +03:30

33 lines
1.1 KiB
TypeScript

import { NextRequest, NextResponse } from "next/server";
import { db } from "@/lib/db";
import { getApiUser } from "@/lib/apiAuth";
export async function PUT(req: NextRequest, { params }: { params: Promise<{ id: string }> }) {
const { id } = await params;
const apiUser = await getApiUser(req);
if (!apiUser || apiUser.role !== "ADMIN") {
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
}
const body = await req.json();
const player = await db.player.update({
where: { id },
data: {
...body,
cardTier: body.cardTier ?? undefined,
isGoldenCardEligible: body.cardTier ? body.cardTier === "GOLD" : undefined,
},
});
return NextResponse.json(player);
}
export async function DELETE(req: NextRequest, { params }: { params: Promise<{ id: string }> }) {
const { id } = await params;
const apiUser = await getApiUser(req);
if (!apiUser || apiUser.role !== "ADMIN") {
return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
}
await db.player.delete({ where: { id } });
return NextResponse.json({ success: true });
}