//////////////////////////////////////////////////////////////////////////////////////// // Events // //////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////// // Constants // //////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////// // Variables // //////////////////////////////////////////////////////////////////////////////////////// var gmwdmapDataOptions = []; //////////////////////////////////////////////////////////////////////////////////////// // Constructor & Destructor // //////////////////////////////////////////////////////////////////////////////////////// function gmwdInitMainMap(el, excludeOverlays, key){ gmwdmapData["main_map" + key] = new google.maps.Map(document.getElementById(el), { center: {lat: gmwdmapData["centerLat" + key], lng: gmwdmapData["centerLng" + key]}, zoom: gmwdmapData["zoom" + key], maxZoom: gmwdmapData["maxZoom" + key], minZoom: gmwdmapData["minZoom" + key], scrollwheel: gmwdmapData["mapWhellScrolling" + key], draggable: gmwdmapData["mapDragable" + key], disableDoubleClickZoom: gmwdmapData["mapDbClickZoom" + key], zoomControl: gmwdmapData["enableZoomControl" + key], mapTypeControl: gmwdmapData["enableMapTypeControl" + key], scaleControl: gmwdmapData["enableScaleControl" + key], streetViewControl: gmwdmapData["enableStreetViewControl" + key], fullscreenControl: gmwdmapData["enableFullscreenControl" + key], rotateControl: gmwdmapData["enableRotateControl" + key], zoomControlOptions:{ position: gmwdmapData["zoomControlPosition" + key] }, mapTypeControlOptions:{ position: gmwdmapData["mapTypeControlPosition" + key], style: gmwdmapData["mapTypeControlStyle" + key] }, fullscreenControlOptions:{ position: gmwdmapData["fullscreenControlPosition" + key] }, streetViewControlOptions:{ position: gmwdmapData["streetViewControlPosition" + key] }, }); gmwdmapData["main_map" + key].setTilt(45); gmwdSetMapTypeId(key); //themes jQuery("#wd-map" + key).css("border-radius", gmwdmapData["mapBorderRadius" + key] + "px"); //layers gmwdSetLayers("bike", key); gmwdSetLayers("traffic", key); gmwdSetLayers("transit", key); if(excludeOverlays == false){ // overlays gmwdSetMapMarkers(key); gmwdSetMapPolygons(key); gmwdSetMapPolylines(key); } jQuery(document).on("click",".gm-fullscreen-control",function(){ setTimeout(function(){ gmwdmapData["main_map" + key].setCenter({lat: Number(gmwdmapData["centerLat" + key]), lng: Number(gmwdmapData["centerLng" + key])}); gmwdmapData["main_map" + key].setZoom(gmwdmapData["zoom" + key]); }, 300); }); } function gmwdSetMapMarkers(_key){ var mapMarker; if(Object.keys(gmwdmapData["mapMarkers" + _key]).length > 0){ for(var key in gmwdmapData["mapMarkers" + _key]){ mapMarker = gmwdmapData["mapMarkers" + _key][key]; var marker = new google.maps.Marker({ map: gmwdmapData["main_map" + _key], position: {lat: Number(mapMarker.lat), lng: Number(mapMarker.lng)} }); gmwdmapData["allMarkers" + _key].push(marker); var infoWindow; if(mapMarker.enable_info_window == 1){ contentString = ''; if(gmwdmapData["infoWindowInfo" + _key].indexOf("title") != -1){ contentString += '