import { NextRequest, NextResponse } from 'next/server' import { requireAdmin } from '@/lib/auth' import { getAiConfig, updateAiConfig, getPreferredLanguage, setPreferredLanguage } from '@/lib/app-settings' export async function GET(request: NextRequest) { const auth = await requireAdmin(request) if (auth instanceof NextResponse) return auth const { endpoint, model, enabled } = getAiConfig() const preferredLanguage = getPreferredLanguage() return NextResponse.json({ endpoint, model, enabled, preferredLanguage }) } export async function PUT(request: NextRequest) { const auth = await requireAdmin(request) if (auth instanceof NextResponse) return auth let body: { endpoint?: string; model?: string; enabled?: boolean; preferredLanguage?: string } try { body = await request.json() } catch { return NextResponse.json({ error: 'Invalid JSON body' }, { status: 400 }) } const { endpoint, model, enabled, preferredLanguage } = body if (typeof endpoint !== 'string') { return NextResponse.json({ error: 'endpoint is required' }, { status: 400 }) } if (typeof model !== 'string') { return NextResponse.json({ error: 'model is required' }, { status: 400 }) } if (typeof enabled !== 'boolean') { return NextResponse.json({ error: 'enabled must be a boolean' }, { status: 400 }) } updateAiConfig(endpoint, model, enabled) if (typeof preferredLanguage === 'string' && preferredLanguage.trim()) { setPreferredLanguage(preferredLanguage.trim()) } return NextResponse.json({ endpoint, model, enabled, preferredLanguage: getPreferredLanguage() }) }