
var exclude=1;
var agt=navigator.userAgent.toLowerCase();
var win=0;var mac=0;var lin=1;
if(agt.indexOf('win')!=-1){win=1;lin=0;}
if(agt.indexOf('mac')!=-1){mac=1;lin=0;}
var lnx=0;if(lin){lnx=1;}
var ice=0;
var ie=0;var ie4=0;var ie5=0;var ie6=0;var com=0;var dcm;
var op5=0;var op6=0;var op7=0;
var ns4=0;var ns6=0;var ns7=0;var mz7=0;var kde=0;var saf=0;
if(typeof navigator.vendor!="undefined" && navigator.vendor=="KDE"){
	var thisKDE=agt;
	var splitKDE=thisKDE.split("konqueror/");
	var aKDE=splitKDE[1].split("; ");
	var KDEn=parseFloat(aKDE[0]);
	if(KDEn>=2.2){
		kde=1;
		ns6=1;
		exclude=0;
		}
	}
else if(agt.indexOf('webtv')!=-1){exclude=1;}
else if(typeof window.opera!="undefined"){
	exclude=0;
	if(/opera[\/ ][5]/.test(agt)){op5=1;}
	if(/opera[\/ ][6]/.test(agt)){op6=1;}
	if(/opera[\/ ][7-9]/.test(agt)){op7=1;}
	}
else if(typeof document.all!="undefined"&&!kde){
	exclude=0;
	ie=1;
	if(typeof document.getElementById!="undefined"){
		ie5=1;
		if(agt.indexOf("msie 6")!=-1){
			ie6=1;
			dcm=document.compatMode;
			if(dcm!="BackCompat"){com=1;}
			}
		}
	else{ie4=1;}
	}
else if(typeof document.getElementById!="undefined"){
	exclude=0;
	if(agt.indexOf("netscape/6")!=-1||agt.indexOf("netscape6")!=-1){ns6=1;}
	else if(agt.indexOf("netscape/7")!=-1||agt.indexOf("netscape7")!=-1){ns6=1;ns7=1;}
	else if(agt.indexOf("gecko")!=-1){ns6=1;mz7=1;}
	if(agt.indexOf("safari")!=-1 || (typeof document.childNodes!="undefined" && typeof document.all=="undefined" && typeof navigator.taintEnabled=="undefined")){mz7=0;ns6=1;saf=1;}
	}
else if((agt.indexOf('mozilla')!=-1)&&(parseInt(navigator.appVersion)>=4)){
	exclude=0;
	ns4=1;
	if(typeof navigator.mimeTypes['*']=="undefined"){
		exclude=1;
		ns4=0;
		}
	}
if(agt.indexOf('escape')!=-1){exclude=1;ns4=0;}
if(typeof navigator.__ice_version!="undefined"){exclude=1;ie4=0;}

var is_ie  = ((navigator.userAgent.toLowerCase().indexOf("msie") != -1) && (navigator.userAgent.toLowerCase().indexOf("opera") == -1));

function _F(x) {
	return document.getElementById(x);	
}
function _C(x) {
	return document.createElement(x);	
}
function _T(x) {
	return document.createTextNode(x);	
}
function _N(x) {
	return document.getElementsByTagName(x);	
}

function _SC(cookieName, cookieValue, nDays) {

	var today = new Date();
	var expire = new Date();

	expire.setTime(today.getTime() + 3600000*24*nDays);
	
	document.cookie = cookieName+"="+escape(cookieValue)
					+ ";expires=" + ((nDays==null || nDays==0) ?  "" : expire.toGMTString());
                 
}


function _GC( name ) {
	
	var start = document.cookie.indexOf( name + "=" );
	var len = start + name.length + 1;
	if ( ( !start ) &&
		( name != document.cookie.substring( 0, name.length ) ) )
		{
			return null;
		}
	if ( start == -1 ) 
		return null;
	var end = document.cookie.indexOf( ";", len );
	if ( end == -1 ) 
		end = document.cookie.length;
	return unescape( document.cookie.substring( len, end ) );
}

