var sHtmlBubbleTemplate="<p><strong>#SITE_TITLE#</strong><br />#SITE_ADDRESS#</p>";var xicon=new GIcon(G_DEFAULT_ICON);var bounds=new GLatLngBounds();var map=null;var geocoder=null;var marker=[];var minimarker=[];var States=[];var StatesTmp=[];var countryCoord=null;var S=null;var W=null;var N=null;var E=null;var countriesXml="/img/GoogleMapIcons/countries.xml";var eIcon=new GIcon();eIcon.image='/img/GoogleMapIcons/environment-sign/image.png';eIcon.shadow='/img/GoogleMapIcons/environment-sign/shadow.png';eIcon.iconSize=new GSize(15,20);eIcon.shadowSize=new GSize(25,20);eIcon.iconAnchor=new GPoint(8,20);eIcon.infoWindowAnchor=new GPoint(8,0);eIcon.printImage='/img/GoogleMapIcons/environment-sign/printImage.gif';eIcon.mozPrintImage='/img/GoogleMapIcons/environment-sign/mozPrintImage.gif';eIcon.printShadow='/img/GoogleMapIcons/environment-sign/printShadow.gif';eIcon.transparent='/img/GoogleMapIcons/environment-sign/transparent.png';eIcon.imageMap=[8,0,9,1,9,2,9,3,10,4,10,5,11,6,11,7,12,8,12,9,13,10,13,11,14,12,14,13,14,14,14,15,14,16,8,17,8,18,8,19,6,19,6,18,6,17,0,16,0,15,0,14,0,13,0,12,1,11,1,10,2,9,2,8,3,7,3,6,4,5,4,4,5,3,5,2,5,1,6,0];var fIcon=new GIcon();fIcon.image='/img/GoogleMapIcons/food-sign/image.png';fIcon.shadow='/img/GoogleMapIcons/food-sign/shadow.png';fIcon.iconSize=new GSize(15,20);fIcon.shadowSize=new GSize(25,20);fIcon.iconAnchor=new GPoint(8,20);fIcon.infoWindowAnchor=new GPoint(8,0);fIcon.printImage='/img/GoogleMapIcons/food-sign/printImage.gif';fIcon.mozPrintImage='/img/GoogleMapIcons/food-sign/mozPrintImage.gif';fIcon.printShadow='/img/GoogleMapIcons/food-sign/printShadow.gif';fIcon.transparent='/img/GoogleMapIcons/food-sign/transparent.png';fIcon.imageMap=[8,0,9,1,10,2,11,3,11,4,11,5,11,6,11,7,11,8,11,9,11,10,10,11,8,12,7,13,6,14,6,15,6,16,6,17,5,17,5,16,5,15,5,14,4,13,3,12,2,11,1,10,0,9,0,8,0,7,0,6,0,5,0,4,0,3,1,2,2,1,4,0];var pIcon=new GIcon();pIcon.image='/img/GoogleMapIcons/pharma-sign/image.png';pIcon.shadow='/img/GoogleMapIcons/pharma-sign/shadow.png';pIcon.iconSize=new GSize(15,20);pIcon.shadowSize=new GSize(25,20);pIcon.iconAnchor=new GPoint(8,20);pIcon.infoWindowAnchor=new GPoint(8,0);pIcon.printImage='/img/GoogleMapIcons/pharma-sign/printImage.gif';pIcon.mozPrintImage='/img/GoogleMapIcons/pharma-sign/mozPrintImage.gif';pIcon.printShadow='/img/GoogleMapIcons/pharma-sign/printShadow.gif';pIcon.transparent='/img/GoogleMapIcons/pharma-sign/transparent.png';pIcon.imageMap=[11,0,11,1,11,2,11,3,11,4,11,5,11,6,11,7,11,8,11,9,11,10,7,11,7,12,6,13,6,14,6,15,6,16,5,16,5,15,5,14,5,13,4,12,4,11,0,10,0,9,0,8,0,7,0,6,0,5,0,4,0,3,0,2,0,1,0,0];var sIcon=new GIcon();sIcon.image='/img/GoogleMapIcons/sales-sign/image.png';sIcon.shadow='/img/GoogleMapIcons/sales-sign/shadow.png';sIcon.iconSize=new GSize(15,20);sIcon.shadowSize=new GSize(25,20);sIcon.iconAnchor=new GPoint(8,20);sIcon.infoWindowAnchor=new GPoint(8,0);sIcon.printImage='/img/GoogleMapIcons/sales-sign/printImage.gif';sIcon.mozPrintImage='/img/GoogleMapIcons/sales-sign/mozPrintImage.gif';sIcon.printShadow='/img/GoogleMapIcons/sales-sign/printShadow.gif';sIcon.transparent='/img/GoogleMapIcons/sales-sign/transparent.png';sIcon.imageMap=[7,0,8,1,8,2,9,3,10,4,11,5,11,6,11,7,11,8,10,9,9,10,8,11,7,12,6,13,6,14,6,15,6,16,5,16,5,15,5,14,5,13,4,12,3,11,2,10,1,9,0,8,0,7,0,6,0,5,0,4,1,3,2,2,3,1,4,0];function LoadMap(page,division,country,source,mapid){try{var request=GXmlHttp.create();var xmlDoc;var page=page+"?division="+division+"&source="+source;if(country!=""){LoadCountries(country);}
request.open("GET",page,true);request.onreadystatechange=function(){try{if(request.readyState==4){States=GetStates(request.responseXML);if(States.length>0){var point=new GPoint(-8.56,39.6);var mapControl=new GHierarchicalMapTypeControl();map=new GMap(document.getElementById(mapid));RenderMarkers(States);map.addControl(new GSmallMapControl());map.centerAndZoom(point,4);var center=bounds.getCenter();map.setZoom(map.getBoundsZoomLevel(bounds));map.setCenter(center);map.panDirection(0,0.1);if(S!=null&&W!=null&&N!=null&&E!=null){var boundsA=new GLatLngBounds(new GLatLng(S,W),new GLatLng(N,E));var zoom=map.getBoundsZoomLevel(boundsA);map.setCenter(boundsA.getCenter(),zoom);}
else{var zoom=map.getBoundsZoomLevel(bounds);map.setCenter(bounds.getCenter(),zoom);if(map.getCenter().x>139&&map.getCenter().x<140){map.setCenter(new GLatLng(30,17),1);}}}
else{document.getElementById(mapid).style.display="none";}}}
catch(err){document.getElementById(mapid).style.display="none";}}
request.send(null);}
catch(err){document.getElementById(mapid).style.display="none";}}
function CreateInfoWindow(marker,point){GEvent.addListener(marker,"click",function(){marker.openInfoWindowTabsHtml(RenderInfoWindow(point));});}
function CountryCoord(name,coord){var p=coord.split(",");this.name=name;this.w=p[0];this.s=p[1];this.e=p[2];this.n=p[3];}
function GetStates(xmlDoc){var States=[];var itemName="state";var pn=xmlDoc.getElementsByTagName(itemName);for(var i=0;i<pn.length;i++){if(pn[i].getAttribute("id")=="point")
{var name="",hover="",lat="",lng="",size="",src="",target="",url="",address="";for(var j=0;j<pn[i].childNodes.length;j++){switch(pn[i].childNodes[j].tagName){case"name":name=pn[i].childNodes[j].childNodes[0].nodeValue;break;case"loc":lng=SplitLoc("lng",pn[i].childNodes[j].childNodes[0].nodeValue);lat=SplitLoc("lat",pn[i].childNodes[j].childNodes[0].nodeValue);break;case"url":url=pn[i].childNodes[j].childNodes[0].nodeValue;break;case"address":address=pn[i].childNodes[j].childNodes[0].nodeValue;break;case"src":src=pn[i].childNodes[j].childNodes[0].nodeValue;break;}}
States[States.length]=new State(name,hover,lat,lng,"",src,"",url,address);}}
return States;}
function initFrom(){$('.routeplanner .fromhere').addClass('nolink');$('.routeplanner .tohere').removeClass('nolink');$('.routeplanner .fromdiv').hide();$('.routeplanner .todiv').show();return false;}
function initTo(){$('.routeplanner .tohere').addClass('nolink');$('.routeplanner .fromhere').removeClass('nolink');$('.routeplanner .todiv').hide();$('.routeplanner .fromdiv').show();return false;}
function inArray(array,value,caseSensitive){var i;for(i=0;i<array.length;i++){if(caseSensitive){if(array[i].toLowerCase()==value.toLowerCase()){return true;}}
else{if(array[i]==value){return true;}}}
return false;}
function LoadCountries(country){var request=GXmlHttp.create();request.open("GET",countriesXml,true);request.onreadystatechange=function(){if(request.readyState==4){var pn1=request.responseXML.getElementsByTagName("option");for(var i=0;i<pn1.length;i++){if(pn1[i].childNodes[0].nodeValue.toLowerCase()==country.toLowerCase()){countryCoord=new CountryCoord(pn1[i].childNodes[0].nodeValue,pn1[i].getAttribute("value"));}}
if(countryCoord!=null){S=countryCoord.s
W=countryCoord.w;N=countryCoord.n
E=countryCoord.e;}}}
request.send(null);}
function RenderInfoWindow(p){var infoTabs=[];var sHtmlBubble=sHtmlBubbleTemplate;sHtmlBubble=sHtmlBubble.replace(/#SITE_TITLE#/g,p.name);sHtmlBubble=sHtmlBubble.replace(/#SITE_ADDRESS#/g,p.address);sHtmlBubble=sHtmlBubble.replace(/#LATITUDE#/g,p.lat);sHtmlBubble=sHtmlBubble.replace(/#LONGITUDE#/g,p.lng);if(sHtmlBubble!=""){infoTabs[infoTabs.length]=new GInfoWindowTab("Address",sHtmlBubble);}
return infoTabs;}
function RenderMarkers(array){for(var i=0;i<array.length;i++){if(array[i].lng!=null&&array[i].lat!=null){var point=new GPoint(array[i].lng,array[i].lat);switch(array[i].src){case"/flash/food.swf":xicon=fIcon;break;case"/flash/sales.swf":xicon=sIcon;break;case"/flash/pharma.swf":xicon=pIcon;break;case"/flash/environment.swf":xicon=eIcon;break;}
minimarker[i]=new GMarker(point,xicon);marker[i]=new GMarker(point,{title:array[i].name,icon:xicon});map.addOverlay(marker[i]);CreateInfoWindow(marker[i],array[i]);bounds.extend(marker[i].getPoint());}}}
function State(name,hover,lat,lng,size,src,target,url,address){this.name=name;this.hover=hover;this.lat=lat;this.lng=lng;this.size=size;this.src=src;this.target=target;this.url=url;this.address=address;}
function SplitLoc(type,loc){var p=loc.split(",");if(type=="lat"){return p[0];}
else if(type=="lng"){return p[1];}
else{return null;}}