
var map;var geo;var gdir;var reasons=[];reasons['G_GEO_SUCCESS']="Success";reasons['G_GEO_MISSING_ADDRESS']="Missing Address: The address was either missing or had no value.";reasons['G_GEO_UNKNOWN_ADDRESS']="Unknown Address:  No corresponding geographic location could be found for the specified address.";reasons['G_GEO_UNAVAILABLE_ADDRESS']="Unavailable Address:  The geocode for the given address cannot be returned due to legal or contractual reasons.";reasons['G_GEO_BAD_KEY']="Bad Key: The API key is either invalid or does not match the domain for which it was given";reasons['G_GEO_TOO_MANY_QUERIES']="Too Many Queries: The daily geocoding quota for this site has been exceeded.";reasons['G_GEO_SERVER_ERROR']="Server error: The geocoding request could not be successfully processed.";function createMarker(point){var marker=new GMarker(point);return marker;}
function place(lat,lng){var point=new GLatLng(lat,lng);var locale='en_US';map.setCenter(point,14);map.addOverlay(new GMarker(point));$("#directions").html('');map.clearOverlays();var toAddress=parseFloat($('#lat').val())+","+parseFloat($('#lng').val())
gdir.load("from: "+point+" to: "+toAddress,{"locale":locale});}
function initializeGmap(){if(GBrowserIsCompatible()){map=new GMap2(document.getElementById("map_canvas"),{size:new GSize(600,400)});map.addControl(new GLargeMapControl());map.addControl(new GMapTypeControl());map.addControl(new GScaleControl(200));var point=new GLatLng(parseFloat($('#lat').val()),parseFloat($('#lng').val()));map.setCenter(point,14);var marker=createMarker(point);map.addOverlay(marker);geo=new GClientGeocoder();gdir=new GDirections(map,document.getElementById("directions"));GEvent.addListener(gdir,"load",onGDirectionsLoad);GEvent.addListener(gdir,"error",handleErrors);}
else{alert("Sorry, the Google Maps API is not compatible with this browser");}}
function locateDirections(){var search=$('#fromAddress').val();var msg;geo.getLocations(search,function(result)
{if(result.Status.code==G_GEO_SUCCESS)
{if(result.Placemark.length>1){msg="<span class='bold'>Did you mean: </span>";for(var i=0;i<result.Placemark.length;i++){var p=result.Placemark[i].Point.coordinates;msg+="<br>"+(i+1)+": <a href='javascript:place("+p[1]+","+p[0]+")'>"+result.Placemark[i].address+"<\/a>";}}
else{msg="";if(different(search,result.Placemark[0].address))
{msg="<span class='bold'>Did you mean: </span>";var p=result.Placemark[0].Point.coordinates;msg+="<br><a href='javascript:place("+p[1]+","+p[0]+")'>"+result.Placemark[0].address+"<\/a>";}
else
{var p=result.Placemark[0].Point.coordinates;place(p[1],p[0]);msg="<span class='bold'>Address: </span>"+result.Placemark[0].address+"<br>";}}
$('#printDirectButton').hide("slow");$('#directions').html(msg);}
else{var reason="Code "+result.Status.code;if(reasons[result.Status.code]){reason=reasons[result.Status.code]}
alert('Could not find "'+search+'" '+reason);}});}
function different(a,b){var c=b.split(",");b=c[0];a=a.toLowerCase();b=b.toLowerCase();a=a.replace(/'/g,"");b=b.replace(/'/g,"");a=a.replace(/\W/g," ");b=b.replace(/\W/g," ");a=a.replace(/\s+/g," ");b=b.replace(/\s+/g," ");awords=a.split(" ");bwords=b.split(" ");var reply=false;for(var i=0;i<bwords.length;i++){if(awords[i]!=bwords[i]){reply=true}}
return(reply);}
function handleErrors(){var msg;if(gdir.getStatus().code==G_GEO_UNKNOWN_ADDRESS){msg=results[gdir.getStatus().code];}
else if(gdir.getStatus().code==G_GEO_SERVER_ERROR){msg=results[gdir.getStatus().code];}
else if(gdir.getStatus().code==G_GEO_BAD_REQUEST){msg=results[gdir.getStatus().code];}
else{msg='We could not calculate directions from `'+$('#fromAddress').val()+'`.';}
if(msg){$('#printDirectButton').hide("slow");}}
function onGDirectionsLoad(){showPrint('printDirectButton');}
function gMapModal()
{var param="";$.ajax({type:"POST",url:"index.php?mod=gmap_ajax",data:param,success:function(data){$.blockUI({message:data,css:{top:($(window).height()-600)/2+"px",left:($(window).width()-935)/2+"px",width:'935px',backgroundColor:"#fff","-webkit-border-radius":"10px","-moz-border-radius":"10px"},overlayCSS:{backgroundColor:'#000'}});$('.blockUI').click(function(e){var $t=$(e.target);if($t.is('.blockUI')&&!$t.is('.blockMsg'))
$.unblockUI();}).attr('title','');return;},dataType:"html"});}
function closeGmap(){$.unblockUI({});}