var maps={};jQuery(document).ready(function($){if($('.em-location-map').length>0||$('.em-locations-map').length>0){var script=document.createElement("script");script.setAttribute("src","http://maps.google.com/maps/api/js?sensor=false&callback=em_maps");script.setAttribute("type","text/javascript");document.documentElement.firstChild.appendChild(script);}});function em_maps(){jQuery('.em-location-map').each(function(index){el=jQuery(this);var map_id=el.attr('id').replace('em-location-map-','');em_LatLng=new google.maps.LatLng(jQuery('#em-location-map-coords-'+map_id+' .lat').text(),jQuery('#em-location-map-coords-'+map_id+' .lng').text());maps[map_id]=new google.maps.Map(document.getElementById('em-location-map-'+map_id),{zoom:14,center:em_LatLng,mapTypeId:google.maps.MapTypeId.ROADMAP,mapTypeControl:false});var marker=new google.maps.Marker({position:em_LatLng,map:maps[map_id]});var infowindow=new google.maps.InfoWindow({content:document.getElementById('em-location-map-info-'+map_id).firstElementChild});infowindow.open(maps[map_id],marker);});jQuery('.em-locations-map').each(function(index){var el=jQuery(this);var map_id=el.attr('id').replace('em-locations-map-','');var em_data=jQuery.parseJSON(jQuery('#em-locations-map-coords-'+map_id).text());jQuery.getJSON(document.URL,em_data,function(data){if(data.length>0){var myLatlng=new google.maps.LatLng(data[0].location_latitude,data[0].location_longitude);var myOptions={mapTypeId:google.maps.MapTypeId.ROADMAP};maps[map_id]=new google.maps.Map(document.getElementById("em-locations-map-"+map_id),myOptions);var minLatLngArr=[0,0];var maxLatLngArr=[0,0];for(var i=0;i<data.length;i++){if(!(data[i].location_latitude==0&&data[i].location_longitude==0)){var latitude=parseFloat(data[i].location_latitude);var longitude=parseFloat(data[i].location_longitude);var location=new google.maps.LatLng(latitude,longitude);var marker=new google.maps.Marker({position:location,map:maps[map_id]});marker.setTitle(data[i].location_name);var myContent='<div class="em-map-balloon"><div id="em-map-balloon-'+map_id+'" class="em-map-balloon-content">'+data[i].location_balloon+'</div></div>';em_map_infobox(marker,myContent,maps[map_id]);minLatLngArr[0]=(latitude<minLatLngArr[0]||i==0)?latitude:minLatLngArr[0];minLatLngArr[1]=(longitude<minLatLngArr[1]||i==0)?longitude:minLatLngArr[1];maxLatLngArr[0]=(latitude>maxLatLngArr[0]||i==0)?latitude:maxLatLngArr[0];maxLatLngArr[1]=(longitude>maxLatLngArr[1]||i==0)?longitude:maxLatLngArr[1];}}
var minLatLng=new google.maps.LatLng(minLatLngArr[0],minLatLngArr[1]);var maxLatLng=new google.maps.LatLng(maxLatLngArr[0],maxLatLngArr[1]);var bounds=new google.maps.LatLngBounds(minLatLng,maxLatLng);maps[map_id].fitBounds(bounds);}else{el.children().first().html('No locations found');}});});}
function em_map_infobox(marker,message,map){var infowindow=new google.maps.InfoWindow({content:message});google.maps.event.addListener(marker,'click',function(){infowindow.open(map,marker);});}
