/* global React */ const { useState: cUseState } = React; function BudgetForm() { const [step, setStep] = cUseState(0); const [sending, setSending] = cUseState(false); const [errMsg, setErrMsg] = cUseState(''); const [data, setData] = cUseState({ tipo: '', metros: 60, nombre: '', email: '', tel: '', privacidad: false, website: '', }); const set = (k, v) => setData(d => ({ ...d, [k]: v })); const tipos = ['Reforma integral', 'Baño', 'Cocina', 'Piso para alquiler', 'Local comercial', 'Solo asesoría']; const canNext = () => { if (step === 0) return data.tipo; if (step === 1) return data.metros > 0; if (step === 2) return data.nombre && data.tel && data.privacidad; return true; }; const submit = async () => { if (sending || !canNext()) return; setSending(true); setErrMsg(''); try { const res = await fetch('enviar.php', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data), }); const json = await res.json(); if (json.ok) { setStep(3); window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'lead_formulario', tipo_reforma: data.tipo, metros: data.metros, }); } else setErrMsg(json.error || 'No se pudo enviar. Inténtalo de nuevo o llámanos.'); } catch (e) { setErrMsg('No se pudo enviar. Revisa tu conexión o llámanos al 951 23 93 69.'); } finally { setSending(false); } }; return (
Elige una opción. Podrás contarnos los detalles después.
Aproximado. No hace falta exactitud.
Te llamamos a la mayor brevedad posible.
Te llamamos a la mayor brevedad posible al {data.tel}. Si prefieres, escríbenos ahora mismo por WhatsApp y te respondemos al momento.
{errMsg}
} {step < 3 && (Llámanos o escríbenos por WhatsApp. Le atenderemos personalmente en nuestra oficina para estudiar su proyecto y ofrecerle la mejor solución.
En nuestra forma de trabajar convertimos la transparencia, confianza y tranquilidad en hechos concretos:
Porque cuando todas las partes están correctamente alineadas, el resultado es simplemente perfecto.
Reformas en Málaga y Costa del Sol