import { NextRequest, NextResponse } from 'next/server' import nodemailer from 'nodemailer' export async function POST(request: NextRequest) { try { const body = await request.json() const { name, email, company, service, message } = body // Validation des champs requis if (!name || !email || !service || !message) { return NextResponse.json( { error: 'Tous les champs requis doivent être remplis.' }, { status: 400 } ) } // Validation de l'email const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/ if (!emailRegex.test(email)) { return NextResponse.json( { error: 'Adresse email invalide.' }, { status: 400 } ) } // Configuration du transporteur SMTP OVH const transporter = nodemailer.createTransport({ host: process.env.SMTP_HOST || 'ssl0.ovh.net', port: parseInt(process.env.SMTP_PORT || '465'), secure: true, // true pour le port 465, false pour les autres ports auth: { user: process.env.SMTP_USER, // L'email d'envoi OVH pass: process.env.SMTP_PASSWORD, // Le mot de passe de l'email OVH }, }) // Configuration de l'email const mailOptions = { from: process.env.SMTP_FROM || process.env.SMTP_USER, to: 'contact@runlock.re', replyTo: email, subject: `[Runlock.re] Nouvelle demande de contact - ${service}`, html: `