document.title='ADEL \u00c9lectricit\u00e9 \u00b7 \u00c9nergies \u2014 Vernon (27)'; /* Fade in on scroll */ var obs=new IntersectionObserver(function(e){e.forEach(function(x){if(x.isIntersecting)x.target.classList.add('vis')})},{threshold:.1}); document.querySelectorAll('.ae-fade').forEach(function(el){obs.observe(el)}); /* Animated counters */ var counted=false; var cobs=new IntersectionObserver(function(entries){ if(entries[0].isIntersecting&&!counted){ counted=true; document.querySelectorAll('.ae-counter').forEach(function(el){ var target=parseFloat(el.dataset.target); var decimal=el.dataset.decimal==='true'; var duration=1800; var start=performance.now(); function step(now){ var p=Math.min((now-start)/duration,1); p=1-Math.pow(1-p,3); var val=p*target; el.textContent=decimal?val.toFixed(1):Math.floor(val); if(p<1)requestAnimationFrame(step); } requestAnimationFrame(step); }); } },{threshold:.3}); var sb=document.querySelector('.ae-stats-bar'); if(sb)cobs.observe(sb); /* Form handlers */ function sendMini(e){ e.preventDefault(); var f=document.getElementById('miniForm'); var d=new FormData(f); var data={nom:d.get('nom'),tel:d.get('tel'),besoin:d.get('besoin'),message:d.get('message'),source:'site-web-mini'}; f.style.display='none'; document.getElementById('miniOk').style.display='block'; var subj=encodeURIComponent('[Site Web] Rappel: '+data.besoin+' - '+data.nom); var body=encodeURIComponent('Nom: '+data.nom+'\nTel: '+data.tel+'\nBesoin: '+data.besoin+'\nMessage: '+data.message); var m='contact'+'\u0040'+'adel-electricite'+'\u002e'+'fr'; window.open('mailto:'+m+'?subject='+subj+'\u0026body='+body,'_blank'); return false; } function sendFull(e){ e.preventDefault(); var f=document.getElementById('fullForm'); var d=new FormData(f); var data={nom:d.get('nom'),prenom:d.get('prenom'),email:d.get('email'),tel:d.get('tel'),ville:d.get('ville'),sujet:d.get('sujet'),origine:d.get('origine'),message:d.get('message'),source:'site-web-complet'}; f.style.display='none'; document.getElementById('fullOk').style.display='block'; var subj=encodeURIComponent('[Site Web] '+data.sujet+' - '+data.nom+' '+data.prenom); var body=encodeURIComponent('Nom: '+data.nom+' '+data.prenom+'\nEmail: '+data.email+'\nTel: '+data.tel+'\nVille: '+data.ville+'\nDemande: '+data.sujet+'\nOrigine: '+data.origine+'\nMessage: '+data.message); var m='contact'+'\u0040'+'adel-electricite'+'\u002e'+'fr'; window.open('mailto:'+m+'?subject='+subj+'\u0026body='+body,'_blank'); return false; } /* Smooth scroll */ document.querySelectorAll('a[href^="#ae-"]').forEach(function(a){ a.addEventListener('click',function(e){ var t=document.querySelector(this.getAttribute('href')); if(t){e.preventDefault();t.scrollIntoView({behavior:'smooth',block:'start'})} }); }); /* Google Reviews - New Places API */ async function loadReviews(){ try{ await google.maps.importLibrary('places'); var place=new google.maps.places.Place({id:'ChIJ_aRLwWHJ5kcRWMksiM8McL0'}); await place.fetchFields({fields:['reviews','rating','userRatingCount','googleMapsURI']}); var grid=document.getElementById('ae-reviews-grid'); if(place.reviews&&place.reviews.length>0){ var revs=place.reviews.filter(function(r){return r.rating===5}); if(revs.length<2) revs=place.reviews.filter(function(r){return r.rating>=4}); revs=revs.slice(0,3); if(revs.length===0){showFB();return} grid.innerHTML=''; revs.forEach(function(r){ var s='';for(var i=0;i220)tx=tx.substring(0,220)+'...'; var d=document.createElement('div'); d.className='ae-rv'; d.innerHTML='
'+s+'

'+tx+'

'+ini+'
'+nm+'
'+dt+'
'; grid.appendChild(d); }); if(place.googleMapsURI){var c=document.querySelector('.ae-rcta a');if(c)c.href=place.googleMapsURI} /* Mettre a jour la note Google affichee */ if(place.rating){ var el=document.querySelector('[data-target="4.8"]'); if(el){el.textContent=place.rating.toFixed(1);el.dataset.target=place.rating.toFixed(1)} } if(place.userRatingCount){ var lbl=document.querySelector('.ae-stat .stat-n [data-decimal="true"]'); if(lbl){var p=lbl.closest('.ae-stat');if(p){var sub=p.querySelector('.stat-l');if(sub)sub.textContent='Note Google ('+place.userRatingCount+' avis)'}} /* Mettre a jour la barre certif */ var cb=document.getElementById('ae-google-rating'); if(cb&&place.rating)cb.innerHTML=' \u2605 '+place.rating.toFixed(1)+'/5 Google ('+place.userRatingCount+' avis) \u2014 Depuis 1981' } }else{showFB()} }catch(err){ console.log('Reviews error:',err); showFB(); } } function showFB(){ var g=document.getElementById('ae-reviews-grid'); var star='\u2605\u2605\u2605\u2605\u2605'; g.innerHTML='
'+star+'

Entreprise s\u00e9rieuse et comp\u00e9tente. R\u00e9novation \u00e9lectrique compl\u00e8te tr\u00e8s bien r\u00e9alis\u00e9e. \u00c9quipe \u00e0 l\u0027\u00e9coute, travail soign\u00e9. Je recommande.

B
Me Bultel
Vernon
'+star+'

Apr\u00e8s avoir travaill\u00e9 avec ADEL durant un an sur un chantier de r\u00e9novation compliqu\u00e9, nous les recommandons pour leur s\u00e9rieux et la qualit\u00e9 du travail.

C
Client v\u00e9rifi\u00e9
Pages Jaunes
'+star+'

Notre premier motif de choisir ADEL parmi d\u0027autres devis \u00e9tait la proximit\u00e9. La r\u00e9fection de l\u0027\u00e9lectricit\u00e9 a \u00e9t\u00e9 parfaitement coordonn\u00e9e.

C
Client v\u00e9rifi\u00e9
Vernon
'; } /* Nombre de clients dynamique depuis CRM */ fetch('https://crm.adel-energies.fr/api/public/stats') .then(function(r){return r.json()}) .then(function(d){ if(d.nb_clients){ var el=document.querySelector('[data-target="5000"]'); if(el){el.dataset.target=d.nb_clients;el.textContent=d.nb_clients} } }).catch(function(){}); /* Load Google Maps JS */ (function(){ var k='AIzaSyB5EXed89GhUPrTypFCUAWwOZW6jnGBkn0'; var s=document.createElement('script'); s.src='https://maps.googleapis.com/maps/api/js?key='+k+'&libraries=places&loading=async&callback=loadReviews'; s.async=true;s.defer=true; document.head.appendChild(s); })();