
var map=null;var geocoder=null;var directions=null;WLC.targetStreet="";WLC.targetCity="";WLC.targetCountry="";WLC.targetAddress="";WLC.convertAddress="zip";WLC.hasRouteForm=true;WLC.hasTabMap=false;WLC.userChangedAddress="";WLC.markerText="";WLC.markerContactPart="";WLC.markerSpecificPart="";WLC.markerTitlePart="";WLC.markerContact="";WLC.markerEmail="";WLC.markerTel="";WLC.markerMobile="";function initGoogleMap(){WLC.createAdDetailMap();WLC.convertTargetAddressToPin(WLC.targetAddress);}
WLC.createAdDetailMap=function(){if(GBrowserIsCompatible()){map=new GMap2(document.getElementById("generic_lageplan"));map.addControl(new GLargeMapControl());map.addControl(new GMapTypeControl());map.addControl(new GScaleControl());map.enableDoubleClickZoom();directions=new GDirections(map,document.getElementById("routeDescription"));GEvent.addListener(directions,"error",handleErrors);geocoder=new GClientGeocoder();if(typeof proxyGeocoder!='undefined')
{geocoder.getLatLng=proxyGeocoder.getLatLng;}}}
WLC.convertTargetAddressToPin=function(address){if(geocoder){geocoder.getLatLng(address,showPointOnMap);}}
function getRoute(fromStreet,fromCity,toStreet,toCity,locale){if(WLC.convertAddress=='notFound'){getRouteWithUserDefindedTarget(fromStreet,fromCity,locale);}else{getRouteWithAdTarget(fromStreet,fromCity,toStreet,toCity,locale);}}
function getRouteWithAdTarget(fromStreet,fromCity,toStreet,toCity,locale){map.clearOverlays();var fromAddress=fromStreet+", "+fromCity;var toAddress="";if(!toStreet){toAddress=toCity;}else{toAddress=toStreet+", "+toCity;}
directions.load("from: "+fromAddress+" to: "+toAddress,{"locale":locale});}
function getRouteWithUserDefindedTarget(fromStreet,fromCity,locale){map.clearOverlays();var fromAddress=fromStreet+", "+fromCity;directions.load("from: "+fromAddress+" to: "+WLC.userChangedAddress,{"locale":locale});}
function setRouteTarget(targetStreet,targetCity){jQuery("#toStreet").val(targetStreet);jQuery("#toCity").val(targetCity);}
WLC.delayMap=function(time){setTimeout("WLC.loadDetailMap()",time);}
WLC.setAddressAdDetail=function(street,nr,zip,city,country){if(typeof street!='undefined'&&street!=""){WLC.targetStreet=street;if(typeof nr!='undefined'&&nr!=""){WLC.targetStreet+=" "+nr;}}
WLC.targetAddress=WLC.targetStreet;if(typeof zip!='undefined'&&zip!=""){WLC.targetCity=zip;}
if(typeof city!='undefined'&&city!=""){WLC.targetCity+=" "+city;}
if(WLC.targetAddress!="")
{WLC.targetAddress+=", ";}
WLC.targetAddress+=WLC.targetCity;if(typeof country!='undefined'&&country!=""){WLC.targetCountry=country;}
if(WLC.targetAddress!="")
{WLC.targetAddress+=", ";}
WLC.targetAddress+=WLC.targetCountry;}
function createContactPartInfoWindow(company,fullname,email,telG,telP,mobile){WLC.markerContact="";if(company!=null&&company!=""){WLC.markerContact="<p><strong>"+WLC.returnLabel('ad.contact')+": </strong>"+company+"</p>";}
if(fullname!=null&&fullname.length>4){if(company!=null&&company!=""){WLC.markerContact="<p><strong>"+WLC.returnLabel('ad.contact')+": </strong>"+company+",<br/>"+fullname+"</p>";}else{WLC.markerContact="<p><strong>"+WLC.returnLabel('ad.contact')+": </strong>"+fullname+"</p>";}}
if(email!=null&&email!=""){WLC.markerEmail="<p><strong>"+WLC.returnLabel('map.google.eMail')+": </strong> <a href='MAILTO:"+email+"'>"+email+"</a></p>";}
if(telG!=null&&telG!=""){WLC.markerTel="<p><strong>"+WLC.returnLabel('map.google.telg')+": </strong>"+telG+"</p>";}else{if(telP!=null&&telP!=""){WLC.markerTel="<p><strong>"+WLC.returnLabel('map.google.telp')+": </strong>"+telP+"</p>";}else{if(mobile!=null&&mobile!=""){WLC.markerTel="<p><strong>"+WLC.returnLabel('map.google.mobile')+": </strong>"+mobile+"</p>";}}}
WLC.markerContactPart=WLC.markerContact+WLC.markerEmail+WLC.markerTel;}
function showPointOnMap(point){if(!point){jQuery("#e_d_map_busy").hide();if(WLC.convertAddress=='notFound'){WLC.convertAddress='userDefined';alert(WLC.returnLabel('contact.map.addressUnknown'));}
if(WLC.convertAddress=='userDefined'){WLC.convertAddress='notFound';WLC.userChangedAddress=tryToCorrectAddress();if(WLC.userChangedAddress==null||WLC.userChangedAddress=='exit'){WLC.convertAddress='exit';if(WLC.hasTabMap==false){map.setCenter(new GLatLng(46.816996,8.222480),7);jQuery("#e_d_map_canvas").show();jQuery("#e_d_map_busy").hide();jQuery("#e_d_corradr_busy").hide();return true;}}
if(WLC.hasTabMap==false){var parts=WLC.userChangedAddress.split(", ");if(parts.length==2){WLC.targetStreet=parts[0];WLC.targetCity=parts[1];}
WLC.convertTargetAddressToPin(WLC.userChangedAddress);}}
if(WLC.convertAddress=='zip'){WLC.convertAddress='userDefined';WLC.targetStreet="";WLC.convertTargetAddressToPin(WLC.targetCity);}}else{if(WLC.hasTabMap==true){jQuery("#e_d_corradr").hide();jQuery("#e_d_map_canvas").show();WLC.convertAddress='zip';map.checkResize();}
map.setCenter(point,13);var pin=new GIcon();pin.image=WLC.basePath+"/images/googleMaps/ico_pin_home.png";pin.shadow=WLC.basePath+"/images/googleMaps/sh.png";pin.iconSize=new GSize(21,45);pin.shadowSize=new GSize(43,46);pin.iconAnchor=new GPoint(16,34);pin.infoWindowAnchor=new GPoint(15,4);var marker=new GMarker(point,pin);GEvent.addListener(marker,"click",function(){marker.openInfoWindowHtml(WLC.markerText);});map.addOverlay(marker);if(WLC.isPOISupported()){WLC.reloadPoiMarkers();}
if(WLC.hasRouteForm==true){setRouteTarget(WLC.targetStreet,WLC.targetCity);}
if(WLC.hasTabMap==false){jQuery("#e_d_map_canvas").show();}
jQuery("#e_d_map_busy").hide();jQuery("#e_d_corradr_busy").hide();}}
function handleErrors(){var unknownAddress=WLC.returnLabel('contact.map.addressUnknown');var serverError=WLC.returnLabel('contact.map.geoServerError');var directionError=WLC.returnLabel('contact.map.directionsError');var domainKey=WLC.returnLabel('map.google.domainKey');var unknownError=WLC.returnLabel('map.google.unknownError');if(directions.getStatus().code==G_GEO_UNKNOWN_ADDRESS)
alert(unknownAddress);else if(directions.getStatus().code==G_GEO_SERVER_ERROR)
alert(serverError);else if(directions.getStatus().code==G_GEO_BAD_REQUEST)
alert(directionError);else if(directions.getStatus().code==G_GEO_BAD_KEY)
alert(domainKey);else alert(unknownError);}