function doSubmit(sender, args) {
	var f=_F("Form1");
	
	if (f) {
	
		var el;
		el=_F("__action");
		if (el) el.value=sender;		
		if (args!=null) {
			el=_F("__action_args");
			if (el) el.value=args;
		};		
		
		f.submit();
	};
};

function validateBooking() {
	var required_fields=new Array("","");
	for (var i=0;i<required_fields.length;i++) {	
		
	};	
};

function isEmpty(x) {
	var el=(x.tagName==null) ? _F(x) : x;
	if (el.tagName=="INPUT") {
		if (el.value=="") {
			return true;
		};
	};
	return false;	
};

function copy_values(x,y) {
	var X=_F(x);
	var Y=_F(y);
	if (X!=null && Y!=null) {
		Y.value=X.value;
	};
};

function copy_DropDownList(x,y) {
	var X=_F(x);
	var Y=_F(y);
		
	if (X && Y)
		Y.selectedIndex = X.selectedIndex;
};

function copyBillingInfo() {
	

    // Determine if we have an international traveler or not.	
	var x=_F("Content_Content__ctl0_countryCustTxt");

	var domestic=false;

	if (x) {
		if (x.selectedIndex>0) {
			var o=x.options[x.selectedIndex];
			if (o) {
				if (o.value=="United States") {
					domestic=true;
				} 
			}
		}		
	}
	if (domestic==true) {

        // Have a domestic traveler, so value the state and country drop downs
	    var x=_F("addressRadio3");
	    var y=_F("addressRadio4");
	    x.checked=true;
	    y.checked=false;
	    copy_DropDownList("Content_Content__ctl0_stateCustList","Content_Content__ctl0_stateBillList");
	    copy_DropDownList("Content_Content__ctl0_countryCustTxt","Content_Content__ctl0_countryBillTxt");

	} else {
	
	    // Have an international traveler, so set the Radio Buttons, change wording on State and Zip, and
	    // copy the state and country
	    var x=_F("addressRadio3");
	    var y=_F("addressRadio4");
	    x.checked=false;
	    y.checked=true;
	    
	    
		x=_F("StateBillSpan");if (x) x.innerHTML="Province";		
		x=_F("ZipBillSpan");if (x) x.innerHTML="Zip/Postal Code";
		x=_F("stateBill2Txt");if (x) x.style.display="inline";		
		x=_F("Content_Content__ctl0_stateBillList");if (x) x.style.display="none";		
	    
	    copy_values("stateCust2Txt","stateBill2Txt");
	    copy_DropDownList("Content_Content__ctl0_countryCustTxt","Content_Content__ctl0_countryBillTxt");
	    
	}  
	
	var pHome=_F("phoneCustTxt");
	var pDay = _F("dayTimePhoneTxt");
	var pCell = _F("cellPhoneTxt");
	
	if (pHome.value !="") {
	    copy_values("phoneCustTxt","phoneBillTxt");
	} else if (pDay.value !="") {
	    copy_values("dayTimePhoneTxt","phoneBillTxt");
	} else if (pCell.value !="") {
	    copy_values("cellPhoneTxt","phoneBillTxt");	
	}
	
	// Copy Traveler Data to Billing Data
	copy_values("firstNameCustTxt","firstNameBillTxt");
	copy_values("lastNameCustTxt","lastNameBillTxt");
	copy_values("address1CustTxt","address1BillTxt");
	copy_values("address2CustTxt","address2BillTxt");
	copy_values("cityCustTxt","cityBillTxt");
	copy_values("zipCustTxt","zipBillTxt");	
	
};


