var pathWSCity = "/catalog/"; var RSearch = $("RSearch"), btSearch = $("btSearch"), inpSearch = $("inpSearch"), footer = $("footer"), main = $("main"), headerSearch = null; function SearchHotels(SortBy, PageNum) { var e = $("NavCityHotel"); var sh = new LoadList(); sh.OnError = SH_OnError; sh.OnComplete = SH_Complete; var URL = pathWSCity + "City.asmx/SearchHotels"; var Query = "Country=" + $v("CnNm") + "&City=" + ($("r2").checked ? $v("CtNm") : "-") + "&Search=" + $v("inpSearch") + "&SortBy=" + (SortBy ? SortBy : "") + "&Page=" + (PageNum ? PageNum : "1"); OnOff_inpSearch(true); RSearch.innerHTML = msgWaitWeSearch; sh.DoCallBack(URL, Query); return false; }
function GetXmlHttp(){var xmlhttp=null;try{xmlhttp=new XMLHttpRequest()}catch(e){try{xmlhttp=new ActiveXObject('Msxml2.XMLHTTP')}catch(e){try{xmlhttp=new ActiveXObject('Microsoft.XMLHTTP')}catch(e){alert(e.message)}}}return xmlhttp;}
function getRequest(){var request="{request:"+"{"+"ad:'"+getAD()+"',"+"dd:'"+getDD()+"'"+"}"+"}";eval("reqSearch="+request+";");var s=JSONstring.make(reqSearch);return request;}
function Search_New(){xmlHttp=GetXmlHttp();xmlHttp.onreadystatechange=HandleStateChange;var URL=pathWSCity+"City.asmx/SearchNewDates";var parameters="";xmlHttp.open("POST",URL,true);xmlHttp.setRequestHeader('Content-Type','application/json');xmlHttp.setRequestHeader("Content-length",parameters.length);xmlHttp.setRequestHeader("Connection","close");xmlHttp.send(parameters);}
function HandleStateChange(){switch(xmlHttp.readyState){case 1:break;case 2:break;case 3:break;case 4:if(xmlHttp.status==0)alert("Abort");else if(xmlHttp.status==200&&xmlHttp.statusText=="OK"){alert(xmlHttp.responseText);}else alert("Error:\n"+xmlHttp.status+"\n"+xmlHttp.statusText+"\n"+xmlHttp.responseText);break;}}
var lgCn,lgCt;function redirect(cn,ct){lgCn=cn;lgCt=ct;SearchListGuid();return;document.forms[0].action="/"+cn+"+hotels/"+ct+"+hotels";document.forms[0].submit();}
function SearchListGuid(){var sl=new LoadList();sl.OnError=snOnError;sl.OnComplete=slComplete;var URL=pathWSCity+"City.asmx/SearchListGuid";var Query="ad="+getAD()+"&dd="+getDD()+"&country="+lgCn+"&city="+lgCt+"&RoomType="+$v("CountOfPerson")+"&RoomCount="+$v("CountOfRoom")+"&VisitorID="+$v("VisitorID")+"&Lang="+$v("Lang")+"&User="+getUser()+"&rating="+getRating()+"&chain="+getChain()+"&facility="+getFacility()+"&name="+getName()+"&price="+getPrice()+"&ll="+getLatLon();sl.DoCallBack(URL,Query);fShowWait();opSearchTip("SearchListGuid");return false;}
function slComplete(text,xml){fHideWait();response=xml.documentElement;var lg="";if(response&&response.firstChild){lg=response.firstChild.textContent||response.firstChild.data;}
jumpPage(lg);}
function jumpPage(lg){document.forms[0].action="/"+(lgCn.replace(/ /g,"+"))+"+hotels/"+(lgCt.replace(/ /g,"+"))+"+hotels/"+lg;document.forms[0].submit();}
function getUser(){var e=$("NameUser");var user=(e?(e.textContent?e.textContent:e.innerText):"");return user;}
var ajaxRequest=false;var t_SN=null;var sn=new LoadList();sn.OnError=snOnError;sn.OnComplete=nsComplete;function SearchNew(){sn.AbortCallBack();ns.AbortCallBack();var cn=decodeURIComponent(String(getCountryCode()).trim().toLowerCase()).replace(/\+/g," ");var ct=decodeURIComponent(String($v("SelectCity")).trim().toLowerCase()).replace(/\+/g," ");var CnCt=String($v("CnCt")).split(";");for(var i=0;i<CnCt.length;i++)
CnCt[i]=decodeURIComponent(CnCt[i]).trim().toLowerCase().replace(/\+/," ");if(cn&&(cn!=CnCt[1]||ct!=CnCt[2])){redirect(cn,ct);return}
var URL=pathWSCity+"City.asmx/SearchNew";var Query=gtParam("ad",getAD())+
getParam("dd",getDD())+getParam("CnCode",CnCt[0])+getParam("country",CnCt[1])+getParam("city",CnCt[2])+getParam("RoomType",$v("CountOfPerson"))+getParam("RoomCount",$v("CountOfRoom"))+getParam("VisitorID",$v("VisitorID"))+getParam("Lang",$v("Lang"))+
getParam("User",getUser())+getParam("rating",getRating())+getParam("chain",getChain())+getParam("facility",getFacility())+getParam("name",getName())+getParam("price",getPrice())+getParam("ll",getLatLon())+getParam("mode",getMode())+
getParam("geoPoint", $v("centerSearch"));
sn.DoCallBack(URL, Query);
fShowWait();
drawSTData("", "", "");
fShowSearchTip(true);
opSearchTip("SearchNew");
return false;}
function fShowSearchTip(f){if(f||GetRefId()!="0"){var l=$("divSearchTip");if(l&&l.style)l.style.display="block";l=$("dst_img");if(l&&l.style)l.style.display="block";}}
function fHideSearchTip(){var l=$("divSearchTip");if(l&&l.style)l.style.display="none";drawSTData("","","")}
function fHideSearchTipImg(){var l=$("dst_img");if(l&&l.style)l.style.display="none";}
function gtParam(nam,val){return nam+"="+val}
function getParam(nam,val){return"&"+gtParam(nam,val)}
var ns = new LoadList(); ns.OnError = snOnError; ns.OnComplete = snComplete;
function SearchNext() {
    if (ajaxRequest) return;
    window.status = "SearchNext(): " + GetRefId();
    ns.AbortCallBack();
    var URL = pathWSCity + "City.asmx/SearchNext";
var Query="refID="+GetRefId()+
getParam("rating",getRating())+getParam("chain",getChain())+getParam("facility",getFacility())+getParam("name",getName())+getParam("price",getPrice())+getParam("ll",getLatLon())+
getParam("geoPoint", $v("centerSearch"));
ns.DoCallBack(URL, Query);
opSearchTip("SearchNext");}
var tSS=null;function SearchSort(sortBy,pageNum){var sns=new LoadList();sns.OnError=snOnError;sns.OnComplete=snComplete;var URL=pathWSCity+"City.asmx/SearchSort";var CnCt=String($v("CnCt")).split(";");var Query="refId="+GetRefId()+
getParam("sortBy",(sortBy?sortBy:""))+getParam("page",(pageNum?pageNum:""))+getParam("country",CnCt[1])+getParam("city",CnCt[2])+getParam("rating",getRating())+getParam("chain",getChain())+
getParam("facility",getFacility())+getParam("name",getName())+getParam("price",getPrice())+getParam("ll",getLatLon())+getParam("mode",getMode())+
getParam("geoPoint",$v("centerSearch"));sns.DoCallBack(URL,Query);fShowWait();opSearchTip("SearchSort");return false;}
function getMode(){var a=String($v("CnCt")).split(";");var m="0";if(a.length>3)m=a[3];return m}
function getRating(){var s="";for(var i=0;i<6;i++){var cb=$("Rating"+i);if(cb)
s+=cb.checked?"1":"0";else s+="0";}
return s;}
function setRating(){for(var i=0;i<6;i++){var cb=$("Rating"+i);if(cb){cb.checked=false;fSelDelsel($("Rating"+i),false)}}}
function getChain(){var s="";for(var i=0;i<50;i++){var cb=$("Chains"+i);if(cb&&cb.checked)s+=(s!=""?",":"")+cb.value;}return s;}
function setChain(){for(var i=0;i<50;i++){var cb=$("Chains"+i);if(cb){cb.checked=false;fSelDelsel($("Chains"+i),false)}}}
function getLatLon(){var cb=$("cdPlace");var s="";if(cb&&cb.checked)s=$v("geoLatLon");return s}
function getFacility(){var s="";for(var i=0;i<20;i++){var cb=$("Facility"+i);if(cb&&cb.checked)s+=(s!=""?",":"")+cb.value;}return s;}
function setFacility(){for(var i=0;i<20;i++){var cb=$("Facility"+i);if(cb){cb.checked=false;fSelDelsel($("Facility"+i),false)}}}
function getName(){var cb=$("cbInpSearch");return(cb&&cb.checked)?$v("InpSearchText"):""}
function getPrice(){var cb=$("cbTextFromTo");return(cb&&cb.checked)?$v("FromPrice")+";"+$v("ToPrice"):""}
function AbortCB(cb){if(cb&&cb.AbortCallBack)cb.AbortCallBack()}
function clearFilter(){
// var a=urlPage($v("CnNm"),$v("CtNm"));
var a="/"+$v("CnNm")+"+hotels/"+$v("CtNm")+"+hotels";
PostToUrl(a,{'GL':$v("GL")},false)
}
function gotoLG(e) {
var a = e.href;
PostToUrl(a,{'GL':$v("GL")},false)
}
function GetRefId(){var refId="0";if(typeof headerSearch!="undefined"&&headerSearch!=null&&headerSearch.referenceid!=null)refId=String(headerSearch.referenceid);return refId;}
var tSF=null;function SearchFilter(){var CnCt=String($v("CnCt")).split(";");var URL=pathWSCity+"City.asmx/SearchFilter";var sf=new LoadList();sf.OnError=sfOnError;sf.OnComplete=sfComplete;var Query="refId="+GetRefId()+"&country="+CnCt[1]+"&city="+CnCt[2]+"&rating="+getRating()+"&chain="+getChain()+"&facility="+getFacility()+"&name="+getName()+"&price="+getPrice()+"&ll="+getLatLon()+
getParam("mode",getMode())+
getParam("geoPoint",$v("centerSearch"));sf.DoCallBack(URL,Query);fShowWait();opSearchTip("SearchFilter");return false;}
function StartFilter(){if(tSF!=null)clearTimeout(tSF);tSF=setTimeout(SearchFilter,100)}
function sfOnError(status,statusText,text){fHideWait();alert("Error: search again");ajaxRequest=false;}
function sfComplete(text,xml){snComplete(text,xml)}
function OnOff_inpSearch(f){btSearch.disabled=f;inpSearch.readOnly=f}
function snOnError(status,statusText,text){alert("snOnError: "+status+"\r"+statusText+"\r"+text);}
var tSN;function NextSearch(){if(GetRefId()!="0"&&headerSearch.totalhotels!=headerSearch.checkedhotels&&headerSearch.searchstatus!="NOAUTO"){if(tSN!=null)clearTimeout(tSN);ajaxRequest=false;tSN=setTimeout('SearchNext()',3000);}
else{fHideSearchTipImg();}}
function drawSearchTip(){fShowSearchTip();var f=GetRefId()!="0"&&headerSearch.totalhotels!=headerSearch.checkedhotels&&headerSearch.searchstatus!="NOAUTO";drawSTData(headerSearch.counthotels,headerSearch.checkedhotels,headerSearch.filterhotels);}
function drawSTData(total,checked,online){PutText("dst_total",total);PutText("dst_checked",checked);PutText("dst_online",online)}
function opSearchTip(s){PutText("opSearchTip",s);}
function PutText(el,txt){var e=$(el);if(e)e.innerHTML=txt;}
function nsComplete(text,xml){ClearResult();snComplete(text,xml)}
function snComplete(text,xml){fHideWait();opSearchTip("");$dh("LinkLang");ajaxRequest=false;response=xml.documentElement;var len=String(text).trim().length;var header=response.getElementsByTagName('SearchResultHeader');if(header.length>0){GetHeadrer(header[0])}
var d=response.getElementsByTagName('SearchHotels');var s;if(d.length>0){if(d[0].firstChild&&d[0].firstChild.data){s=d[0].textContent?d[0].textContent:d[0].firstChild.data}
else s=d[0].text;var h_l=$("TableHeader");h_l.innerHTML=s;}
else{var tbl=$("TableHotelList");tbl.innerHTML="<table class='htl-list'>"+"</table>";}
var d=response.getElementsByTagName('Hotels');if(d.length>0){var hotels=d[0].childNodes;if(hotels.length>0){var tbl=$("TableHotelList");var add=headerSearch.action=="addHotel";if(add){s=String(tbl.innerHTML);if(s!=""){var idx=s.indexOf("</TABLE>");if(idx==-1)
idx=s.indexOf("</table>");s=s.substring(0,idx-1);}
else
s="<table class='htl-list'>";}
else{s="";}
for(var i=0;i<hotels.length;i++){var h=hotels[i];s+=h.textContent?h.textContent:h.text;}
tbl.innerHTML=(!add?"<table class='htl-list'>":"")+
s+"</table>";$("TableHotelList").className="pad10lr";}}
SetInnerText('HeaderSearchHotels', $("HeaderHotelList")); SetInnerText('PagesSearchHotels', $("PageHotelList")); SetInnerText('FilterRating', $("Filter_RatingHotel")); SetInnerText('FilterFacility', $("Filter_FacilityHotel")); SetInnerText('FilterChain', $("Filter_ChainHotels")); SetHotelChange('HotelChange');SetLG();var pv=$v("PageVars");if(pv){var p=String(pv).split(",");if(p&&p.length==4){SetPageVar(p[0],p[1],p[2],p[3]);}}
drawSearchTip();NextSearch();if(timerMovFooter!=null)clearTimeout(timerMovFooter);timerMovFooter=setTimeout('movFooter()',250);}
function ClearResult() { var b = $("TableHotelList"); try { b.innerHTML = ""; } catch (e) { b.innerText = ""; } }
function SetLG(){var d = response.getElementsByTagName("LG"),s;if(d.length>0){if(d[0].firstChild&&d[0].firstChild.data){
    s = d[0].textContent ? d[0].textContent : d[0].firstChild.data
} else { s = d[0].textContent; if (typeof s == 'undefined') { s = d[0].text } }
$v("GL", s)
//deleteCookie("GLC");
//setCookie("GLC", $v("GL"));
}}
function SetHotelsText(name){var d=response.getElementsByTagName(name);var s;if(d.length>0){if(d[0].firstChild&&d[0].firstChild.data){s=d[0].textContent?d[0].textContent:d[0].firstChild.data}
else s=d[0].text;var h_l=$("HotelList");if(headerSearch.action=="addHotel"){}
else h_l.innerHTML=s;var pv=$v("PageVars");if(pv){var p=String(pv).split(",");if(p&&p.length==4){SetPageVar(p[0],p[1],p[2],p[3]);}}}
else alert("not found");}
function SetInnerText(name,el){var d=response.getElementsByTagName(name);var s;if(d.length>0){if(d[0].firstChild&&d[0].firstChild.data){s=d[0].textContent?d[0].textContent:d[0].firstChild.data}
else{s=d[0].textContent;if(typeof s=='undefined'){s=d[0].text}}}
if(el&&typeof s!='undefined')el.innerHTML=s;}
function SetHotelChange(name){var d=response.getElementsByTagName(name);var s;if(d.length>0){d=d[0].childNodes;if(d.length>0){for(var i=0;i<d.length;i++){var c=d[i];if(c.nodeType==1){s=getDOMValue(c,"BP");if(s){var el=$(s+"_sh",s+"_bh",s+"_rh");if(el[0]&&el[1]&&el[2]){var pr=getDOMValue(c,"Price");var lq=getDOMValue(c,"ListQuid");el[0].href=hrefHotel(lq);el[1].href=hrefBook(lq);el[2].innerHTML=hotelPrice(pr);el[2].title=foundLowPrice;}}}}}}}
function hrefBook(lq){return"https://secure.horse21.nl/book/Booking2.aspx?ListGuid="+lq}
function hrefHotel(lq){return"/hotel/"+lq}
function hotelPrice(pr){var s='<div style="font-weight: bold; white-space: nowrap;">'+'<span style="padding: 0pt; color: red; display: inline;">&darr;</span>'+'<span style="padding: 0pt 0pt 0pt 3px; color: green; display: inline;">&euro;&nbsp;'+pr+'</span>'+'</div>';return s;}
function getDOMValue(d,name){var s;var el=d.getElementsByTagName(name);if(el.length>0){s=el[0].textContent?el[0].textContent:el[0].firstChild.data}
return s;}
function GetHeadrer(header){headerSearch={};for(var i=0;i<header.childNodes.length;i++){var item=header.childNodes[i];if(item.nodeType==1){var name=String(item.nodeName).trim().toLowerCase();var value=String(item.textContent?item.textContent:item.text);value=value.trim();eval("headerSearch."+name+"='"+value+"'");}}
if(typeof headerSearch!="undefined"&&headerSearch!=null&&headerSearch.filterhotels!=null&&headerSearch.filterhotels==0)
{ClearResult();}}
function SH_OnError(status,statusText,text){alert("OnError: "+status+"\r"+statusText+"\r"+responseText);OnOff_inpSearch(false);RSearch.innerHTML=msgErrorSearch;}
function putValue(e,v){var el=$(e);var childNodes=el.childNodes;if(childNodes.length>0)e=childNodes[0];else e=el;if(e.textContent)e.nodeValue=v;else e.nodeValue=v;}
function SH_Complete(responseText,responseXML){OnOff_inpSearch(false);inpSearch.focus();var msg="";var len=String(responseText).trim().length;var s="";response=xml.documentElement;var d=response.getElementsByTagName('HotelList');if(d.length>0&&d[0].firstChild&&d[0].firstChild.data){s=d[0].textContent?d[0].textContent:d[0].firstChild.data;alert("SH_Complete(): "+len+" : "+s.length);var h_l=$("HotelList");h_l.innerHTML=s;if(s.length==0)msg=msgNotFound;else{var PageVars;d=response.getElementsByTagName('PageVars');if(d.length>0&&d[0].firstChild&&d[0].firstChild.data)
PageVars=d[0].textContent?d[0].textContent:d[0].firstChild.data;if(PageVars){var pv=PageVars.split(",");SetPageVar(pv[0],pv[1],pv[2],pv[3])}
d=response.getElementsByTagName('NavCityHotel');if(d.length>0&&d[0].firstChild&&d[0].firstChild.data){s=d[0].textContent?d[0].textContent:d[0].firstChild.data;$("NavCityHotel").innerHTML=s}}}
else{d=response.getElementsByTagName('IsHotel');if(d.length>0&&d[0].firstChild&&d[0].firstChild.data)
s=d[0].textContent?d[0].textContent:d[0].firstChild.data;alert("IsHotel: "+len+" : "+s.length+"\n"+s);if(String(s).toLowerCase()=="true"){d=response.getElementsByTagName('Url');if(d.length>0&&d[0].firstChild&&d[0].firstChild.data)
{s=d[0].textContent?d[0].textContent:d[0].firstChild.data;action=s;alert("IsHotel: Url: "+s);document.forms[0].action=action;var ws=$("__VIEWSTATE");if(ws==null){var _ws=document.getElementsByName("__VIEWSTATE");ws=_ws[0];}
ws.name="_VIEW_STATE";ws.id="_VIEW_STATE";document.forms[0].submit();ws.name="__VIEWSTATE";ws.id="__VIEWSTATE";}
else msg=msgNotFound;}
else msg=msgNotFound;}
RSearch.innerHTML=msg;if(timerMovFooter!=null)clearTimeout(timerMovFooter);timerMovFooter=setTimeout('movFooter()',250);}
var timerMovFooter=null;function movFooter(){return;footer.style.top=main.offsetHeight+"px";window.status="main.offsetWidth: "+main.offsetHeight+"\nfooter.offsetTop: "+footer.offsetTop;timerMovFooter=null}
function getXMLTag(xml,tag){var val,s="<"+tag+">";var posB=xml.indexOf(s),posE=xml.indexOf("</"+tag+">");if(posB>=0&&posE>posB)val=xml.substring(posB+s.length,posE);return repl_gt(repl_lt(val));}
function repl_lt(str){return str.replace(/&lt;/g,"<")}
function repl_gt(str){return str.replace(/&gt;/g,">")}
function shadowedScreen(show){var s=$("shadowed").style;if(show){s.display='block';s.position='absolute';s.left='0px';s.top='0px';s.background="#a9a9a9";s.height=calculateOffsetTop($("botoom_menu"))+50+"px";s.width=document.body.clientWidth+"px";s.filter="alpha(opacity=50)";s.opacity="0.5";}
else s.display='none';}
function ot(i){var hm=$("hm"+i);PostToUrl(hm.href,{'Run':"yes"},true);return true;}
function di_(el,i){var hm=$("hm"+i),hr=$("hr"+i),hi=$("hi"+i);_url=hm;var img1_a=$("img1_a");if(img1_a)img1_a.href=hm.href;nav=$('img1').style;var top=calculateOffsetTop(el)+70;var h=get_wh()+getBodyScrollTop();if(top+206>h)top=h-206;nav.left=calculateOffsetLeft(el)-40+"px";nav.top=top+"px";putValue($("img1_hm"),getValue(hm));$("img1_hr").src=hr.src;var hi_src=String(hi.src).split("/"),src="";for(var i=0;i<hi_src.length-5;i++)
src+=hi_src[i]+"/";src+="300/173";for(var i=hi_src.length-3;i<hi_src.length;i++)
src+="/"+hi_src[i];$("img1_hi").src=src;window.status=src+" "+$("img1_hi").style.width+":"+$("img1_hi").style.height;nav.display='block';window.status+=" "+nav.display+" "+nav.top+nav.left+" "+nav.width+":"+nav.height}
function hideimg(el){nav=$('img1');if(nav)nav.style.display='none'}
function imgdraw(el){nav=$('img1');if(nav)nav.style.display='block'}
function imghide(el){nav=$('img1');if(nav)nav.style.display='none'}
function PostToUrl(action,params,noblank){method="post";var form=$c("form");form.setAttribute("method",method);form.setAttribute("action",action);if(noblank)form.setAttribute("target","_blank");for(var key in params){var hiddenField=$c("input");hiddenField.setAttribute("type","hidden");hiddenField.setAttribute("name",key);hiddenField.setAttribute("value",params[key]);form.appendChild(hiddenField);}
document.body.appendChild(form);form.submit();}
// function GoToPage(cn,ct,noblank){var prms="{"+"'ad':'"+getAD()+"',"+"'dd':'"+getDD()+"',"+"'RoomType':'"+$v("CountOfPerson")+"',"+"'RoomCount':'"+$v("CountOfRoom")+"',"+"'VisitorID':'"+$v("VisitorID")+"',"+"'User':'"+getUser()+"',"+"'rating':'"+getRating()+"',"+"'chain':'"+getChain()+"',"+"'facility':'"+getFacility()+"',"+"'name':'"+getName()+"',"+"'price':'"+getPrice()+"',"+"'ll':'"+getLatLon()+"'"+"}";eval("params="+prms+";");PostToUrl(urlPage(cn,ct,noblank),params);}
function urlPage(cn,ct){return"/"+cn+"+hotels/"+ct+"+hotels/"}
function checkSearch(){return CheckCountryCity()&&CheckADDate();}
function CheckCountryCity(){var cn=getCnCode();var ct=$v("SelectCity");if(cn==""){alert($("msgChoiceCountry").value);return false;}
if(ct==""){alert($("msgChoiceCity").value);return false;}
return true;}
function imgclick(url){var a=(typeof _url=='string')?$(_url):_url;var href=a.href;var f=String(href).toLowerCase().indexOf("/hotel/");PostToUrl(href,[],f>-1)}
