/** * Contrôleur pour gérer les messages de contact */ import { sendContactEmail } from '../services/email.service.js'; import { isValidEmail } from '../utils/helpers.js'; /** * POST /api/contact * Envoi d'un message depuis le formulaire de contact */ export const submitContactForm = async (req, res) => { try { const { fullName, email, subject, message } = req.body; // Validation simple if (!fullName || !email || !subject || !message) { return res.status(400).json({ success: false, message: 'Tous les champs sont requis' }); } // Validation email (utilise isValidEmail pour éviter DoS) if (!isValidEmail(email)) { return res.status(400).json({ success: false, message: 'Adresse email invalide' }); } // Envoyer l'email await sendContactEmail({ fullName, email, subject, message }); res.status(200).json({ success: true, message: 'Votre message a été envoyé avec succès. Nous vous répondrons dans les plus brefs délais.' }); } catch (error) { console.error('Erreur lors de l\'envoi du message de contact:', error); res.status(500).json({ success: false, message: 'Une erreur est survenue lors de l\'envoi de votre message. Veuillez réessayer.' }); } }; export default { submitContactForm };