import { prisma } from "@/lib/prisma";
import { transporter } from "@/lib/mail";

export async function POST(req: Request) {
  try {
    const body = await req.json();

    // 1. SAVE IN DB
    const message = await prisma.contactMessage.create({
      data: {
        name: body.name,
        email: body.email,
        phone: body.phone,
        message: body.message,
      },
    });

    // 2. SEND EMAIL VIA OVH
    await transporter.sendMail({
      from: process.env.EMAIL_USER,
      to: process.env.ADMIN_EMAIL,

      subject: `📩 Nouveau message de ${body.name}`,

      html: `
        <h2>Nouveau message reçu</h2>

        <p><b>Nom :</b> ${body.name}</p>
        <p><b>Email :</b> ${body.email}</p>
        <p><b>Téléphone :</b> ${body.phone}</p>

        <hr />

        <p><b>Message :</b></p>
        <p>${body.message}</p>
      `,
    });

    return Response.json(message);
  } catch (error) {
    console.error(error);

    return new Response("Error", {
      status: 500,
    });
  }
}