var mapObj;var geocoder;var zoomNivel=[];zoomNivel[0]=2;zoomNivel[1]=4;zoomNivel[2]=6;zoomNivel[3]=10;zoomNivel[4]=10;zoomNivel[5]=14;zoomNivel[6]=16;zoomNivel[7]=16;zoomNivel[8]=16;var frmMap;var empresa;function initMap(a){document.getElementById("map").style.display="";if(GBrowserIsCompatible()){mapObj=new GMap2(document.getElementById("map"));mapObj.addControl(new GSmallMapControl());mapObj.addControl(new GMapTypeControl());gdir=new GDirections(mapObj,document.getElementById("directions"));GEvent.addListener(gdir,"load",onGDirectionsLoad);geocoder=new GClientGeocoder();GEvent.addListener(gdir,"error",handleErrors)}if((a==undefined)||(a=="")){mapObj.setCenter(new GLatLng(0,0),1)}else{showAddressOnMap(a)}}function onGDirectionsLoad(){}function handleErrors(){if(gdir.getStatus().code==G_GEO_UNKNOWN_ADDRESS){alert("Endereço inválido. Por favor, verique a ortografia e tente novamente.")}else{if(gdir.getStatus().code==G_GEO_SERVER_ERROR){alert("Não foi possível realizar a consulta, por favor, tente novamente mais tarde.")}else{if(gdir.getStatus().code==G_GEO_MISSING_QUERY){alert("Não foi possível realizar a consulta, por favor, tente novamente mais tarde.")}else{if(gdir.getStatus().code==G_GEO_BAD_KEY){alert("A chave para este domínio é inválida.")}else{if(gdir.getStatus().code==G_GEO_BAD_REQUEST){alert("Não foi possível realizar a consulta para este endereço.")}else{alert("Não foi possível realizar a consulta, por favor, tente novamente mais tarde.")}}}}}}function consultLocations(b){frmMap=b;var a=document.forms[frmMap].txtAdress.value;initMap();geocoder.getLocations(a,multiplesAdress)}function multiplesAdress(a){var f=document.getElementById("adressList");f.style.display="none";mapObj.clearOverlays();if(!a||a.Status.code!=G_GEO_SUCCESS){alert("Não foi possível localizar o endereço solicitado")}else{var c=a.Placemark.length;if(c>1){f.style.display="";listLocations(f,a.Placemark)}else{var b=a.Placemark[0];var e=b.Point.coordinates;var d=a.Placemark[0].AddressDetails.Accuracy;mapToCenter(e[1],e[0],a.Placemark[0].address,d)}}}function listLocations(f,b){f.innerHTML="A pesquisa encontrou os resultados abaixo, escolha a localidade mais adequada à sua consulta:<br /><br />";for(var a=0;a<b.length;++a){var g=b[a].AddressDetails.Country.AdministrativeArea.AdministrativeAreaName;var c=b[a].AddressDetails.Accuracy;var e=b[a].Point.coordinates;var d=b[a].address;f.innerHTML+="&bull; <a href='javascript:mapToCenter("+e[1]+","+e[0]+',"'+d+'", '+c+");' onclick='document.forms[\""+frmMap+'"].txtAdress.value="'+b[a].address+"\";'>"+b[a].address+"</a><br />"}}function mapToCenter(a,f,e,c){var d=new GLatLng(a,f);var b=zoomNivel[c];mapObj.setCenter(d,b);marker=new GMarker(d);mapObj.addOverlay(marker)}function showAddressOnMap(a){if(geocoder){geocoder.getLatLng(a,function(b){if(!b){alert("Não foi possível carregar o mapa do Google.")}else{mapObj.setCenter(b,16);var c=new GMarker(b);mapObj.addOverlay(c);c.openInfoWindowHtml(empresa)}})}}function setDirections(a,b){mapObj.clearOverlays();$("#directions").css({"background-color":"white","font-weight":"bolder"});document.getElementById("directions").innerHTML="";gdir.load("from: "+a+" to: "+b)};
