feat: pagina contatti e api email con validazione testata

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-02 01:26:49 +02:00
parent be4d933ca3
commit e9840105a3
5 changed files with 170 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
import nodemailer from 'nodemailer';
import { getEnv } from './env';
import type { ContactData } from './contact';
export async function sendContactEmail(data: ContactData): Promise<void> {
const transporter = nodemailer.createTransport({
host: getEnv('SMTP_HOST'),
port: Number(getEnv('SMTP_PORT', '587')),
secure: Number(getEnv('SMTP_PORT', '587')) === 465,
auth: { user: getEnv('SMTP_USER'), pass: getEnv('SMTP_PASS') },
});
await transporter.sendMail({
from: getEnv('CONTACT_FROM'),
to: getEnv('CONTACT_TO', 'info@insanitylab.it'),
replyTo: data.email,
subject: `Nuovo contatto dal sito: ${data.firstName} ${data.lastName}`.trim(),
text: [
`Nome: ${data.firstName} ${data.lastName}`.trim(),
data.phone && `Telefono: ${data.phone}`,
`E-mail: ${data.email}`,
'',
data.message,
].filter(Boolean).join('\n'),
});
}