function processAdultsNumberListChanged() {

	var x=_F("NumberOfAdults");
	var y=_F("NumberOfChildren");
	
	if (x && y) {
		var n=parseInt(x.options[x.selectedIndex].text);		

		if (doingLoad==false) {
			while (y.options.length>0) {
				y.removeChild(y.options[0]);
			}
		}
		
		for (var i=0;i<21;i++) {
			
			if ((n + i)<=20) {				
				
				y.appendChild(_C("OPTION")).text=i;
				
			}
			
		}
		
		y.selectedIndex=0;
		showChildrenRows();
		
	}

}

function showChildrenRows() {
	var x=_F("NumberOfChildren");
	var p=_F("start_form_dl");
	if (p && x) {
		var els=p.getElementsByTagName("DT");
		var q=els.length;
		var m=q-3;
		var n=parseInt(x.options[x.selectedIndex].text);
		
		if (n!=m) {
		
			if (n>m) {
				for (var i=0;i<(n-m);i++) {
					var el=p.appendChild(_C("DT"));		
					el.appendChild(_T("Child " + (i + m + 1) + " Age "));
					var el1=el.appendChild(_C("SELECT"));
					
					el1.name=el1.id="ChildAge" + (i + m + 1);
					
					var el2=el1.appendChild(_C("OPTION"));
					el2.value=el2.text="-";
					
					for (var j=1;j<19;j++) {
						el2=el1.appendChild(_C("OPTION"));
						el2.value=el2.text=j;
					}
				};
			} else {
				
				for (var i=0;i<(m-n);i++) {
					p.removeChild(els[q - i - 1]);
				};
				
			};
		};		
	};
};

function getSelectByName(x) {
	var els=document.getElementsByTagName("SELECT");
	for (var i=0;i<els.length;i++) {
		if (els[i].name==x)
			return els[i];
	};
	return null;
};

function selectOptionByValue(x,y) {
	for (var i=0;i<x.options.length;i++) {
		if (x.options[i].text==y) {
			x.selectedIndex=i;
			return;
		};	
	};
};

function processInitFilters() {
	var query=(window.location.search!=null) ? window.location.search.substring(1) : "";
	var a=query.split("&");
	for (var i=0;i<a.length;i++) {
		var b=a[i].split("=");
		if (b[0].substring(0,7)=="filter_") {
			var el=getSelectByName(b[0]);
			if (el) {
				selectOptionByValue(el,b[1]);
			};
		};
	};
};

function processFilterChange(x) {
	var el=x;
	var filter=el.name;	
	var query=(window.location.search!=null) ? window.location.search.substring(1) : "";
	var nq="";
	if (query!="") {
		var a=query.split("&");
		var c=false;
		for (var i=0;i<a.length;i++) {
			var b=a[i].split("=");
			var v=a[i];
			if (b[0]==filter) {
				v=filter + "=" + el.options[el.selectedIndex].text;
				c=true;
			};			
			nq=nq + v + "&";
		};		
		if (!c) {
			nq=nq + filter + "=" + el.options[el.selectedIndex].text;
		};					
		query = "?" + nq.substring(0,nq.length);
		if (query.substring(query.length-1)=="&") {
			query=query.substring(0,query.length-1);
		};
	} else {
		query = "?" + filter + "=" + el.options[el.selectedIndex].text;
	};		
	
	var url="main.aspx" + query;	
		
	window.location.href=url;
};

function trim(str,chr) {
	var i;
	var c=chr.length;
	while (str.substring(0,c) == chr)
	{
		str = str.substring(c,str.length);
	}

	while (str.substring(str.length-c,str.length) == chr)
	{
		str = str.substring(0,str.length-c);
	}
	
	return str;
};

function trimStart(str,chr) {
	var i;
	var c=chr.length;
	while (str.substring(0,c) == chr)
	{
		str = str.substring(c,str.length);
	}

	return str;
};

function isValidNames(x) {	
	var el=(x.tagName==null) ? _F(x) : x;	
	
	if (el) {
		var re = new RegExp("^[a-zA-Z\.\']*$","gi");
		
		var b=re.test(el.value);

		if (el.value!="" && b) {
			return (true);
		};	
		return (false);
	};
	return (false);
};

