import { NextRequest, NextResponse } from 'next/server'; import prisma from '@/lib/prisma'; export async function GET(request: NextRequest) { try { const { searchParams } = new URL(request.url); const token = searchParams.get('token'); const baseUrl = process.env.NEXT_PUBLIC_APP_URL || 'http://localhost:3000'; if (!token) { return NextResponse.redirect(new URL('/login?error=Token manquant', baseUrl)); } const user = await prisma.user.findUnique({ where: { verificationToken: token } }); if (!user) { return NextResponse.redirect(new URL('/login?error=Token invalide ou expiré', baseUrl)); } await prisma.user.update({ where: { id: user.id }, data: { emailVerified: true, verificationToken: null } }); return NextResponse.redirect(new URL('/login?verified=true', baseUrl)); } catch (error) { console.error('Verification error:', error); const baseUrl = process.env.NEXT_PUBLIC_APP_URL || 'http://localhost:3000'; return NextResponse.redirect(new URL('/login?error=Erreur de vérification', baseUrl)); } }