(function ($) {
"use strict";
var markerIcon = {
anchor: new google.maps.Point(22, 16),
url: 'images/marker.png',
}
function mainMap() {
function locationData(locationURL, locationCategory, locationImg, locationTitle, locationAddress, locationPhone, locationStarRating, locationRevievsCounter) {
return ('
')
}
var locations = [
[locationData('#', 'Farmacia', '/foto/259.jpg', 'FARMACIA CELESTE SAS di MANARDI A. & C.', "VIA CELESTE, 29/A", "0734 / 859157", "5", "259"), 43.2264323, 13.6852058, 0, markerIcon],
[locationData('#', 'Farmacia', '/foto/227.jpg', 'BONCORI DI BONCORI ELENA & C SAS', "VIALE DEI PINI, 89", "0734 / 675617 ", "5", "227"), 43.1870978, 13.7919025, 0, markerIcon],
[locationData('#', 'Farmacia', '/foto/4.jpg', 'ANTICA FARM. MANZONI DI MANZONI ANTONIO e C. S.N.C', "CORSO MATTEOTTI, 197", "071 / 94207", "5", "4"), 43.6008668, 13.325376, 0, markerIcon],
[locationData('#', 'Farmacia', '/foto/186.jpg', 'FARMACIA FOFO\' DI BENIGNI IDO & C. S.N.C', "VIA BINNI, 6", "0735 / 702549", "5", "186"), 42.896080, 13.795780, 0, markerIcon],
];
var map = new google.maps.Map(document.getElementById('map-main'), {
zoom: 9,
scrollwheel: false,
center: new google.maps.LatLng(43.386376988524376, 13.320029138011995),
mapTypeId: google.maps.MapTypeId.ROADMAP,
zoomControl: false,
mapTypeControl: false,
scaleControl: false,
panControl: false,
fullscreenControl: true,
navigationControl: false,
streetViewControl: false,
animation: google.maps.Animation.BOUNCE,
gestureHandling: 'cooperative',
styles: [{
"featureType": "administrative",
"elementType": "labels.text.fill",
"stylers": [{
"color": "#444444"
}]
}]
});
var boxText = document.createElement("div");
boxText.className = 'map-box'
var currentInfobox;
var boxOptions = {
content: boxText,
disableAutoPan: true,
alignBottom: true,
maxWidth: 0,
pixelOffset: new google.maps.Size(-145, -45),
zIndex: null,
boxStyle: {
width: "260px"
},
closeBoxMargin: "0",
closeBoxURL: "",
infoBoxClearance: new google.maps.Size(1, 1),
isHidden: false,
pane: "floatPane",
enableEventPropagation: false,
};
var markerCluster, marker, i;
var allMarkers = [];
var clusterStyles = [{
textColor: 'white',
url: '',
height: 50,
width: 50
}];
for (i = 0; i < locations.length; i++) {
marker = new google.maps.Marker({
position: new google.maps.LatLng(locations[i][1], locations[i][2]),
icon: locations[i][4],
id: i
});
allMarkers.push(marker);
var ib = new InfoBox();
google.maps.event.addListener(ib, "domready", function () {
cardRaining()
});
google.maps.event.addListener(marker, 'click', (function (marker, i) {
return function () {
ib.setOptions(boxOptions);
boxText.innerHTML = locations[i][0];
ib.close();
ib.open(map, marker);
currentInfobox = marker.id;
var latLng = new google.maps.LatLng(locations[i][1], locations[i][2]);
map.panTo(latLng);
map.panBy(0, -180);
google.maps.event.addListener(ib, 'domready', function () {
$('.infoBox-close').click(function (e) {
e.preventDefault();
ib.close();
});
});
}
})(marker, i));
}
var options = {
imagePath: 'images/',
styles: clusterStyles,
minClusterSize: 2
};
markerCluster = new MarkerClusterer(map, allMarkers, options);
google.maps.event.addDomListener(window, "resize", function () {
var center = map.getCenter();
google.maps.event.trigger(map, "resize");
map.setCenter(center);
});
$('.nextmap-nav').click(function (e) {
e.preventDefault();
map.setZoom(15);
var index = currentInfobox;
if (index + 1 < allMarkers.length) {
google.maps.event.trigger(allMarkers[index + 1], 'click');
} else {
google.maps.event.trigger(allMarkers[0], 'click');
}
});
$('.prevmap-nav').click(function (e) {
e.preventDefault();
map.setZoom(15);
if (typeof (currentInfobox) == "undefined") {
google.maps.event.trigger(allMarkers[allMarkers.length - 1], 'click');
} else {
var index = currentInfobox;
if (index - 1 < 0) {
google.maps.event.trigger(allMarkers[allMarkers.length - 1], 'click');
} else {
google.maps.event.trigger(allMarkers[index - 1], 'click');
}
}
});
$('.map-item').click(function (e) {
e.preventDefault();
map.setZoom(15);
var index = currentInfobox;
var marker_index = parseInt($(this).attr('href').split('#')[1], 10);
google.maps.event.trigger(allMarkers[marker_index], "click");
if ($(this).hasClass("scroll-top-map")){
$('html, body').animate({
scrollTop: $(".map-container").offset().top+ "-80px"
}, 500)
}
else if ($(window).width()<1064){
$('html, body').animate({
scrollTop: $(".map-container").offset().top+ "-80px"
}, 500)
}
});
// Scroll enabling button
var scrollEnabling = $('.scrollContorl');
$(scrollEnabling).click(function(e){
e.preventDefault();
$(this).toggleClass("enabledsroll");
if ( $(this).is(".enabledsroll") ) {
map.setOptions({'scrollwheel': true});
} else {
map.setOptions({'scrollwheel': false});
}
});
var zoomControlDiv = document.createElement('div');
var zoomControl = new ZoomControl(zoomControlDiv, map);
function ZoomControl(controlDiv, map) {
zoomControlDiv.index = 1;
map.controls[google.maps.ControlPosition.RIGHT_CENTER].push(zoomControlDiv);
controlDiv.style.padding = '5px';
var controlWrapper = document.createElement('div');
controlDiv.appendChild(controlWrapper);
var zoomInButton = document.createElement('div');
zoomInButton.className = "mapzoom-in";
controlWrapper.appendChild(zoomInButton);
var zoomOutButton = document.createElement('div');
zoomOutButton.className = "mapzoom-out";
controlWrapper.appendChild(zoomOutButton);
google.maps.event.addDomListener(zoomInButton, 'click', function () {
map.setZoom(map.getZoom() + 1);
});
google.maps.event.addDomListener(zoomOutButton, 'click', function () {
map.setZoom(map.getZoom() - 1);
});
}
}
var map = document.getElementById('map-main');
if (typeof (map) != 'undefined' && map != null) {
google.maps.event.addDomListener(window, 'load', mainMap);
}
function singleMap() {
var myLatLng = {
lng: $('#singleMap').data('longitude'),
lat: $('#singleMap').data('latitude'),
};
var single_map = new google.maps.Map(document.getElementById('singleMap'), {
zoom: 14,
center: myLatLng,
scrollwheel: false,
zoomControl: false,
mapTypeControl: false,
scaleControl: false,
panControl: false,
navigationControl: false,
streetViewControl: false,
styles: [{
"featureType": "landscape",
"elementType": "all",
"stylers": [{
"color": "#f2f2f2"
}]
}]
});
var markerIcon2 = {
url: 'images/marker.png',
}
var marker = new google.maps.Marker({
position: myLatLng,
map: single_map,
icon: markerIcon2,
title: 'Our Location'
});
var zoomControlDiv = document.createElement('div');
var zoomControl = new ZoomControl(zoomControlDiv, single_map);
function ZoomControl(controlDiv, single_map) {
zoomControlDiv.index = 1;
single_map.controls[google.maps.ControlPosition.RIGHT_CENTER].push(zoomControlDiv);
controlDiv.style.padding = '5px';
var controlWrapper = document.createElement('div');
controlDiv.appendChild(controlWrapper);
var zoomInButton = document.createElement('div');
zoomInButton.className = "mapzoom-in";
controlWrapper.appendChild(zoomInButton);
var zoomOutButton = document.createElement('div');
zoomOutButton.className = "mapzoom-out";
controlWrapper.appendChild(zoomOutButton);
google.maps.event.addDomListener(zoomInButton, 'click', function () {
single_map.setZoom(single_map.getZoom() + 1);
});
google.maps.event.addDomListener(zoomOutButton, 'click', function () {
single_map.setZoom(single_map.getZoom() - 1);
});
}
}
var single_map = document.getElementById('singleMap');
if (typeof (single_map) != 'undefined' && single_map != null) {
google.maps.event.addDomListener(window, 'load', singleMap);
}
})(this.jQuery);