var form_errors=[],tabNo=0,ajax=null;
var adult=[-99,1,0,0],child=[-99,0,0,0];
/*
if (window.XMLHttpRequest) ajax=new XMLHttpRequest();
else if (window.ActiveXObject) {
	try{
		ajax=new ActiveXObject("MSXML2.XMLHTTP.3.0");
	} catch(e){
		ajax=new ActiveXObject("Microsoft.XMLHTTP");
	}
}

function get(what){
	ajax.open("GET",what,false);
	ajax.send(null);
	var r=ajax.responseText;
}
*/
function cur_format(a){
	if (a>0){
		var str=''+(a+.0001);
		sp=str.split('.'); 
		var k=0,j=0,ar=[],l=sp[0].length;
		for(i=l-1;i>-1;i--){
			j++;
			ar[k++]=sp[0].charAt(i);
			if (j%3==0 && j!=l) ar[k++]=',';
		}
		sp[0]='';
		while(--k>-1) sp[0]+=ar[k];
		a=sp[0]+'.'+sp[1].substring(0,2);
	} else a='--.--';	
	return(a);
}
function show_per_room(){
		var F=document.F1, r=F.rooms, rooms=r.options[r.selectedIndex].value;
		var td=document.getElementById('per_room'),msg='';
		for(i=1;i<=rooms;i++){
			if (rooms>1) msg+='&nbsp; <b>Room-'+i+'</b>&nbsp; ';
			msg+=" Adult:<select name='adult["+i+"]'>";
			for(j=1;j<6;j++) msg+="<option value="+j+(adult[i]==j?' selected>':'>')+j+"</option>";
			msg+="</select> Children:<select name='child["+i+"]'>";
			for(j=0;j<3;j++) msg+="<option value="+j+(child[i]==j?' selected>':'>')+j+"</option>";
			msg+="</select>";
			if (i<rooms) msg+="<br>";
		}
		td.innerHTML=msg;
		var help='Enter children under 12 years old in the Children, anybody else enter under the Adults';
		show_help(help,340);
}
function show_help(help,top){
	var div=document.getElementById('whiteOff'),h=document.getElementById('helper');
	if (!div) return;
	if (help) { 
		div.style.opacity=.85; div.style.filter='alpha(opacity=85)'; 
		h.style.top=top+'px';
		h.innerHTML=help;
	} else { 
		h.innerHTML=''; div.style.opacity=0; div.style.filter='alpha(opacity=0)'; 
	}
}

function setEstimate(type){
	var F=document["F"+type], pr=['0:0','70:133','80:152','90:171','100:190','200:370','170:310','250:450'];
	var p1=0,p2=0,d1=F.dest.options[F.dest.selectedIndex].value, d2=F.dest.options[F.dest2.selectedIndex].value;
	if (F.dest.options[F.dest.selectedIndex].text.indexOf('Only ar')>-1) F.transfer.selectedIndex=1;
	//if (F.unit.options[F.unit.selectedIndex].value==6) pr=[0,120,125,150,160];
	var two_way=(F.transfer.options[F.transfer.selectedIndex].value==2);
	if (parseInt(d1)>0) { sp=pr[parseInt(d1)].split(':'); p1=sp[two_way?1:0]+'.00'; }
	if (parseInt(d2)>0) { sp=pr[parseInt(d2)].split(':'); p2=sp[two_way?1:0]+'.00'; } 
	if (type==3){
		var o1=document.getElementById('est1'), o2=document.getElementById('est2');
		if (o1) o1.innerHTML=cur_format(p1); 
		if (o2) o2.innerHTML=cur_format(p2);
	} else if (type==2){
		if (F.willneedtrans[1].checked) { p1=p2=0; } //else alert(F.willneedtrans[1].checked);
		var villa=0;
		if (F.villa.length==undefined){
			if (F.villa.checked) villa=1;
		} else {
			for(i=0;i<F.villa.length;i++) if (F.villa[i].checked) villa=F.villa[i].value;
		}
		// 2500 per night up to 4 night, 2200 per night if > 4
		var v1=F.aDt.value,v2=F.dDt.value;
		var m1=v1.substring(0,2)-1,d1=v1.substring(3,5),y1='20'+v1.substring(6,8);
		var m2=v2.substring(0,2)-1,d2=v2.substring(3,5),y2='20'+v2.substring(6,8);
		
		if (m1>-1 && m1<12 && d1>0 && d1<32 && m2>-1 && m2<12 && d2>0 && d2<32){
			var D1=new Date(),D2=new Date();
			D1.setFullYear(y1,m1,d1);
			D2.setFullYear(y2,m2,d2);
			var dif=Math.floor((D2.getTime() - D1.getTime())/86400000);
			if (villa==1){
				if (dif==4) p1+=2500*dif; else if (dif>4) p1+=2200*dif;
			}
		}
		var o1=document.getElementById('est')
		if (o1) o1.innerHTML=cur_format(p1);
	}
}

