import { NextRequest, NextResponse } from 'next/server' const DEFAULT_SETTINGS = { defaultPhaseDurations: { einstieg: 8, erarbeitung: 20, sicherung: 10, transfer: 7, reflexion: 5, }, preferredLessonLength: 45, autoAdvancePhases: true, soundNotifications: true, showKeyboardShortcuts: true, highContrastMode: false, onboardingCompleted: false, } /** * GET /api/admin/companion/settings * Get teacher settings * Proxy to backend /api/teacher/settings */ export async function GET() { try { // TODO: Replace with actual backend call // const backendUrl = process.env.BACKEND_URL || 'http://localhost:8000' // const response = await fetch(`${backendUrl}/api/teacher/settings`, { // method: 'GET', // headers: { // 'Content-Type': 'application/json', // // Add auth headers // }, // }) // // if (!response.ok) { // throw new Error(`Backend responded with ${response.status}`) // } // // const data = await response.json() // return NextResponse.json(data) // Mock response - return default settings return NextResponse.json({ success: true, data: DEFAULT_SETTINGS, }) } catch (error) { console.error('Get settings error:', error) return NextResponse.json( { success: false, error: error instanceof Error ? error.message : 'Unknown error', }, { status: 500 } ) } } /** * PUT /api/admin/companion/settings * Update teacher settings */ export async function PUT(request: NextRequest) { try { const body = await request.json() // Validate the settings structure if (!body || typeof body !== 'object') { return NextResponse.json( { success: false, error: 'Invalid settings data' }, { status: 400 } ) } // TODO: Replace with actual backend call // const backendUrl = process.env.BACKEND_URL || 'http://localhost:8000' // const response = await fetch(`${backendUrl}/api/teacher/settings`, { // method: 'PUT', // headers: { // 'Content-Type': 'application/json', // // Add auth headers // }, // body: JSON.stringify(body), // }) // // if (!response.ok) { // throw new Error(`Backend responded with ${response.status}`) // } // // const data = await response.json() // return NextResponse.json(data) // Mock response - just acknowledge the save return NextResponse.json({ success: true, message: 'Settings saved', data: body, }) } catch (error) { console.error('Save settings error:', error) return NextResponse.json( { success: false, error: error instanceof Error ? error.message : 'Unknown error', }, { status: 500 } ) } } /** * PATCH /api/admin/companion/settings * Partially update teacher settings */ export async function PATCH(request: NextRequest) { try { const body = await request.json() // TODO: Replace with actual backend call return NextResponse.json({ success: true, message: 'Settings updated', data: body, }) } catch (error) { console.error('Update settings error:', error) return NextResponse.json( { success: false, error: error instanceof Error ? error.message : 'Unknown error', }, { status: 500 } ) } }