function MM_swapImgRestore() { //v3.0

  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;

}



function MM_preloadImages() { //v3.0

  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();

    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)

    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}

}



function MM_findObj(n, d) { //v4.01

  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {

    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}

  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];

  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);

  if(!x && d.getElementById) x=d.getElementById(n); return x;

}



function MM_swapImage() { //v3.0

  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)

   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}

}



// Use for PopUp Windows

function popUp(theURL,winName,features) { //v2.0

  window.open(theURL,winName,features);

}

// EMAIL A FRIEND
function MM_openBrWindow(theURL,winName,features) { //v3.0

  var myLocation = location.href;

  //alert("Location" + myLocation);

  var newLoc;



  newLoc = theURL + "?REFERER=" + escape(myLocation);

 

  //alert("newLoc" + newLoc);

  window.open(newLoc,winName,features);

}

function show(name,src) {
    if (document.images)
        document.images[name].src = src;
}

// QUERY PAGE

function makeArray() {
    this[0] = makeArray.arguments.length;
    for (i = 0; i<makeArray.arguments.length; i++)
        this[i+1] = makeArray.arguments[i];
}

var accumulate    = new makeArray(  0, 31, 59, 90,120,151,181,212,243,273,304,334);
var accumulateLY  = new makeArray(  0, 31, 60, 91,121,152,182,213,244,274,305,335);

function LeapYear(year) {
    if ((year/4)   != Math.floor(year/4))   return false;
    if ((year/100) != Math.floor(year/100)) return true;
    if ((year/400) != Math.floor(year/400)) return false;
    return true;
}

function getJulian(day,month,year) {
    if (LeapYear(year))
        return (day + accumulateLY[month]);
    else
        return (day + accumulate[month]);
}

function numberOfDays(month,year) {
	var numDays=new Array(0,31,28,31,30,31,30,31,31,30,31,30,31)
	n = numDays[month]
	if(month == 02 && year % 4 == 0) ++n
	return n
}

function dateCheck(object,inYear,inMonth,inDay) {
	var arrMonth = object.StartMonth.selectedIndex
	var arrDay = object.StartDay.selectedIndex
	var arrYear = object.StartYear.selectedIndex


//alert("CurrentYR:" + inYear + " arrYr:" + arrYear);

	if (arrYear != 0 && arrMonth != 0 && arrDay != 0) {
		arrYear = object.StartYear.options[object.StartYear.selectedIndex].value;
		var arrToJulian = getJulian(arrDay,arrMonth,arrYear)
		var todaysDate = getJulian(inDay,inMonth,inYear)

		var depMonth = object.DepMonth.selectedIndex
		var depDay = object.DepDay.selectedIndex

		

		if (object.DepYear.selectedIndex != 0){
			var depYear = object.DepYear.options[object.DepYear.selectedIndex].value;
		}else{
			var depYear = 0
		}	
	
		if (inYear == arrYear && arrToJulian < todaysDate){
			alert ("You have entered an incorrect Arrival Date! The arrival date chosen is before today's date.")
				return false
		}
			
		if (depMonth <= 0 || depDay <= 0 || depYear <= 0 ){
			alert ("You have entered an incorrect departure date.\nPlease check that you have entered a correct month, day and year.");
			return false
		}
		var depToJulian = getJulian(depDay,depMonth,depYear)
		
		if (arrYear > depYear){
				alert ("You must select a departure date that is after your arrival date!")
				return false
		}

		if (arrYear == depYear){
			if(arrToJulian > depToJulian){
				alert ("You must select a departure date that is after your arrival date!")
				return false
			}
			/*if ( (depToJulian-arrToJulian) > 21){
				alert ("For stays longer then 3 weeks please contact our office by phone")
				return false
			}*/
		}
		if (arrYear < depYear){
			depToJulian = depToJulian + 365

			if(arrToJulian > depToJulian){
				alert ("You must select a departure date that is after your arrival date!")
				return false
			}

			/*if ( (depToJulian-arrToJulian) > 21){
				alert ("For stays longer then 3 weeks please contact our office by phone")
				return false
			}*/

		}
		// Prevent reservations that are more than 11 months in advance
		if((arrMonth >= inMonth) && (arrYear > inYear)){
			alert("We only accept bookings 11 months in advance.\nPlease select an earlier arrival date or call our office");
			return false;
		}

	return true
  alert ("Month:" + arrMonth + "Day:" + arrDay + "Year:" + arrYear + "ArrJulian:" + arrToJulian + "\nMonth:" + depMonth + "Day:" + depDay + "Year:" + depYear + "DepJulian:" + depToJulian);
	}
}



//-->
