--- before +++ after @@ -1 +1,36 @@ -(()=>{const form=document.querySelector('#project-brief');if(!form)return;const need=form.elements.need;const requested=new URLSearchParams(location.search).get('besoin');if([...need.options].some(o=>o.value===requested))need.value=requested;const summary=()=>`Bonjour INOBIC,\n\nMon besoin : ${need.selectedOptions[0].text}\nObjectif : ${form.elements.message.value.trim()}\nÉchéance : ${form.elements.timing.value.trim()||'À définir'}\nBudget : ${form.elements.budget.value.trim()||'À définir'}\n\nMerci,`;const status=document.querySelector('#brief-status');form.addEventListener('submit',e=>{e.preventDefault();location.href='mailto:contact@inobic.fr?subject='+encodeURIComponent('Projet — '+need.selectedOptions[0].text)+'&body='+encodeURIComponent(summary());status.textContent='Votre messagerie va s’ouvrir avec le brouillon. Le message n’a pas encore été envoyé.'});document.querySelector('#copy-brief').addEventListener('click',async()=>{const preview=document.querySelector('#brief-preview');preview.hidden=false;preview.value=summary();try{await navigator.clipboard.writeText(summary());status.textContent='Résumé copié. Vous pouvez le coller dans votre email.'}catch{preview.focus();preview.select();status.textContent='Sélectionnez et copiez le résumé ci-dessous.'}})})();+(() => { + const form = document.querySelector('#project-brief'); + if (!form) return; + const need = form.elements.need; + const status = document.querySelector('#brief-status'); + const preview = document.querySelector('#brief-preview'); + const requested = new URLSearchParams(location.search).get('besoin'); + if ([...need.options].some(option => option.value === requested)) need.value = requested; + + const summary = () => `Bonjour INOBIC,\n\nMon besoin : ${need.selectedOptions[0].text}\nObjectif : ${form.elements.message.value.trim()}\nÉchéance : ${form.elements.timing.value.trim() || 'À définir'}\nBudget : ${form.elements.budget.value.trim() || 'À définir'}\n\nMerci,`; + + form.addEventListener('submit', event => { + event.preventDefault(); + location.href = 'mailto:contact@inobic.fr?subject=' + + encodeURIComponent('Projet — ' + need.selectedOptions[0].text) + + '&body=' + encodeURIComponent(summary()); + status.textContent = 'Votre messagerie va s’ouvrir avec le brouillon. Le message n’a pas encore été envoyé.'; + }); + + document.querySelector('#copy-brief').addEventListener('click', async () => { + preview.hidden = false; + preview.value = summary(); + try { + await navigator.clipboard.writeText(preview.value); + status.textContent = 'Résumé copié. Vous pouvez le coller dans votre email.'; + } catch { + preview.focus(); + preview.select(); + status.textContent = 'Sélectionnez et copiez le résumé ci-dessous.'; + } + }); + // Reveal only after both event handlers are installed. If loading fails, the + // always-visible direct email link remains usable without collecting a brief. + form.hidden = false; + form.style.removeProperty('display'); +})();