21 lines
751 B
TypeScript
21 lines
751 B
TypeScript
import { NextRequest, NextResponse } from 'next/server'
|
|
import { requireAdmin } from '@/lib/admin-auth'
|
|
import { createServiceClient } from '@/lib/supabase'
|
|
|
|
export async function POST(req: NextRequest) {
|
|
const check = await requireAdmin()
|
|
if (check instanceof NextResponse) return check
|
|
|
|
const { text, reihenfolge } = await req.json()
|
|
if (!text) return NextResponse.json({ error: 'Text erforderlich' }, { status: 400 })
|
|
|
|
const db = createServiceClient()
|
|
const { data, error } = await db
|
|
.from('hero_badges')
|
|
.insert({ text, reihenfolge: reihenfolge ?? 99 })
|
|
.select()
|
|
.single()
|
|
if (error) return NextResponse.json({ error: error.message }, { status: 500 })
|
|
return NextResponse.json({ badge: data }, { status: 201 })
|
|
}
|