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 = [[49.0045369, 1.1445341, "hm-architecture"], [43.7398399, 7.188032199999999, "eiffage-energie-systemes-infra-mediterranee-b3d590ed-e4dd-4052-9ddb-c9f6e6b243c6"], [43.42472069999999, 5.2608013, "eiffage-energie-systemes-infra-mediterranee-ed1d64e0-813e-4cc5-ab91-080ce89e7f00"], [48.8592513, 2.8320047, "mieux-isoler-engages-pour-la-planete"], [47.5040963, 6.800093299999999, "90311789300011"], [43.7037596, 7.255093899999999, "sab-batiment"], [45.5850991, 4.4293635, "simon-platrerie-peinture"], [49.5049514, 0.080466, "ateliers-6-24"], [16.252873, -61.5536372, "otis-53f36250-9df4-4cc0-88af-1784e2efbbbe"], [45.77063769999999, 3.1005303, "gregory-lacoste-085bed21-78ec-40f0-830d-1d796ab9bae3"]]; 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(); });