function readystate_filter(_1){
return function(){
if(arguments.callee.fired){
return;
}
if(window.event.srcElement.readyState=="complete"){
arguments.callee.fired=true;
_1();
}
};
}
function onload_filter(_2,_3){
if(String(frames[0].location).lastIndexOf(_3)!=-1){
_2();
}
}
function setOnLoad(e,_5,_6){
if(/MSIE/.test(navigator.userAgent)){
$(e).onreadystatechange=readystate_filter(_5);
}else{
if(_6){
$(e).onload=partial(onload_filter,_5,_6);
}else{
$(e).onload=_5;
}
}
}
function simpleload(_7,_8){
searchchange().addCallback(function(){
setOnLoad("loader",function(){
addloaded(true);
if(_8){
_8();
}
});
$("loader").src=_7;
});
}
function createFader(el,_a,_b){
if(isUndefinedOrNull(_a)){
_a=0;
}
if(isUndefinedOrNull(_b)){
_b=1;
}
var _c=document.createElement("div");
setStyle(_c,{"z-index":200,position:"absolute",left:"0px",top:"0px",width:"100%",height:_a+"px"});
el.insertBefore(_c,el.firstChild);
if(_b!=1){
setOpacity(_c,_b);
}
setStyle(_c,{"background-color":"black"});
return _c;
}
function setScrollTop(_d){
if(/AppleWebKit/.test(navigator.userAgent)){
document.body.scrollTop=_d;
}else{
document.documentElement.scrollTop=_d;
}
}
function getScrollTop(){
if(/AppleWebKit/.test(navigator.userAgent)){
return document.body.scrollTop;
}else{
return document.documentElement.scrollTop;
}
}
function reptag(_e,id,_10,cls){
return "<"+_e+" id='"+id+"' class='replace "+(cls?cls:"")+"'>"+"<span>"+_10+"</span>"+"<b></b>"+"</"+_e+">";
}
repdiv=partial(reptag,"div");
function repspan(id,_13){
return "<span id='"+id+"' class='replace'>"+"<img class='spacer' src='imgs/blank.gif' />"+"<span>"+_13+"</span>"+"<b></b>"+"</span>";
}
function parsestyles(){
var _14="";
var _15=getElementsByTagAndClassName("textarea","protected_style",frames[0].document.body);
for(var i=0;i<_15.length;i++){
villa_styles+=_15[i].value;
}
if(isie>0){
$("villastyle").styleSheet.cssText=villa_styles;
}else{
var _17=document.createTextNode(villa_styles);
if($("villastyle").firstChild){
$("villastyle").replaceChild(_17,$("villastyle").firstChild);
}else{
$("villastyle").appendChild(_17);
}
}
return _14;
}
function addloaded(_18){
var div=document.createElement("div");
div.innerHTML=parsestyles()+frames[0].document.body.innerHTML;
if(isie==0||isie>=7){
setStyle(div,{"visibility":"hidden","position":"absolute"});
$("villas_loading").parentNode.insertBefore(div,$("villas_loading"));
var dim=getElementDimensions(div);
setStyle(div,{height:"0px",overflow:"hidden",position:"relative"});
setTimeout(function(){
var _1b=createFader(div);
if(_18){
setStyle("villas_loading",{"height":"1px","overflow":"visible"});
animator({duration:500,target:"villas_loading",from:1},"opacity",0).addCallback(function(){
removeElement("villas_loading");
}).go();
}
sequential({duration:500},simultaneous({},animator({target:_1b,from:0},"height",dim.h),animator({target:div,from:0},"height",dim.h)),funcanimator({duration:0},function(){
setStyle(div,{visibility:"visible"});
}),animator({target:_1b,from:1},"opacity",0)).addCallback(function(){
removeElement(_1b);
setStyle(div,{"height":"auto"});
}).go();
},0);
}else{
$("villas_loading").parentNode.insertBefore(div,$("villas_loading"));
if(_18){
removeElement("villas_loading");
}
}
return div;
}
function searchchange(){
hoversupress=true;
var _1c=(getStyle("image","display")=="block");
var dim=getElementDimensions("villas");
var pos=getElementPosition("villas");
if(_1c){
var _1f=createFader($("image"),486,0);
}
setStyle("villas",{"position":"relative"});
var _20=createFader($("villas"),getElementDimensions("villas").h,0);
setStyle(document.body,{"height":"auto","min-height":getViewportDimensions().h+1+"px"});
setStyle("villas",{"min-height":"200px","height":dim.h+"px"});
var _21=simultaneous({},animator({target:_20,"from":0},"opacity",1));
var _22=simultaneous({},animator({target:_20,"from":1},"opacity",0),animator({target:_20,"from":dim.h},"height",200),animator({target:"villas","from":dim.h},"height",200));
if(_1c){
_21.add(animator({target:_1f,"from":0},"opacity",1),funcanimator({},function(off){
var col=Math.round(255*(1-off)).toString(16);
if(col.length==1){
col="0"+col;
}
setStyle("image",{"border-color":"#"+col+col+col});
}));
_22.add(animator({target:"image","from":486},"height",0),animator({target:_1f,"from":486},"height",5));
}
return sequential({duration:500},_21,funcanimator({duration:0},function(off){
$("villas").innerHTML="<div id='villas_loading'>"+"<div class='loading replace'><span>Loading...</span><b></b></div>"+"</div>";
$("villas").insertBefore(_20,$("villas").firstChild);
}),_22).addCallback(function(){
if(_1c){
removeElement(_1f);
setStyle("image",{display:"none"});
setStyle("navspacer",{height:"0px"});
}
removeElement(_20);
setStyle("villas",{"height":"auto"});
setStyle(document.body,{"height":"auto","min-height":getViewportDimensions().h+1+"px"});
hoversupress=false;
}).go();
}
searchstate={accmd:1};
function update_navblock(_26){
$("nb_"+_26+"_hover").innerHTML="<table><tr><td>"+"<div class='loading replace'><span>Loading...</span><b></b></div>"+"</td></tr></table>";
doSimpleXMLHttpRequest("navblock.php",merge(searchstate,{"block":_26})).addCallback(function(r){
$("nb_"+_26+"_hover").innerHTML=r.responseText;
});
}
function update_navblocks(_28){
var _29=["loc","set","type"];
for(var i=0;i<_29.length;i++){
if(_29[i]!=_28){
update_navblock(_29[i]);
}
}
}
function update_search(){
searchchange().addCallback(function(){
doSimpleXMLHttpRequest("search.php",searchstate).addCallback(function(r){
$("villas").innerHTML=r.responseText;
if($("searchresults")){
villa_load(eval($("searchresults").value));
}
});
});
}
function goinfo(id){
simpleload("info.php?id="+id);
}
function gobook(id,sid){
simpleload("booking.php"+(id?"?id="+id:"")+(sid?"&sid="+sid:""),bookinginit);
}
function goaccmd(id,_30){
searchstate={"accmd":id};
var nw=repdiv("accmd_"+id,_30,"accmd_sp");
$("nb_accmd_sel").innerHTML=nw;
update_navblocks();
var _32=["loc","set","bdrms","type"];
var _33={1:["loc","set","bdrms","type"],2:["loc","set"],3:[]}[id];
if(!_33){
_33=[];
}
for(var i=0;i<_32.length;i++){
$("nb_"+_32[i]+"_sel").innerHTML=repdiv(_32[i]+"_0","Any",_32[i]+"_sp");
var _35=(findValue(_33,_32[i])==-1)?"hidden":"visible";
setStyle($("nb_"+_32[i]),{"visibility":_35});
setStyle($("nb_"+_32[i]+"_sel"),{"visibility":_35});
}
if(id==3){
update_search();
}else{
goinfo(id);
}
}
function go(_36,id,_38){
if(id==0){
delete searchstate[_36];
}else{
searchstate[_36]=id;
}
var nw=repdiv(_36+"_"+id,_38,_36+"_sp");
$("nb_"+_36+"_sel").innerHTML=nw;
update_navblocks(_36);
update_search();
}
villa_styles="";
function villa_load(_3a){
villainfos={};
mainpending=extend(null,_3a);
infopending=extend(null,_3a);
villa_load_one();
villa_styles="";
}
function villa_load_one(){
if(mainpending.length){
villa_load_main(mainpending[0]);
}else{
if(infopending.length){
villa_load_info(infopending[0]);
}
}
}
function villa_load_main(id){
var src="villamain.php?id="+id;
setOnLoad("loader",partial(villa_loaded_main,id),src);
$("loader").src=src;
}
function villa_load_info(id){
var src="villainfo.php?id="+id;
setOnLoad("loader",partial(villa_loaded_info,id),src);
$("loader").src=src;
}
function villa_loaded_main(id){
mainpending.splice(findValue(mainpending,id),1);
var div=addloaded(mainpending.length==0,true);
connect(div,"onclick",partial(villatoggle,id));
villa_load_one();
}
function villa_subvilla_onhover(div,_42){
if(_42.timeout){
clearTimeout(_42.timeout);
}
if(_42.anim){
_42.anim.stop();
}
_42.anim=animator({target:div,duration:250,from:0},"opacity",1).go();
}
function villa_subvilla_unhover(div,_44){
_44.timeout=setTimeout(function(){
_44.timeout=null;
if(_44.anim){
_44.anim.stop();
}
_44.anim=animator({target:div,duration:250,from:1},"opacity",0).go();
},100);
}
function villa_loaded_info(id){
var _46=$("villa_"+id+"_info");
_46.innerHTML=parsestyles()+frames[0].document.body.innerHTML;
var _47=getElementsByTagAndClassName("textarea","subvilla_pics",_46);
if(_47.length){
subvillas=eval(_47[0].value)[0];
for(var sid in subvillas){
if(subvillas[sid]){
var div=document.createElement("div");
div.id="hover."+sid;
div.className="subvilla_hover";
for(var i=1;i<=subvillas[sid];i++){
var sdv=document.createElement("div");
sdv.className="subvilla_pic";
var img=document.createElement("img");
img.src="villas/"+sid+i+"x.jpg";
sdv.appendChild(img);
div.appendChild(sdv);
}
var col=getElementsByTagAndClassName(null,"subvilla_imgs",_46)[0];
col.insertBefore(div,col.firstChild);
mcd.setOpacity(div,0);
state={};
connect(sid,"onmouseenter",partial(villa_subvilla_onhover,div,state));
connect(sid,"onmouseleave",partial(villa_subvilla_unhover,div,state));
}
}
}
infopending.splice(findValue(infopending,id),1);
villa_load_one();
}
villaopened=null;
function villatoggle(id,e){
var _50=e.target();
while(_50.className!="villa"&&_50.parentNode){
if(_50.nodeName.toLowerCase()=="a"){
return;
}
_50=_50.parentNode;
}
var _51="villa_"+id;
var _52="villa_"+id+"_info";
var _53=getStyle(_52,"visibility")=="visible";
var dim=getElementDimensions(_52);
var pos=getElementPosition(_51);
var _56=getElementsByTagAndClassName(null,"over",_52)[0];
if(_53){
simultaneous({duration:350,motion:mcd.anim.adjusters.easeout},animator({target:_52,from:dim.h},"height",0),animator({target:_56,from:dim.h},"height",5),animator({target:_56,from:0},"opacity",1)).addCallback(function(){
setStyle(_52,{position:"absolute",top:"-5000px",visibility:"hidden",height:"auto"});
villa_slide.stop(_51);
}).go();
}else{
if(!getElementsByTagAndClassName(null,"col1",_52).length){
villa_load_info(id);
}
setStyle(_52,{position:"relative",top:"auto",visibility:"visible",height:"0px"});
var _57=getScrollTop();
simultaneous({duration:500,motion:mcd.anim.adjusters.easeout},animator({target:_52,from:0},"height",dim.h),animator({target:_56,from:0},"height",dim.h),animator({target:_56,from:1},"opacity",0),funcanimator({},function(off){
setScrollTop(_57*(1-off)+(pos.y-5)*off);
})).addCallback(function(){
setStyle(_52,{height:"auto"});
setStyle(_56,{height:"0px"});
villa_slide.start(_51);
}).go();
}
}
villa_slide={active:null,now:0,nxt:0,pending:false,picture:function(id){
return getElementsByTagAndClassName(null,"picture",id)[0];
},images:function(id){
return getElementsByTagAndClassName("img",null,villa_slide.picture(id));
},start:function(id){
if(villa_slide.active==id){
return;
}
if(villa_slide.anim){
villa_slide.anim.cancel();
}
if(villa_slide.timeout){
clearTimeout(villa_slide.timeout);
}
villa_slide.active=id;
villa_slide.pending=false;
villa_slide.state=[0,1,2];
var _5c=villa_slide.images(id);
if(_5c.length==1){
var src=_5c[0].src.match(/(^|\/)villas\/(.*?)([1-3])\.jpg$/);
villa_slide.load(src[2],id);
}
villa_slide.step();
},stop:function(id){
if(villa_slide.active!=id){
return;
}
if(villa_slide.timeout){
clearTimeout(villa_slide.timeout);
}
villa_slide.active=false;
villa_slide.pending=false;
},load:function(_5f,id,img){
if(!img){
if($(id).slideflag){
return;
}
$(id).slideflag=true;
}else{
villa_slide.picture(id).appendChild(img);
mcd.setOpacity(img,0);
if(villa_slide.pending==id){
villa_slide.step();
}
}
var _62=villa_slide.images(id);
if(_62.length<3){
var img=document.createElement("img");
img.onload=partial(villa_slide.load,_5f,id,img);
img.src="villas/"+_5f+(_62.length+1)+".jpg";
}
},step:function(){
villa_slide.timeout=null;
var _63=villa_slide.images(villa_slide.active);
if(_63.length<=villa_slide.state[1]){
villa_slide.pending=villa_slide.active;
return;
}
villa_slide.pending=false;
villa_slide.anim=simultaneous({duration:1500},animator({target:_63[villa_slide.state[0]],from:1},"opacity",0),animator({target:_63[villa_slide.state[1]],from:0},"opacity",1)).addCallback(function(){
villa_slide.state.push(villa_slide.state.shift());
villa_slide.timeout=setTimeout(villa_slide.step,4000);
villa_slide.anim=null;
}).go();
}};
function showmap(map){
window.open("map.php?map="+map,"maps","width=600,height=500,status=no,resizable=yes");
}
bookingmode=null;
bookingdates=[];
function bookinginit(){
bookingmode=null;
bookingdates=[];
bookingdatemode=false;
show_calendar("bookingcalendar");
subvillas={};
var _65=eval($("bookinginfo").innerHTML);
for(var i=0;i<_65.length;i+=2){
if(!subvillas[_65[i]]){
subvillas[_65[i]]=[];
}
subvillas[_65[i]].push(_65[i+1]);
}
}
function typechange(){
for(var i=0;i<document.booking.type.length;i++){
if(document.booking.type[i].checked){
var _68=document.booking.type[i].value;
break;
}
}
if(bookingmode==_68){
return;
}
bookingmode=_68;
var _69=getElementsByTagAndClassName(null,"simple","bookingform")[0];
var _6a=getElementsByTagAndClassName(null,"complex","bookingform")[0];
if(bookingmode=="simple"){
mcd.setOpacity(_69,0);
sequential({duration:500},animator({target:_6a,"from":1},"opacity",0),animator({target:_6a,duration:50},"display","none"),animator({target:_69,duration:50},"display","block"),animator({target:_69,"from":0},"opacity",1)).go();
}else{
mcd.setOpacity(_6a,0);
sequential({duration:500},animator({target:_69,"from":1},"opacity",0),animator({target:_69,duration:50},"display","none"),animator({target:_6a,duration:50},"display","block"),animator({target:_6a,"from":0},"opacity",1)).go();
}
}
function bookingsubmit(){
var _6b=formContents("bookingform");
searchchange().addCallback(function(){
var enc="";
for(var i=0;i<_6b[0].length;i++){
enc+="<input type='hidden' name='"+_6b[0][i]+"' value='"+_6b[1][i]+"' />";
}
frames[0].document.body.innerHTML="";
var _6e=frames[0].document.createElement("form");
frames[0].document.body.appendChild(_6e);
_6e.method="POST";
_6e.action="bookinggateway.php";
_6e.innerHTML=enc;
setOnLoad("loader",function(){
addloaded(true);
});
_6e.submit();
});
}
function clickday(_6f,_70,_71){
var d=str2dt(_6f);
var s=str2dt(document.booking.stay_start.value);
var e=str2dt(document.booking.stay_end.value);
if((bookingdatemode=!bookingdatemode)==true){
s=e=d;
}else{
if(d.getTime()<s.getTime()){
e=s;
s=d;
}else{
e=d;
}
}
document.booking.stay_start.value=dt2str(s);
document.booking.stay_end.value=dt2str(e);
show_calendar(_70,_71);
}
function show_calendar(_75,_76){
var _77=["January","February","March","April","May","June","July","August","September","October","November","December"];
var _78=["Su","Mo","Tu","We","Th","Fr","Sa"];
var _79=1;
var _7a=(_76==null||_76==""?new Date():str2dt(_76));
var _7b=new Date(_7a);
_7b.setMonth(_7a.getMonth()-1);
var _7c=new Date(_7a);
_7c.setMonth(_7a.getMonth()+1);
var _7d=new Date(_7a);
_7d.setDate(1);
_7d.setDate(1-(7+_7d.getDay()-_79)%7);
var _7e=new Date(_7c);
_7e.setDate(0);
var _7f=str2dt(document.booking.stay_start.value)||new Date(1);
var _80=str2dt(document.booking.stay_end.value)||_7f;
var _81=new String("<table class='bookingcalendar' cellspacing='0' cellpadding='0' >\n"+"<tr class='calendartitle'>\n"+"<td>\n"+"<a href=\"javascript:show_calendar('"+_75+"', '"+dt2str(_7b)+"' );\">\n"+"<img src='imgs/prev.png' width='16' height='12' border='0' alt='&lt;-'>\n"+"</a>\n"+"</td>\n"+"<td colspan='5'>\n"+_77[_7a.getMonth()]+" "+_7a.getFullYear()+"\n"+"</td>\n"+"<td>\n"+"<a href=\"javascript:show_calendar('"+_75+"', '"+dt2str(_7c)+"' );\">\n"+"<img src='imgs/next.png' width='16' height='12' border='0' alt='-&gt;'>\n"+"</a>\n"+"</td>\n"+"</tr>\n");
_81+="<tr class='calendarweekdays'>\n";
for(var n=0;n<7;n++){
_81+="<td>"+_78[(_79+n)%7]+"\n"+"</td>\n";
}
_81+="</tr>\n";
var _83=new Date(_7d);
while(_83.getMonth()==_7a.getMonth()||_83.getMonth()==_7d.getMonth()){
_81+="<tr>\n";
for(var _84=0;_84<7;_84++){
var _85="day";
if(_83.getTime()==_7a.getTime()){
_85+=" today";
}
if(_83.getDay()==0||_83.getDay()==6){
_85+=" weekendday";
}
if(_83.getTime()==_7f.getTime()){
_85+=" bookstartday";
}
if(_83.getTime()==_80.getTime()){
_85+=" bookendday";
}
if(_83.getTime()>=_7f.getTime()&&_83.getTime()<=_80.getTime()){
_85+=" bookday";
}
_85="class='"+_85+"'";
var _86="class='othermonth'";
if(_83.getMonth()==_7a.getMonth()){
_86="class='thismonth'";
}
_81+="<td   "+_85+" onclick=\"clickday('"+dt2str(_83)+"','"+_75+"', '"+dt2str(_7a)+"');\">";
_81+="<span "+_86+">";
_81+=_83.getDate();
_81+="</span></td>\n";
_83.setDate(_83.getDate()+1);
}
_81+="</tr>\n";
_81+="<tr height='2px'></tr>\n";
}
$(_75).innerHTML=_81+"</table>";
}
function str2dt(_87){
var m=_87.match(/^\s*(\d+)\-(\d+)\-(\d+)\s*$/);
if(!m){
return null;
}
return (new Date(m[1],m[2]-1,m[3]));
}
function dt2str(_89){
if(!_89){
return "";
}
return (new String(_89.getFullYear()+"-"+(_89.getMonth()+1)+"-"+_89.getDate()));
}
function updateroomtype(){
var id=document.booking.villa.value;
if(subvillas[id]){
rooms="";
for(var i=0;i<subvillas[id].length;i++){
rooms+="<option>"+subvillas[id][i]+"</option>";
}
$("roomtypeselector").innerHTML="<select name='roomtype' style='width:204px;'>"+rooms+"</select>";
}else{
$("roomtypeselector").innerHTML="N/A";
}
}

