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 = [[43.1107172, 0.7302280999999999, "engie-e8546872-8717-49ca-a2da-981a62ed2d7a"], [47.2834167, -1.7417367, "engie-b47c75c9-b66d-4afb-9d30-1524501ad812"], [46.1244787, 3.4269708, "engie-09a91ec2-859b-47cb-9afc-003a7f9ae2d0"], [48.9201018, 2.326315, "engie-99ee021a-3039-4528-b467-b6da328917c8"], [46.5598041, 0.3433854, "engie-b8fdb67f-ebf0-4d36-9e61-90a1237edf52"], [45.7794993, 3.0710108, "engie-c3ea6133-0077-48ed-989e-8cb95b7ed8d6"], [42.6873702, 2.8824353, "engie-9ab688a9-a9a4-4486-85e4-dc23833f51f9"], [49.479015, 1.1044201, "engie-841549fb-71b5-48e1-94e5-d9fa35997297"], [43.5730948, 6.9805725, "engie-59cd4e17-38f3-47c8-b7a3-a3430581aff2"], [45.6397348, 0.135496, "engie-81d854ce-ad36-4f05-87ac-b9b1901e51f1"]];
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();
});