import { NextRequest, NextResponse } from 'next/server';
import { dbHelpers } from '@/lib/db';
import { getSession } from '@/lib/auth';

export async function GET(request: NextRequest) {
  const accessToken = request.cookies.get('scriba.access_token')?.value;
  const session = await getSession(accessToken);
  if (!session) return NextResponse.json({ error: 'Unauthorized' }, { status: 401 });

  const status = await dbHelpers.getPilotStatus(session.user.id);
  return NextResponse.json(status);
}

export async function POST(request: NextRequest) {
  const accessToken = request.cookies.get('scriba.access_token')?.value;
  const session = await getSession(accessToken);
  if (!session) return NextResponse.json({ error: 'Unauthorized' }, { status: 401 });

  const result = await dbHelpers.activatePilot(session.user.id);
  if (!result) return NextResponse.json({ error: 'User not found' }, { status: 404 });
  if ('alreadyActivated' in result) {
    return NextResponse.json({ error: 'Pilot already activated' }, { status: 409 });
  }
  return NextResponse.json({ success: true });
}
