Accueil Assets
function initMap() { var bounds = new google.maps.LatLngBounds(); var map = new google.maps.Map(document.getElementById('artisans-map'), { styles: styleMap }); var icon = { url: "https://artisans.quelleenergie.fr/assets/icones/geolocalize-02-57f71366ba86f935cf6949b551c67cc17042750d0fc34a5d7af80ac028bfae86.svg", scaledSize: new google.maps.Size(40, 40) } var iconSelectionne = { url: "https://artisans.quelleenergie.fr/assets/icones/geolocalize-01-5fe26a2a4ce9fd6566cc27b4fabb592a37fa7722f3e3d73019830ede8c4dbd05.svg", scaledSize: new google.maps.Size(40, 40) } var markers = [[47.401366, 0.6633599, "lucien-brun-gregoire"], [44.8461771, -0.5754967, "les-techniciens-de-l-habitat-97e51710-c866-40c9-809f-755c2f51b542"], [46.7755381, -0.6918583, "drochon-bruno"], [48.1767942, -0.8894339, "sarl-deshaies-yves-27299"], [49.0727421, 4.8264676, "88893808100013"], [46.413585, -1.394949, "air-du-temps-renov-et-piscine-8fa2a32b-94e3-4a0e-a8bc-1099dfea30d9"], [43.495245, 5.3528297, "electricite-industrielle-j-p-fauche-5a1d6e7c-e4dd-4dac-be38-bf9d3560bc0c"], [43.4516275, 4.9310561, "electricite-industrielle-j-p-fauche-eb32d7f6-a164-499a-9ee8-06034cbe09ba"], [43.6258059, 5.1214347, "duca"], [44.0949207, 3.0812948, "urbanis-acd7136e-e10c-4775-a653-e2dc9756c4a6"]]; var dernierMarkerSelectionne; var listeObjetMarkers = [] for( i = 0; i < markers.length; i++ ) { var position = new google.maps.LatLng(markers[i][0], markers[i][1]); bounds.extend(position); marker = new google.maps.Marker({ position: position, map: map, url: markers[i][2], icon: icon }); listeObjetMarkers.push(marker) google.maps.event.addListener(marker, 'click', function() { montreCardArtisan(this); }); } map.fitBounds(bounds) map.panToBounds(bounds) $('.artisans-container .artisan-item').hover(function(){ montrePositionArtisan($(this)); }); function deselectionneMarker() { if (dernierMarkerSelectionne != undefined) { dernierMarkerSelectionne.setIcon(icon); } } function selectionneMarker(element) { $('.artisan-item.selectionne').removeClass('selectionne') element.toggleClass('selectionne') } function montreCardArtisan(marker) { deselectionneMarker(); marker.setIcon(iconSelectionne); var element = $('#'+marker.url); $('html, body').animate({ scrollTop: element.offset().top }, 600 ); selectionneMarker(element); dernierMarkerSelectionne = marker } function montrePositionArtisan(element) { selectionneMarker(element) var index = element.attr('id') for( i = 0; i < markers.length; i++ ) { if (listeObjetMarkers[i].url == index) { deselectionneMarker(); listeObjetMarkers[i].setIcon(iconSelectionne); dernierMarkerSelectionne = listeObjetMarkers[i] } }; } } $(document).on('turbolinks:load', function () { initMap(); });