/** * ========================================================================= * PLATEFORME ECO-PANNEAU.FR - VERSION 1.0.0 * Socle Riverains - Onglet : Newsletter / Actualités du chantier * ========================================================================= */ const { useState } = React; window.pano_RiverainNewsletterTab = ({ panneau, themeColor, showToast }) => { const { MailIcon, LoaderIcon, CheckCircleIcon, ArrowRightIcon } = window.pano_getIcons(); const Button = window.pano_Button || (() => null); const [email, setEmail] = useState(''); const [status, setStatus] = useState('idle'); // idle, requesting, verifying, success const [verifySession, setVerifySession] = useState(''); const [verifyCode, setVerifyCode] = useState(''); const [submitting, setSubmitting] = useState(false); const handleSubscribeRequest = async (e) => { e.preventDefault(); if (!email.trim() || !email.includes('@')) { if (showToast) showToast("Veuillez saisir une adresse e-mail valide.", "error"); return; } const d = await window.pano_apiFetch('newsletter/subscribe_request', { body: { email: email.trim(), panneau_id: panneau.id }, setLoading: setSubmitting, successMessage: "Un code de vérification a été envoyé à votre adresse e-mail." }); if (d && d.data && d.data.verify_session) { setVerifySession(d.data.verify_session); setStatus('verifying'); } }; const handleVerifyCode = async (e) => { e.preventDefault(); if (verifyCode.length !== 6) return; const d = await window.pano_apiFetch('newsletter/subscribe_confirm', { body: { verify_session: verifySession, code: verifyCode }, setLoading: setSubmitting, successMessage: "Inscription confirmée avec succès !" }); if (d) { setStatus('success'); } }; if (status === 'success') { return (
Vous recevrez désormais les actualités et les informations importantes concernant ce chantier directement par e-mail.
Un code à 6 chiffres a été envoyé à {email}. Saisissez-le ci-dessous pour confirmer votre inscription.
Inscrivez-vous à la newsletter du chantier pour recevoir les alertes importantes (coupures de route, livraisons exceptionnelles, etc.) directement dans votre boîte mail.
Votre e-mail ne sera utilisé que pour les communications relatives à ce chantier. Vous pourrez vous désinscrire à tout moment.