function show_form(n){
	var i,img,div,i_src=['','hotelBtn','villaBtn','transportBtn'];
	document.getElementById('res0').style.display='none';
	for(i=1;i<4;i++){
		img=document.images['IM'+i];
		div=document.getElementById('res'+i);
		if (i==n) { img.src='images/'+i_src[i]+'.gif'; div.style.display=''; }
		else { img.src='images/'+i_src[i]+'Off.gif'; div.style.display='none'; }
	}
	tabNo=n;
	if (n==1) setTimeout(show_per_room,150);
	// reset all errors
	form_errors=[];
	show_help('');
}

function check(obj,len,type){	// type=1:email, type=2: multiple words, type=3: date
	var ret=0,err='',c=['white','red','orange','yellow'];
	if (obj.parentNode.nodeName=='SPAN') {
		var o=obj.parentNode;
		if (obj.value.length<len) {
			ret=1;
			if (type==3 && obj.value=='') {	obj.value='mm/dd/yy'; obj.style.color='#919299'; }
		}
		else if(type==1){
			var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
			if (!emailPattern.test(obj.value)) ret=2;
		} 
		else if (type==2){
			if (obj.value.indexOf(' ')<1) ret=2;
		}
		else if (type==3){
			var dt=new Date(),m=obj.value.substring(0,2)-1,d=obj.value.substring(3,5),y=obj.value.substring(6,8);
			if (m<0 || m>11 || d<1 || d>31) {ret=2; err='Date format is wrong'; }
			else if (y<(dt.getYear()%100) || y>(dt.getYear()%100+2)) { ret=2; err='Year out of range'; }
			else {
				var dt=new Date(), now=dt.getMonth()*32+dt.getDate()+(dt.getYear()%100)*385;
				if (m*32+1*d+y*385<now) {ret=3; err='Date is in the past ?!'; }
				else {
					dt.setFullYear(2000+y,m,d); 
					if (dt.getMonth()!=m) {ret=2; err='Date entered wrong (no '+d+' in this month)'; } 
				}
			}
			if (tabNo==2) setEstimate(2);
		}
		o.style.backgroundColor=c[ret]; o.title=err;
		var F=document['F'+tabNo];
		if (F.subm) {
			if (ret) form_errors[obj.name]=1;
			else if (form_errors[obj.name]) form_errors[obj.name]=0;
			var i=0;
			for (key in form_errors) if (form_errors[key]>0) i++;
			if (i) F.subm.disabled=true; else F.subm.disabled=false;
		}
	} 
	return ret+'|'+err;
}

function cln(obj){
	if (obj.value=='mm/dd/yy') { obj.value=''; } 
	obj.style.color='black'
}
function hideSoon(obj,div){
	setTimeout(function(){ 
		document.getElementById(div).style.visibility='hidden'; 
		check(obj,8,3);
	},200);
	
}
function setCal1(div_id,mmddyy){
	var o=document.getElementById(div_id),F=document['F'+tabNo];
	if (o) o.style.visibility='hidden';
	F.aDt.value=mmddyy;
	if (F.dDt.value=='mm/dd/yy' || F.dDt.value==''){
		var m=parseInt(mmddyy), d=mmddyy.substring(3,5), y=20+mmddyy.substring(6,8);
		var D=new Date();
		D.setFullYear(y,m-1,d*1+4);
		y=D.getYear()%100; if (y<10) y='0'+y;
		m=D.getMonth()+1;  if (m<10) m='0'+m;
		d=D.getDate();     if (d<10) d='0'+d;
		F.dDt.value=m+'/'+d+'/'+y;
		F.dDt.focus();
	}
}
function setCal2(div_id,mmddyy){
	var o=document.getElementById(div_id),F=document['F'+tabNo];
	if (o) o.style.visibility='hidden';
	F.dDt.value=mmddyy;
}