function isNumber(x) {
	var re=new RegExp("^[0-9]+$","g");
	if (re.test(x)) {
		return (true);
	};	
	return (false);
};
function isPositiveNumber(x) {
	var re=new RegExp("^[0-9]+$","g");
	if (re.test(x)) {
		x=trimStart(x,"0");
		if (parseInt(x)>0)
			return (true);
			
	};	
	return (false);
}
function isValidEmail(x) {
	
	var el=_F(x);
	if (el) {

		// current reg exp
		
		var re=null;
		
		if (is_ie) {
		
			re=/^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/gi;
		} else {
			re=new RegExp("^\[a-zA-Z0-9]+[a-zA-Z0-9-\.]*\@[a-zA-Z0-9]+((-[a-zA-Z0-9]+)|([a-zA-Z0-9]*))\.[a-zA-Z0-9]{2,3}$","gi");	
		};	
		
		// reg exp from VS reg exp editor
		//var re=\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*;
		
		if (re.test(el.value)) 
			return (true);
	};
	return (false);
	
};
function isValidPhone(x) {
	var el=_F(x);
	if (el) {
		var re=new RegExp("^[01]?[- .]?\(?[2-9]\d{2}\)?[- .]?\d{3}[- .]?\d{4}$","g");
		if (re.test(el.value)) 
			return (true);
	};
	return (false);
};

function assembleStartInfo(x) {

	var params="&";
	
	var z="";
	
	z=_F("check_in_date").value;
	params=params + "d=" + z;
	
	z=_F("NumberOfNights").options[_F("NumberOfNights").selectedIndex].text;
	params=params + "&nn=" + z;
	
	z=_F("NumberOfAdults").options[_F("NumberOfAdults").selectedIndex].text;
	params=params + "&na=" + z;
	
	z=_F("NumberOfChildren").options[_F("NumberOfChildren").selectedIndex].text;
	params=params + "&nc=" + z;
	
	if (_F("ChildAge1")) {
		z=_F("ChildAge1").options[_F("ChildAge1").selectedIndex].value;
		params=params + "&c1=" + z;
	};	
	if (_F("ChildAge2")) {
		z=_F("ChildAge2").options[_F("ChildAge2").selectedIndex].value;
		params=params + "&c2=" + z;
	};		
	if (_F("ChildAge3")) {	 
		z=_F("ChildAge3").options[_F("ChildAge3").selectedIndex].value;
		params=params + "&c3=" + z;
	};		
	
	window.location.href=x + params;

}

function tryToPopulateStartInfo() {
	
	var q=window.location.search.substring(1);
	var rps=q.split("&");
	
	var ps=new Array();
	
	for (var i=0;i<rps.length;i++) {
		var a=rps[i].split("=");
		
		ps[a[0]]=(a.length==2) ? a[1] : "";
	}		
	
	if (ps["d"] && ps["d"]!="") {
		_F("check_in_date").value=ps["d"];
	}
	if (ps["nn"] && ps["nn"]!="") {
		selectOptionByValue(_F("NumberOfNights"),ps["nn"]);
	}
	if (ps["na"] && ps["na"]!="") {
		selectOptionByValue(_F("NumberOfAdults"),ps["na"]);
	}
	if (ps["nc"] && ps["nc"]!="" && parseInt(ps["nc"])>0) {
		selectOptionByValue(_F("NumberOfChildren"),ps["nc"]);
		
		showChildrenRows();
		
	}
	if (ps["c1"] && ps["c1"]!="") {
		selectOptionByValue(_F("ChildAge1"),ps["c1"]);
	}
	if (ps["c2"] && ps["c2"]!="") {
		selectOptionByValue(_F("ChildAge2"),ps["c2"]);
	}
	if (ps["c3"] && ps["c3"]!="") {
		selectOptionByValue(_F("ChildAge3"),ps["c3"]);
	};

}