<script type="text/javascript">$(document).ready(function() {// 1. Centrage sur la Francevar mymap = L.map('mapid', {center: [46.2276, 2.2137],zoom: 6,minZoom: 4,maxZoom: 17});L.tileLayer('//{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {attribution: '© OpenStreetMap contributors'}).addTo(mymap);var icons = {'CSO': L.icon({ iconUrl: '{{ asset("build/markers/marker-icon-info.svg") }}', shadowUrl: '{{ asset("build/markers/marker-shadow.png") }}', iconSize: [41, 51], iconAnchor: [20, 51], popupAnchor: [0, -51] }),'EVS': L.icon({ iconUrl: '{{ asset("build/markers/marker-icon-success.svg") }}', shadowUrl: '{{ asset("build/markers/marker-shadow.png") }}', iconSize: [41, 51], iconAnchor: [20, 51], popupAnchor: [0, -51] }),'FDD': L.icon({ iconUrl: '{{ asset("build/markers/marker-icon-warning.svg") }}', shadowUrl: '{{ asset("build/markers/marker-shadow.png") }}', iconSize: [41, 51], iconAnchor: [20, 51], popupAnchor: [0, -51] }),'CAF': L.icon({ iconUrl: '{{ asset("build/markers/marker-icon-danger.svg") }}', shadowUrl: '{{ asset("build/markers/marker-shadow.png") }}', iconSize: [41, 51], iconAnchor: [20, 51], popupAnchor: [0, -51] })};var structuresData = {{ structuresJson|raw }};var markers = L.markerClusterGroup({ chunkedLoading: true });Object.keys(structuresData).forEach(function(type) {var list = structuresData[type];var icon = icons[type] || icons['CSO'];list.forEach(function(s) {var coords = s.coordinate.split(',');if (coords.length === 2) {var marker = L.marker([parseFloat(coords[0]), parseFloat(coords[1])], { icon: icon });marker.on('click', function(e) {var urlEdit = "{{ path('structure_edit', {'id': 'PLACEHOLDER'}) }}".replace('PLACEHOLDER', s.id);var content = "<div class='popup-header'><h4>";content += s.can_edit ? "<a href='"+urlEdit+"'>" + s.nom + "</a>" : s.nom;content += "</h4></div><div class='popup-body'>";if (s.adresse) content += "<p><i class='fa-solid fa-house'></i> " + s.adresse + "</p>";content += "<p><i class='fa-solid fa-location-dot'></i> " + s.code_postal + " " + s.commune + "</p>";if (s.telephone) content += "<p><i class='fa-solid fa-phone'></i> " + s.telephone + "</p>";if (s.email) content += "<p><i class='fa-solid fa-envelope'></i> " + s.email + "</p>";content += "</div>";e.target.bindPopup(content, { minWidth: 320 }).openPopup();});markers.addLayer(marker);}});});mymap.addLayer(markers);setTimeout(function() { mymap.invalidateSize(); }, 400);});</script><style>/* Augmente la taille globale de la zone d'info */.popup-body {padding: 10px 0;font-size: 16px; /* Taille du texte augmentée */}/* Espace les lignes d'informations */.popup-body p {margin: 12px 0 !important; /* Plus d'espace entre chaque ligne */line-height: 1.4;}/* Grossit les icônes pour qu'elles correspondent au texte */.popup-body i {font-size: 18px;width: 28px !important;color: #555;}/* Optionnel : Ajuste la largeur de la bulle pour accueillir le texte plus gros */.leaflet-popup-content {width: 400px !important;}</style>