var doUpdatePOIs=false;
var startPoint=null;
var customStartPoint=false;
var endPoint=null;
var customEndPoint=false;
var viaPoints=null;
var resultsPanelOpened=true;
var showablePOIs=new Array();
var poiSearchActive=false;
var isRouteSearchActive=false;
var isRouteInitialized=false;
var startPointCandidates=null;
var endPointCandidates=null;
var expandStartPoint=false;
var viaPointCandidates=null;
var routeImage=null;
var initMapPois=false;
var openPoiAfterSearch=false;
var routeFormOpened=false;
var startpointobject=null;
var endpointobject=null;
var viapointsobjects=null;
var streetviewTooltip=new Element("div",{styles:{width:"200px",height:"75px",position:"absolute",display:"none","background-color":"white",border:"1px solid black","z-index":"999999",opacity:0.8,padding:"5px 10px"}}).adopt([new Element("strong").set("html","tooltip_otsikko".localize()),new Element("p",{styles:{"text-align":"left"}}).set("text","tooltip_sisalto".localize())]);
function init(){$("mapdiv").setStyle("width","645px");
$("mapdiv").setStyle("margin-left","330px");
if(Browser.Engine.trident){$("MapArea").setStyle("width","630px")
}else{$("MapArea").setStyle("width","635px")
}var b=Maps.options;
b.singleZoom=4;
b.emptyZoom=11;
if(customEndPoint&&endPoint!=null&&!customStartPoint){b.singleZoom=8;
b.defaultLat=endPoint.wgs84lat>0?endPoint.wgs84lat:65.5;
b.defaultLng=endPoint.wgs84lon>0?endPoint.wgs84lon:27.5
}else{if(customStartPoint&&startPoint!=null&&!customEndPoint){b.singleZoom=8;
b.defaultLat=startPoint.wgs84lat>0?startPoint.wgs84lat:65.5;
b.defaultLng=startPoint.wgs84lon>0?startPoint.wgs84lon:27.5
}else{b.emptyZoom=11;
b.defaultLat=65.5;
b.defaultLng=27.5
}}b.enableOverview=!Browser.Engine.trident;
b.smallControls=false;
b.tileSwitcher=true;
Maps.createInteractiveMap("MapArea",b);
Maps.addEventListener("recenter",updatePOIs);
Maps.addEventListener("zoom",updatePOIs);
addMapControlLinks();
initMapControls();
$("toggleResultsPanelImgContainer").addEvent("click",closeResultsPanel);
$("toggleResultsPanelImgContainer").setStyle("background-image","url(/karttahaku/static/images/map_collapse_side.gif)");
initPage();
if(initMapPois){var d=Maps.getMapObject();
var c=d.getLLPoint();
var a=d.getURPoint();
MapRemote.getPois(c.lat,c.lng,a.lat,a.lng,Maps.getZoomLevel(),addPOIsToMap)
}document.body.appendChild(streetviewTooltip)
}function addMapControlLinks(){$$("ul.mapTilesLinks")[0].setAttribute("id","mapTileSwitcher");
var c=$("mapTileSwitcher").getChildren("li");
var a="nayta_kartalla".localize()+'&nbsp;&nbsp;<img class="showOnMapImg" src="/karttahaku/static/images/icons/arrow_white_down.gif"/>';
var e=new Element("div",{"class":"showOnmap",id:"showOnMap"}).adopt([new Element("a",{href:"#",id:"showOnMapLink",styles:{"text-decoration":"none",cursor:"pointer"},events:{click:function(){try{openMapOptions()
}catch(h){}}}}).adopt([new Element("span",{"class":"leftTab"}),new Element("span",{"class":"tabBody"}).set("html",a),new Element("span",{"class":"rightTab"})])]);
var b=new Array();
for(i=0;
i<c.length;
i++){var d=$(c[i]).getFirst("a");
var f=$(d).innerHTML;
$(d).innerHTML="";
$(d).appendChild(new Element("span",{"class":"leftTab"}));
$(d).appendChild(new Element("span",{"class":"tabBody"}).set("html",f));
$(d).appendChild(new Element("span",{"class":"rightTab"}));
if(Browser.Engine.trident){$(d).setStyle("cursor","pointer");
$(d).setStyle("text-decoration","none")
}b.push(d)
}var g=new Element("div",{id:"mapControlCont"}).adopt([new Element("div",{"class":"mapControlContainer"}).adopt([new Element("div",{"class":"mapControlContainerInner"}).adopt([e,new Element("div",{"class":"showMap"}).adopt([$(b[0]),$(b[1]),$(b[2]),$(b[3])])]),new Element("div",{"class":"rightTab"})])]);
$("mapTileSwitcher").destroy();
$$("div.decLayer")[0].appendChild(g)
}function initMapControls(){var c=(navigator.appVersion.indexOf("MSIE 7.")==-1)?false:true;
$("yui-gen0").setStyles({position:"absolute",left:"25px",top:"121px",width:"32px",height:"	150px","z-index":"100"});
var b=$("yui-gen0").getFirst("img");
$(b).setStyles({width:"32px",height:"220px"});
$("yui-gen1").setProperty("width","19");
$("yui-gen1").setProperty("height","19");
$("yui-gen1").setStyle("left","7px");
var a=$$("div.decLayer")[0].getChildren("img");
$(a[0]).setStyles({position:"absolute",left:"25px",top:"96px",width:"32px",height:"25px","z-index":"100"});
$(a[0]).setProperty("title","lahenna".localize());
$(a[1]).setStyles({position:"absolute",left:"25px",top:"341px",width:"32px",height:"32px","z-index":"100"});
$(a[1]).setProperty("title","loitonna".localize());
$(a[2]).setStyles({position:"absolute",left:"33px",top:"10px",width:"15px",height:"22px","z-index":"100"});
$(a[2]).setProperty("title","pan_north".localize());
$(a[3]).setStyles({position:"absolute",left:"48px",top:"10px",width:"24px",height:"22px","z-index":"100",cursor:"pointer"});
$(a[4]).setStyles({position:"absolute",left:"10px",top:"10px",width:"23px",height:"22px","z-index":"100"});
$(a[5]).setStyles({position:"absolute",left:"34px",top:"47px",width:"15px",height:"25px","z-index":"100"});
$(a[5]).setProperty("title","pan_south".localize());
$(a[6]).setStyles({position:"absolute",left:"49px",top:"47px",width:"23px",height:"25px","z-index":"100"});
$(a[7]).setStyles({position:"absolute",left:"10px",top:"47px",width:"24px",height:"25px","z-index":"100"});
$(a[8]).setStyles({position:"absolute",left:"49px",top:"32px",width:"23px",height:"15px","z-index":"100"});
$(a[8]).setProperty("title","pan_east".localize());
$(a[9]).setStyles({position:"absolute",left:"10px",top:"32px",width:"24px",height:"15px","z-index":"100"});
$(a[9]).setProperty("title","pan_west".localize());
$(a[10]).setStyles({position:"absolute",left:"34px",top:"32px",width:"15px",height:"15px","z-index":"100"});
$(a[10]).setProperty("title","pan_best_fit".localize());
$(a[11]).setStyles({display:"none"})
}function updatePOIs(k,c){var d=59.54627,j=70.27774,l=18.28125,q=32.12402;
var a=c.getCenterPoint();
var p=false;
if(a.lat<d||a.lat>j||a.lng<l||a.lng>q){p=true
}$("trafficdis").disabled=p;
$("attractions").disabled=p;
$("weathercam").disabled=p;
$("roadweather").disabled=p;
$("traveltime").disabled=p;
$("alcoholstores").disabled=p;
$("trafficcensus").disabled=p;
$("streetviews").disabled=p;
$("virtualsc").disabled=p;
if(doUpdatePOIs&&!poiSearchActive&&startPointCandidates==null&&endPointCandidates==null&&viaPointCandidates==null){poiSearchActive=true;
if(showablePOIs.length>0){var b=Maps.getMapObject();
var h=b.getLLPoint();
var o=b.getURPoint();
MapRemote.getPois(h.lat,h.lng,o.lat,o.lng,Maps.getZoomLevel(),addPOIsToMap)
}else{poiSearchActive=false
}if(!isRouteInitialized&&startPoint!=null&&endPoint!=null&&viaPointCandidates==null&&startPointCandidates==null&&endPointCandidates==null){try{isRouteInitialized=true;
var g=c.getURPoint(),n=c.getLLPoint();
var f=[n.lng,n.lat,g.lng,g.lat];
MapRemote.getRouteImageUrl(null,null,f,Maps.getScaledZoomLevel(),updateRouteData)
}catch(k){}}}else{doUpdatePOIs=true
}}function updateRouteData(a){if(viaPoints!=null&&viapointdivscount==viaPoints.length){$("searchFormLink").setStyle("display","inline");
$("searchFormSpan").setStyle("display","none")
}if(a!=null){try{routeArea=a.routeArea;
shapeData=a.shapeData;
routeImage=Maps.addRouteImage(shapeData,a.url,routeArea,a.visibleRouteArea);
MapRemote.getRouteData(updateRouteManeuvers)
}catch(b){}}else{}}function openMapOptions(b){trackActivateMapOptions();
try{var a=new Event(b);
a.stop()
}catch(c){}$("showOnMapLink").addClass("selected");
$("showOnMapLink").removeEvents("click");
$("showOnMapLink").addEvent("click",closeMapOptions);
$("mapOptions").style.visibility="visible";
$("mapOptions").setOpacity(1);
return false
}function closeMapOptions(b){try{var a=new Event(b);
a.stop()
}catch(c){}if($("showOnMapLink").hasClass("selected")){$("showOnMapLink").removeClass("selected")
}$("showOnMapLink").removeEvents("click");
$("showOnMapLink").addEvent("click",openMapOptions);
$("mapOptions").setOpacity(0);
$("mapOptions").setStyle("visibility","hidden");
return false
}function closeResultsPanel(a){try{a=new Event(a);
if(resultsPanelOpened){closeResultsPanelNoEvent();
a.stop()
}}catch(b){}return false
}function openResultsPanel(a){try{a=new Event(a);
if(!resultsPanelOpened){openResultsPanelNoEvent();
a.stop()
}}catch(b){}return false
}function openResultsPanelNoEvent(){if(!resultsPanelOpened){$("toggleResultsPanelImgContainer").removeEvents("click");
$("resultsPanel").style.display="block";
$("toggleResultsPanelImgContainer").addEvent("click",closeResultsPanel);
$("toggleResultsPanelImgContainer").setStyle("background-image","url('/karttahaku/static/images/map_collapse_side.gif')");
$("mapdiv").setStyle("width","645px");
$("mapdiv").setStyle("margin-left","330px");
if(Browser.Engine.trident){$("MapArea").setStyle("width","630px")
}else{$("MapArea").setStyle("width","635px")
}Maps.resizeLayers();
resultsPanelOpened=true
}}function closeResultsPanelNoEvent(){if(resultsPanelOpened){$("toggleResultsPanelImgContainer").removeEvents("click");
$("resultsPanel").style.display="none";
$("toggleResultsPanelImgContainer").addEvent("click",openResultsPanel);
$("toggleResultsPanelImgContainer").setStyle("background-image","url('/karttahaku/static/images/map_expand_side.gif')");
$("mapdiv").setStyle("width","960px");
$("mapdiv").setStyle("margin-left","0px");
if(Browser.Engine.trident){$("MapArea").setStyle("width","945px")
}else{$("MapArea").setStyle("width","950px")
}Maps.resizeLayers();
resultsPanelOpened=false
}}function startLoadingAnimation(){$("SearchSubmit").setOpacity("0.4");
$("SearchSubmit").disabled=true;
$("loadingIcon").style.display="block";
document.body.style.cursor="wait"
}function stopLoadingAnimation(){try{$("SearchSubmit").setOpacity("1");
$("SearchSubmit").disabled=false;
$("loadingIcon").style.display="none";
document.body.style.cursor="default"
}catch(a){}}function removeFromArray(a,d){if(a==null){return null
}var c=new Array();
for(var b=0;
b<a.length;
b++){if(a[b]!=d){c.push(a[b])
}}return c
}function togglePois(c){showablePOIs.push(c.value);
if($(c.id+"Pois")){$(c.id+"Pois").checked=c.checked
}if(c.id=="trafficdis"||c.id=="weathercam"||c.id=="roadweather"||c.id=="traveltime"||c.id=="trafficcensus"){var e=false;
if($("trafficdis").checked&&$("trafficdis").checked&&$("trafficdis").checked&&$("trafficdis").checked&&$("trafficdis").checked){e=true
}if(!e){$("trafficPois").checked=false
}else{$("trafficPois").checked=true
}}var d=Maps.getMapObject();
var b=d.getLLPoint();
var a=d.getURPoint();
MapRemote.showPois(c.value,b.lat,b.lng,a.lat,a.lng,c.checked,Maps.getZoomLevel(),function(f){addPOIsToMap(f,c.id)
})
}function hideMapOptionsBar(){try{$("mapOptionMenu").setStyle("display","none");
$("mapOptionsHolder").addClass("Short");
$("leftCorner").addClass("Short");
$("mapOptionMenuContainer").addClass("Short");
$("mapContainerHolder").className="mapContainerHolderShort"
}catch(a){}}function showMapOptionsBar(){try{$("panelContent").setStyle("display","block");
$("mapOptionMenu").setStyle("display","block");
$("mapOptionsHolder").removeClass("Short");
$("leftCorner").removeClass("Short");
$("mapOptionMenuContainer").removeClass("Short");
$("mapContainerHolder").className="mapContainerHolder"
}catch(a){}}function addPOIsToMap(j,o){try{closeErrorDiv();
Maps.removePointsFromMap(routeImage);
if(j!=null&&j.length>0){trackShowOnMapEvent(o,j);
showMapOptionsBar();
var l=new Array();
for(var k=0;
k<j.length;
k++){var c=j[k];
if(c==null||!$defined(c.wgs84lat)||!$defined(c.wgs84lon)){continue
}var h="";
var o="default";
var d="";
var r={click:function(){doUpdatePOIs=false
}};
var b=document.createElement("div");
var s=null;
if(c.type==1||c.type==2){if(!isRouteSearchActive&&!routeFormOpened){o="star"
}else{o=c.type==1?"0":viapointdivscount+1
}d=c.description;
b=getLocalityFlyoutContentElement(c.description,c)
}else{if(c.type==5){o=k;
d=c.description;
b=getLocalityFlyoutContentElement(c.description,c)
}else{if(c.type==3){if(c.company!=null&&c.company.tyyppi!=null){o=c.company.tyyppi
}else{o="company"
}d=c.title;
if(o=="company"){b=getCompanyFlyoutContent(c.company)
}else{b=getBusinessFlyoutContent(c.company);
var q=c.company.id;
r={mouseover:function(e){e=new Event(e);
e.stop();
var t="businessresult"+q;
if($(t)!=null){$(t).setStyle("background-color","#ebf5fb")
}},mouseout:function(e){e=new Event(e);
e.stop();
var t="businessresult"+q;
if($(t)!=null){$(t).setStyle("background-color","#ffffff")
}}}
}}else{if(c.type==24){o="weathercam";
d=c.title;
b.innerHTML="<strong>"+c.title+'</strong><br/><img height="228px" width="304px" src="'+c.imageUrl+'" /><br/><small>'+"tietolahde_destia".localize()+"</small>"
}else{if(c.type==4){o="default";
d=c.description;
b=null;
h=parseInt(c.id)+1
}else{if(c.type==32){o="streetView";
d=c.title;
s=c.url
}else{if(c.type==33){o="attraction";
d=c.title;
b=getAttractionFlyoutContent(c)
}else{if(c.type==42){o="virtualsc";
d=c.title;
s=c.url
}else{if(c.type==43){continue
}else{if(c.type>=10){switch(c.type){case 10:o="trafficdis";
break;
case 25:o="trafficcensus";
break;
case 26:o="traveltime";
break;
case 27:o="parking";
break;
case 29:o="roadweather";
break;
default:o="trafficdis"
}d=c.title;
b.innerHTML="<strong>"+c.title+"</strong><p>"+replaceAllNl2Br(c.description)+"</p><small>"+"tietolahde_destia".localize()+"</small>"
}}}}}}}}}}l.push({title:d,content:b,lat:c.wgs84lat,lon:c.wgs84lon,number:h,type:o,events:r,imageUrl:s})
}var a=Maps.addLocsWithFlyoutsToMap(l,false,false);
getPointObjects(a);
openPoiAfterSearch=false;
if(startPoint!=null&&endPoint!=null&&viaPointCandidates==null&&startPointCandidates==null&&endPointCandidates==null){try{var g=Maps.getMapObject().getURPoint(),p=Maps.getMapObject().getLLPoint();
var f=[p.lng,p.lat,g.lng,g.lat];
MapRemote.getRouteImageUrl(null,null,f,Maps.getScaledZoomLevel(),updateRouteData)
}catch(m){}}}poiSearchActive=false
}catch(n){}}function getPointObjects(d){if(d!=null&&d.length>0){startpointobject=null;
endpointobject=null;
viapointsobjects=new Array();
var b=true;
for(var a=0;
a<d.length;
a++){var c=Maps.getIconFromMap(d[a]);
if(c!=null&&(c.type==0||c.type=="star")){startpointobject=c
}else{if(c!=null&&c.type<=viapointdivscount+1){b=false;
if(c.type==viapointdivscount+1){endpointobject=c
}else{viapointsobjects.push(c)
}}}}if(openPoiAfterSearch&&startpointobject!=null&&b){startpointobject.showFlyout()
}}}function replacePseudoBold(b){var a=b.indexOf("|b|");
while(a>-1){b=b.replace("|b|",'<span class="strong">');
a=b.indexOf("|b|")
}a=b.indexOf("|/b|");
while(a>-1){b=b.replace("|/b|","</span>");
a=b.indexOf("|/b|")
}return b
}function showError(f,e,b){$("errorText").set("html","");
if(typeof f=="string"){$("errorText").set("text",f)
}else{var d=new Element("ul");
if(e){d.setStyles({"list-style":"none none","list-style-position":"outside",padding:0,margin:0})
}for(var c=0;
c<f.length;
c++){var a=null;
if(e&&c>0){a=new Element("li").set("html",f[c]);
a.setStyle("padding-top","10px");
if(f[c]=="error_specify_search".localize()){a.setStyle("font-weight","normal")
}d.adopt([a])
}else{a=new Element("li").set("html",f[c]);
d.adopt([a])
}}$("errorText").appendChild(d)
}$("errorDiv").setStyle("display","block");
if(b===undefined||b){$("panelContent").setStyle("display","none")
}}function closeErrorDiv(){$("errorText").set("html","");
$("errorDiv").setStyle("display","none");
$("panelContent").setStyle("display","block");
return false
}function getLocalityFlyoutContentElement(m,l){var b=Maps.getMapObject();
var f=b.getLLPoint();
var h=b.getURPoint();
var c="";
if($defined(l.localityName_fi)){c=l.localityName_fi
}else{if($defined(l.cityName_fi)){c=l.cityName_fi
}}var a=new Element("div").adopt([new Element("div",{"class":"vcard"}).adopt([new Element("span",{"class":"fn flyoutName"}).set("text","osoite".localize()),new Element("ul",{"class":"adr"}).adopt([new Element("li").adopt([new Element("span",{"class":"postal-code"}).set("text",m)])])]),new Element("ul",{"class":"linkList"}).adopt([new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/icon_directions.gif",alt:"hae_reitti".localize()}),new Element("a",{href:"#",events:{click:function(){window.location.href="/karttahaku/route.fon?endlat="+l.wgs84lat+"&endlon="+l.wgs84lon+"&endaddress="+($defined(l.street_address)?l.street_address:"")+"&endlocality="+c;
return false
}}}).set("text","hae_reitti".localize())])])]);
var d=59.54627,e=70.27774,g=18.28125,k=32.12402;
var j=false;
if(l.wgs84lat<d||l.wgs84lat>e||l.wgs84lon<g||l.wgs84lon>k){j=true
}if(!j){a.adopt([new Element("form",{"class":"fnForm",action:"/karttahaku/business.fon",method:"get",events:{submit:function(n){if(this.getElementById("nearbyValue").value!=null&&this.getElementById("nearbyValue").value.length>0&&this.getElementById("nearbyValue").value!="reitin_varrelta_esimerkki".localize()){this.submit()
}}}}).adopt([new Element("div",{"class":"inputHolder"}).adopt([new Element("input",{autocomplete:"off",type:"text","class":"fnWhat hint",id:"nearbyValue",name:"searchKey",value:"reitin_varrelta_esimerkki".localize(),events:{focus:function(n){n=new Event(n);
n.stopPropagation();
if(this.value=="reitin_varrelta_esimerkki".localize()){this.value=""
}},blur:function(n){n=new Event(n);
n.stopPropagation();
var o=this.value;
if(o.trim()==""){this.value="reitin_varrelta_esimerkki".localize()
}}}})]),new Element("input",{type:"hidden",name:"centerlat",value:l.wgs84lat}),new Element("input",{type:"hidden",name:"centerlon",value:l.wgs84lon}),new Element("input",{type:"hidden",name:"minlat",value:f.lat}),new Element("input",{type:"hidden",name:"minlng",value:f.lng}),new Element("input",{type:"hidden",name:"maxlat",value:h.lat}),new Element("input",{type:"hidden",name:"nloc",value:c}),new Element("input",{type:"hidden",name:"maxlng",value:h.lng}),new Element("input",{type:"button","class":"fnButton",style:"float:left;",src:"/"+"hae_lahelta_nappi".localize(),value:"hae_lahelta".localize(),events:{click:function(n){this.getParent().fireEvent("submit")
}}})])])
}return a
}function getCompanyFlyoutContent(a){var b=new Element("div",{"class":"flyout"});
if($defined(a.logo)&&a.logo!=""){b.adopt([new Element("div",{"class":"logoCont"}).adopt([new Element("img",{"class":"logo",src:"http://www.inoa.fi/kuvat/pic/pikku-logo/"+a.logo+".gif",alt:" "}),])])
}if($defined(a.name_fi)&&a.name_fi!=""){b.adopt([new Element("div",{"class":"vcard"}).adopt([new Element("strong",{"class":"fn flyoutName"}).set("text",a.name_fi),new Element("div",{"class":"adr"}).adopt([new Element("div",{"class":"street-address"}).set("text",a.address),new Element("span",{"class":"postal-code"}).set("text",a.zip),new Element("span",{"class":"locality"}).set("text",a.city_fi)]),new Element("span",{"class":"tel"}).adopt([new Element("img",{src:"/kartat/kuvat/icon_phone.gif",alt:" "}),new Element("span").set("text",a.phone)])])])
}if($defined(a.clickToEmail)&&a.clickToEmail!=""){b.adopt([new Element("ul",{"class":"linkList"}).adopt([new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/icon_website.gif",alt:" "}),new Element("a",{href:"javascript:void(0)"}).set("text","business_website".localize())]),new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/icon_email.gif",alt:" "}),new Element("a",{href:"mailto:"+a.clickToEmail}).set("text","business_email".localize())])])])
}b.adopt([new Element("ul",{"class":"linkList"}).adopt([new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/icon_directions.gif",alt:"hae_reitti".localize()}),new Element("a",{href:"#",events:{click:function(){window.location.href="/karttahaku/route.fon?endlat="+a.coordx+"&endlon="+a.coordy+"&endaddress="+a.address+"&endlocality="+a.city_fi;
return false
}}}).set("text","hae_reitti".localize())])])]);
return b
}function getAttractionFlyoutContent(c){var a="";
if($defined(c.localityName_fi)){a=c.localityName_fi
}else{if($defined(c.cityName_fi)){a=c.cityName_fi
}}var b=new Element("div",{"class":"flyout"});
b.adopt([new Element("div",{"class":"vcard"}).adopt([new Element("strong",{"class":"fn flyoutName"}).set("text",c.title)]),new Element("div",{"class":"vcard"}).adopt([new Element("p").set("text",c.description)])]);
b.adopt([new Element("ul",{"class":"linkList"}).adopt([new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/360photo.gif",alt:" "}),new Element("a",{href:"#",events:{click:function(d){try{d=new Event();
d.stop()
}catch(f){}window.open(c.imageUrl,"360Popup","scrollbars=0,resizable=0,height=500,width=600,status=0,toolbar=0,location=0");
return false
}}}).set("html","360_kuva".localize())]),new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/icon_directions.gif",alt:"hae_reitti".localize()}),new Element("a",{href:"#",events:{click:function(){window.location.href="/karttahaku/route.fon?endlat="+c.wgs84lat+"&endlon="+c.wgs84lon+"&endlocality="+c.title;
return false
}}}).set("text","hae_reitti".localize())])]),new Element("form",{action:"/karttahaku/business.fon",method:"get","class":"fnForm",events:{submit:function(d){if(this.getElementById("nearbyValue").value!=null&&this.getElementById("nearbyValue").value.length>0&&this.getElementById("nearbyValue").value!="reitin_varrelta_esimerkki".localize()){this.submit()
}}}}).adopt([new Element("input",{type:"hidden",name:"centerlat",value:c.wgs84lat}),new Element("input",{type:"hidden",name:"centerlon",value:c.wgs84lon}),new Element("input",{type:"hidden",name:"nloc",value:a}),new Element("div",{"class":"inputHolder"}).adopt([new Element("input",{type:"text",name:"searchKey",id:"nearbyValue","class":"fnWhat hint",value:"reitin_varrelta_esimerkki".localize(),events:{focus:function(d){d=new Event(d);
d.stopPropagation();
if(this.value=="reitin_varrelta_esimerkki".localize()){this.value=""
}},blur:function(d){d=new Event(d);
d.stopPropagation();
var e=this.value;
if(e.trim()==""){this.value="reitin_varrelta_esimerkki".localize()
}}}})]),new Element("input",{type:"button",id:"fnButton","class":"fnButton",style:"float:left;",value:"hae_lahelta".localize(),events:{click:function(d){this.getParent().fireEvent("submit")
}}})])]);
return b
}function encodeUrl(a){a=a.replace(/�/g,"%E4");
a=a.replace(/�/g,"%C4");
a=a.replace(/�/g,"%F6");
a=a.replace(/�/g,"%D6");
a=a.replace(/�/g,"%E5");
a=a.replace(/�/g,"%C5");
return a
}function closeSendToEmailPanel(c){try{var b=new Event(c);
b.stop()
}catch(a){}clearEmailFormFields();
$("sendToEmailButton").removeClass("selected");
$("sendToEmailButton").getFirst("a").removeEvents("click");
$("sendToEmailButton").getFirst("a").onclick=openSendToEmailPanel;
$("sendToEmail").fade(0);
return false
}function clearEmailFormFields(){$("mailTo").value="";
$("mailFrom").value="";
$("mailMsg").value="";
$("mailCopy").checked=false;
$("mailTo_error").innerHTML="";
$("mailFrom_error").innerHTML="";
$("mailMsg_error").innerHTML=""
}function openSendToEmailPanel(c){closeAllPanels(c);
try{var b=new Event(c);
b.stop()
}catch(a){}if(Browser.Engine.trident){}toggleFormElements("emailForm",false);
$("successEmail").setStyle("display","none");
formMaplink();
if(!$("sendToEmailButton").hasClass("selected")){$("sendToEmailButton").addClass("selected");
$("sendToEmailButton").getFirst("a").removeEvents("click");
$("sendToEmailButton").getFirst("a").onclick=closeSendToEmailPanel;
$("sendToEmail").setStyle("left","auto");
$("sendToEmail").setStyle("right","0");
$("sendToEmail").setStyle("opacity","0");
$("sendToEmail").style.visibility="visible";
$("sendToEmail").fade(0.9)
}return false
}function addToNavigator(){if(startPoint!=null&&endPoint==null){addToGPS(startPoint.wgs84lat,startPoint.wgs84lon,startPoint.cityName_fi,startPoint.street_address,"b2b")
}else{if(startPoint!=null&&endPoint!=null){addRouteToGPS(startPoint.wgs84lat,startPoint.wgs84lon,startPoint.street_address+" "+startPoint.cityName_fi,endPoint.wgs84lat,endPoint.wgs84lon,endPoint.street_address+" "+endPoint.cityName_fi)
}}return false
}function submitSMSForm(){var a=validateSMSMaplinkFields();
if(a){MapRemote.validateCaptchaInput($("captchaInput").value,sendMapLinkSMS)
}MapRemote.getSessionId(updateCaptchaImage);
return false
}function updateCaptchaImage(b){var c=new Date();
var a=c.getTime();
$("captchaImg").src="/karttahaku/captchaservice;jsessionid="+b+"?x="+a
}function sendMapLinkSMS(a){if(a){MapRemote.sendMaplinkSMS($("SMSTo").value,$("mapLinkSMS").value,$("rememberNumberSMS").checked);
$("successSMS").innerHTML="form_sms_valid".localize();
var c=$("SMSTo").value;
var b=$("rememberNumberSMS").checked;
setTimeout("closeSendToSMSPanel()",3000);
if(b){$("rememberNumberSMS").checked=true;
$("SMSTo").value=c
}else{$("rememberNumberSMS").checked=false;
$("SMSTo").value=""
}toggleFormElements("SMSForm",false);
if($("successSMS").hasClass("visibilityHidden")){$("successSMS").removeClass("visibilityHidden")
}}else{$("captchaInput_error").innerHTML="invalid_code".localize()
}}function submitEmailForm(){if(validateEmailMaplinkFields()){$("successEmail").setStyle("display","block");
MapRemote.sendLinkEmail($("mailTo").value,$("mailFrom").value,$("mailMsg").value,$("mailCopy").checked,0);
if(endPoint!=null){trackEventClick(this,"email directions","event13")
}else{trackEventClick(this,"send to email","event13")
}toggleFormElements("emailForm",true);
setTimeout(closeSendToEmailPanel,3000)
}return false
}function toggleFormElements(d,c){try{var b=document.getElementById(d).elements.length;
for(i=0;
i<b;
i++){var a=document.getElementById(d).elements[i];
a.disabled=c
}}catch(f){}}function validateSMSMaplinkFields(){$("SMSTo_error").innerHTML="";
$("captchaInput_error").innerHTML="";
var a=false;
if($("SMSTo").value==null||$("SMSTo").value.length==0){$("SMSTo_error").innerHTML="required_field".localize();
a=true
}if($("captchaInput").value==null||$("captchaInput").value.length==0){$("captchaInput_error").innerHTML="required_field".localize();
a=true
}if($("mapLinkSMS").value==null||$("mapLinkSMS").value.length==0){a=true
}return !a
}function validateEmailMaplinkFields(){$("mailTo_error").innerHTML="";
$("mailFrom_error").innerHTML="";
$("mailMsg_error").innerHTML="";
var c=/^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;
var b=false;
if(($("mailTo").value==null||$("mailTo").value.length==0)){$("mailTo_error").innerHTML="required_field".localize();
b=true
}else{var d=new Array();
d=$("mailTo").value.split(",");
for(var a=0;
a<d.length;
a++){if(!c.test(d[a])){$("mailTo_error").innerHTML="invalid_email".localize();
b=true
}}if(d!=null&&d.length>5){$("mailTo_error").innerHTML="too_many_recipients".localize();
b=true
}}if(($("mailFrom").value==null||$("mailFrom").value.length==0)){$("mailFrom_error").innerHTML="required_field".localize();
b=true
}else{if(!c.test($("mailFrom").value)){$("mailFrom_error").innerHTML="invalid_email".localize();
b=true
}}if(($("mailMsg").value.length==0)){$("mailMsg_error").innerHTML="required_field".localize();
b=true
}return !b
}function openSendToSMSPanel(c){closeAllPanels(c);
toggleFormElements("SMSForm",false);
if(!$("successSMS").hasClass("visibilityHidden")){$("successSMS").addClass("visibilityHidden")
}try{var b=new Event(c);
b.stop()
}catch(a){}formMaplink();
if(!$("sendToSMSButton").hasClass("selected")){$("sendToSMSButton").addClass("selected");
$("sendToSMSButton").getFirst("a").removeEvents("click");
$("sendToSMSButton").getFirst("a").onclick=closeSendToSMSPanel;
$("sendToSMS").style.visibility="visible";
$("sendToSMS").setStyle("opacity","0");
$("sendToSMS").fade(0.9)
}return false
}function closeSendToSMSPanel(c){try{var b=new Event(c);
b.stop()
}catch(a){}clearSMSFormFields();
$("sendToSMSButton").removeClass("selected");
$("sendToSMSButton").getFirst("a").removeEvents("click");
$("sendToSMSButton").getFirst("a").onclick=openSendToSMSPanel;
$("sendToSMS").fade(0);
return false
}function clearSMSFormFields(){$("captchaInput").value="";
$("captchaInput_error").innerHTML=""
}function formMaplink(){var c=window.location.href;
var n=c.split("//")[1];
var d=n.split("/")[0];
var g="http://"+d+"/karttahaku/";
if(!customEndPoint&&endPoint==null){g+="main.fon"
}else{g+="route.fon"
}var e="";
var m="";
var h="";
if(startPoint!=null){var a=Maps.getMapObject().getCenterPoint();
e="?z="+Maps.getZoomLevel()+"&startlat="+startPoint.wgs84lat+"&startlon="+startPoint.wgs84lon+"&startaddress="+escape(startPoint.street_address)+"&startlocality="+escape(startPoint.cityName_fi)+"&centerlat="+a.lat+"&centerlon="+a.lng
}if(endPoint!=null){h="&endlat="+endPoint.wgs84lat+"&endlon="+endPoint.wgs84lon+"&endaddress="+escape(endPoint.street_address)+"&endlocality="+escape(endPoint.cityName_fi)
}if(viaPoints!=null){m="&viapoints=";
for(var f=0;
f<viaPoints.length;
f++){var l=viaPoints[f];
if(f>0){m+=";"
}var k=new Array();
var j=l.street_address;
if(j!=null&&j.length>0){k=l.street_address.split(" ");
m+=k[0]!=null&&k[0].length>0?escape(k[0]):"%20";
m+=",";
m+=k[1]!=null&&k[1].length>0?escape(k[1]):"%20"
}else{m+="%20,%20"
}m+=","+escape(l.cityName_fi)+","+l.wgs84lat+","+l.wgs84lon
}}var b=g+e+m+h;
$("mailMsg").value=b;
$("linkEmail").value=b
}function openLinkPanel(c){closeAllPanels(c);
try{var b=new Event(c);
b.stop()
}catch(a){}if(startPoint!=null){formMaplink()
}if(!$("linkButton").hasClass("selected")){$("linkButton").addClass("selected");
$("linkButton").getFirst("a").removeEvents("click");
$("linkButton").getFirst("a").onclick=closeLinkPanel;
$("linkPanel").style.visibility="visible";
$("linkPanel").setStyle("opacity","0");
$("linkPanel").fade(0.9)
}return false
}function closeLinkPanel(c){try{var b=new Event(c);
b.stop()
}catch(a){}$("linkButton").removeClass("selected");
$("linkButton").getFirst("a").removeEvents("click");
$("linkButton").getFirst("a").onclick=openLinkPanel;
$("linkPanel").fade(0);
return false
}function closeAllPanels(b){try{if($("linkButton").hasClass("selected")){closeLinkPanel(b)
}if($("sendToEmailButton").hasClass("selected")){closeSendToEmailPanel(b)
}}catch(a){}}function openLocationInEditor(){if(startPoint!=null){window.location="/kartat/karttaeditori.fon?katuosoite="+startPoint.street_address+"&paikkakunta="+startPoint.cityName_fi+"&lat="+startPoint.wgs84lat+"&lon="+startPoint.wgs84lon
}return false
}function openPrintWindow(b,a){if(a=="business"){printWindowHandler=window.open("/karttahaku/print_business.fon?logo="+b,"printPopup","scrollbars=1,resizable=1,height=800,width=1000,status=0,toolbar=0,location=0");
trackEventClick($("sendToPrintButton"),"view business on map","event13")
}else{if(!isRouteSearchActive){printWindowHandler=window.open("/karttahaku/print_map.fon?logo="+b,"printPopup","scrollbars=1,resizable=1,height=800,width=1000,status=0,toolbar=0,location=0");
trackEventClick($("sendToPrintButton"),"view map location","event13")
}else{if(a=="old"){printWindowHandler=window.open("/karttahaku/print.fon?logo="+b,"printPopup","scrollbars=1,resizable=1,height=800,width=1000,status=0,toolbar=0,location=0")
}else{printWindowHandler=window.open("/karttahaku/print_route.fon?logo="+b,"printPopup","scrollbars=1,resizable=1,height=800,width=1000,status=0,toolbar=0,location=0");
trackEventClick($("sendToPrintButton"),"view print directions","event13")
}}}return false
}function createShowOnMapTipBox(){var a=new Element("input",{type:"checkbox",id:"streetviewsPois",events:{click:function(e){var d=new Event(e);
d.stopPropagation();
var c=d.target;
$("streetviews").checked=c.checked;
togglePois($("streetviews"))
}}});
if($("streetviews").checked){a.checked="checked"
}var b=new Element("input",{type:"checkbox",id:"virtualscPois",events:{click:function(e){var d=new Event(e);
d.stopPropagation();
var c=d.target;
$("virtualsc").checked=c.checked;
togglePois($("virtualsc"))
}}});
if($("virtualsc").checked){b.checked="checked"
}return new Element("div",{id:"shortMapOptions","class":"clearfix"}).adopt([new Element("h2",{id:"showOptions"}).set("text","nayta_kartalla".localize()),new Element("ul",{id:"pois"}).adopt([new Element("li").adopt([a,new Element("label",{"for":"streetviewsPois"}).set("text","katunakymat".localize())]),new Element("li").adopt([b,new Element("label",{"for":"virtualscPois"}).set("text","virtuaaliset_kauppakeskukset".localize())]),new Element("li").adopt([new Element("input",{type:"checkbox",id:"attractionsPois",events:{click:function(e){var d=new Event(e);
d.stopPropagation();
var c=d.target;
$("attractions").checked=c.checked;
togglePois($("attractions"))
}}}),new Element("label",{"for":"attractionsPois"}).set("text","nahtavyydet".localize())]),new Element("li").adopt([new Element("input",{type:"checkbox",id:"trafficPois",events:{change:function(d){var j=new Event(d);
j.stop();
var e=j.target;
var g=new Array();
$("trafficdis").checked=e.checked;
g.push($("trafficdis").value);
$("weathercam").checked=e.checked;
g.push($("weathercam").value);
$("roadweather").checked=e.checked;
g.push($("roadweather").value);
$("traveltime").checked=e.checked;
g.push($("traveltime").value);
$("trafficcensus").checked=e.checked;
var c=Maps.getMapObject();
var f=c.getLLPoint();
var k=c.getURPoint();
for(var h=0;
h<g.length;
h++){var l=g[h];
showablePOIs["poi"+l]=e.checked;
MapRemote.showPois(l,f.lat,f.lng,k.lat,k.lng,e.checked,Maps.getZoomLevel(),new function(){})
}showablePOIs["poi"+$("trafficcensus").value]=e.checked;
MapRemote.showPois($("trafficcensus").value,f.lat,f.lng,k.lat,k.lng,e.checked,Maps.getZoomLevel(),addPOIsToMap)
}}}),new Element("label",{"for":"trafficPois"}).set("text","liikennetiedot".localize())]),new Element("li",{id:"moreOptions"}).adopt([new Element("a",{href:"#",events:{click:function(d){var c=new Event(d);
c.stop();
$("showOnMapLink").fireEvent("click",d);
return false
}}}).set("text","lisaa_valintoja".localize())])])])
}function openAutocomplete(d){try{var c=new Event(d);
c.stop()
}catch(a){}var b=$(c.target);
while(b.className.indexOf("inputFieldRoute")<0){b=$(b).getParent()
}if($(b).getFirst("input")!=null){$(b).getFirst("input").focus();
$(b).getFirst("input").fireEvent("click")
}return false
}function popupform(d,c,a,b){if(!window.focus){return true
}window.open("",c,"height="+a+",width="+b+",scrollbars=yes");
d.target=c;
opener=d;
return true
}function getBusinessFlyoutContent(g){var f=new Element("div",{"class":"flyout"});
var m="companylogos_dir".localize();
if($defined(g.logo)&&g.logo!=""){f.adopt([new Element("div",{"class":"logoCont"}).adopt([new Element("img",{"class":"logo",src:""+m+g.logo+".gif",alt:" "}),])])
}var c=g.name;
var h=g.zipcode;
var j=g.locality;
if(($defined(g.name)&&g.name!=null&&g.name!="")||($defined(g.name_fi)&&g.name_fi!=null&&g.name_fi!="")){c=$defined(g.name_fi)?g.name_fi:g.name;
h=$defined(g.zip)?g.zip:g.zipcode;
j=$defined(g.city_fi)?g.city_fi:g.locality;
var b;
if((internetLoggedIn||!loggedIn)&&$defined(g.clicktocall)&&g.clicktocall!=null){b=new Element("span",{"class":"tel"}).adopt([new Element("span").set("text",g.phone).adopt([new Element("a",{href:"#",events:{click:function(r){var q=new Event(r);
q.stop();
openClickToCall(g.id,"language".get(),g.clickToCallNumber);
trackEventClick2(this,g.id,"'call'");
return false
}}}).adopt([new Element("img",{src:"/karttahaku/static/gfx/ico/callForFree_"+"language".get()+".gif",alt:" ","class":"clicktocall"})])])])
}else{b=new Element("span",{"class":"tel"}).adopt([new Element("span").set("text",g.phone)])
}f.adopt([new Element("div",{"class":"vcard"}).adopt([new Element("a",{"class":"fn flyoutName",styles:{"font-weight":"bold"},href:"/yritys/"+g.id+"/"}).set("text",c),new Element("div",{"class":"adr"}).adopt([new Element("div",{"class":"street-address"}).set("text",(g.address!=null&&g.address!="null"?g.address:"")),new Element("span",{"class":"postal-code"}).set("text",(h!=null&&h!="null"?", "+h:" ")+" "),new Element("span",{"class":"locality"}).set("text",j!=null&&j!="null"?j:"")]),b])])
}var l=g.id;
var p=g.name;
var e=new Element("ul",{"class":"linkList"});
if(g.picture){e.adopt([new Element("li").adopt([new Element("img",{src:"/karttahaku/static/gfx/ico/businessPhoto.gif",alt:" "}),new Element("a",{href:"#",events:{click:function(q){q=new Event(q);
q.stop();
window.open("/companyprofile/images.fon?companyId="+l,"popup"+l,"height=800,width=500,scrollbars=1");
return false
}}}).set("text","kuva".localize())])])
}if(g.video){e.adopt([new Element("li").adopt([new Element("img",{src:"/karttahaku/static/gfx/ico/businessVideo.gif",alt:" "}),new Element("a",{href:"#",events:{click:function(q){q=new Event(q);
q.stop();
window.open("/companyprofile/videos.fon?companyId="+l,"popup"+l,"height=800,width=500,scrollbars=0");
return false
}}}).set("text","video".localize())])])
}var d=new Element("ul",{"class":"linkList"});
if($defined(g.url)&&g.url!=""){d.adopt([new Element("li").adopt([new Element("a",{href:(g.url.indexOf("http://")>-1?g.url:"http://"+g.url),target:"_blank",onclick:'track3PartyUrlClick(this, ";yp:'+g.id+'")'}).set("text",g.url)])])
}if($defined(g.clicktoemail)&&g.clicktoemail!=""){d.adopt([new Element("li").adopt([new Element("a",{href:"mailto:"+g.clicktoemail,onclick:'trackEventClick(this, "click email", "event13", "o", ";yp:'+g.id+'")'}).set("text",g.clicktoemail)])])
}else{if($defined(g.clickToEmail)&&g.clickToEmail!=""){d.adopt([new Element("li").adopt([new Element("a",{href:"mailto:"+g.clickToEmail,onclick:'trackEventClick(this, "click email", "event13", "o", ";yp:'+g.id+'")'}).set("text","business_email".localize())])])
}}var k;
var a=window.location.href;
var o=a.split("//")[1];
var n=o.split("/")[0];
if(internetLoggedIn||!loggedIn){k=new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/icon_add_pages.gif",alt:" "}),new Element("a",{href:"#",events:{click:function(q){q=new Event(q);
q.stop();
trackEventClick(this,"","event18","o",g.id);
window.open("http://"+n+"/internet/companylist/save.fon?mode=popup&lto=1&saveBusinessId="+g.id,"popup"+l,"height=800,width=755,scrollbars=0");
return false
}}}).set("text",internetLoggedIn?"business_location".localize():"business_location_notlogged".localize())])
}else{k=new Element("li")
}f.adopt([d!=null&&d.innerHTML.length>0?d:"",e!=null&&e.innerHTML.length>0?e:"",new Element("ul",{"class":"linkList"}).adopt([k,new Element("li").adopt([new Element("img",{src:"/kartat/kuvat/icon_directions.gif",alt:"business_directions".localize()}),new Element("a",{href:"#",events:{click:function(){window.location.href="/karttahaku/route.fon?endlat="+g.coordx+"&endlon="+g.coordy+"&endaddress="+g.address+"&endlocality="+j;
return false
}}}).set("text","hae_reitti".localize())])]),new Element("form",{action:"/karttahaku/business.fon",method:"get","class":"fnForm",events:{submit:function(q){if(this.getElementById("nearbyValue").value!=null&&this.getElementById("nearbyValue").value.length>0&&this.getElementById("nearbyValue").value!="reitin_varrelta_esimerkki".localize()){this.submit()
}}}}).adopt([new Element("div",{"class":"inputHolder"}).adopt([new Element("input",{type:"text",name:"searchKey",id:"nearbyValue","class":"fnWhat hint",value:"reitin_varrelta_esimerkki".localize(),events:{focus:function(q){q=new Event(q);
q.stopPropagation();
if(this.value=="reitin_varrelta_esimerkki".localize()){this.value=""
}},blur:function(q){q=new Event(q);
q.stopPropagation();
var r=this.value;
if(r.trim()==""){this.value="reitin_varrelta_esimerkki".localize()
}}}})]),new Element("input",{type:"hidden",name:"centerlon",value:g.coordy}),new Element("input",{type:"hidden",name:"centerlat",value:g.coordx}),new Element("input",{type:"hidden",name:"nloc",value:j}),new Element("input",{type:"button",id:"fnButton","class":"fnButton",style:"float:left;",value:"hae_lahelta".localize(),events:{click:function(q){this.getParent().fireEvent("submit")
}}})])]);
return f
}function openClickToCall(a,c,b){BusinessSearchRemote.generateClickToCallLink(a,c,b,openClickToCallCallback)
}function openClickToCallCallback(a){if(a!=null){openPopup2(a,"","350","350","yes")
}}function openPopup2(c,g,b,e,f){var a="resizable=yes, height="+b+", width="+e+", left=0, top=0, menubar=no, location=no, status=no, directories=no, scrollbars="+f;
var d=window.open(c,g,a);
if(window.focus){d.focus()
}return false
}function trackEventClick2(c,d,e,a){var b=s_gi("rsid");
b.linkTrackVars="events, eVar25, products";
b.linkTrackEvents=e;
b.eVar25=e;
b.products=d;
b.events="event13";
if(a==null){a="o"
}b.tl(c,a,e)
}function addHoverEffect(b,a){if($defined($(b))){$(b).addEvent("mouseover",function(){changeImage($(b),"/karttahaku/static/gfx/btn_find_"+a+"_hover.png")
});
$(b).addEvent("mousedown",function(){changeImage($(b),"/karttahaku/static/gfx/btn_find_"+a+"_onclick.png")
});
$(b).addEvent("mouseup",function(){changeImage($(b),"/karttahaku/static/gfx/btn_find_"+a+".png")
});
$(b).addEvent("mouseout",function(){changeImage($(b),"/karttahaku/static/gfx/btn_find_"+a+".png")
})
}}function changeImage(a,b){a.src=b
}function escapeSearchWords(a){return a.replace("&amp;","%26").replace(/[&]/g,"%26").replace(/[']/g,"%27")
};
