
var currentDate = new Date();
var currentYear = currentDate.getFullYear();
var currentMonth = currentDate.getMonth() + 1;
var currentDay = currentDate.getDate();
var currentHour = currentDate.getHours();
var currentMinute = currentDate.getMinutes();
var currentSecond = currentDate.getSeconds();
if (currentMonth < 10){
currentMonth = "0" + currentMonth;
}
if (currentDay < 10){
currentDay = "0" + currentDay;
}
if (currentHour < 10){
currentHour = "0" + currentHour;
}
if (currentMinute < 10){
currentMinute = "0" + currentMinute;
}
if (currentSecond < 10){
currentSecond = "0" + currentSecond;
}
var now = currentYear + "" + currentMonth + "" + currentDay + "" + currentHour + "" + currentMinute + "" + currentSecond;

<!--
function setYear(yearname) {
	var year = parseInt(now.substring(0,4),10);
	var yearlength = document.info.elements[""+yearname].length;
	for(var i = 0; i < yearlength-1; i++)
		document.info.elements[""+yearname].options[i+1] = new Option(year+i,year+i);
}//ENDS SETYEAR
//-->


function SelectCanada() {
	with(document.info){
		if(Province.selectedIndex!=0) { 
			Country.selectedIndex=39; 
			State.selectedIndex=0;
		}//ENDS IF
	}//ENDS WITH
}//ENDS SELECTCANADA


function SelectStateProvince() {
	with(document.info){
		if(Country.selectedIndex!=1)
			State.selectedIndex=0;
		if(Country.selectedIndex!=39)
			Province.selectedIndex=0;
	}//ENDS WITH
}//ENDS SELECTSTATEPROVINCE


function SelectUS() {
	with(document.info){
		if(State.selectedIndex!=0) { 
			Country.selectedIndex=1; 
			Province.selectedIndex=0;
		};
	}
}

function dateafter(dateone,datetwo,stringone,stringtwo) {
	var msg = "";
	
	if(dateone != "" || datetwo != "") {
		if(parseInt(dateone,10) > parseInt(datetwo,10))
			msg += "Please enter in a " + stringone +" so it is before " + stringtwo + "\n";
	}//ENDS IF
	return msg;
}//ENDS DATEAFTER

function validdate(years,months,days,datestring,today) {
	var msg = "";
	if(years == "" || months == "" || days == "") {
		msg += "Please enter in a valid " + datestring + " date when you planning on visiting Hawaii.\n";
	}//ENDS IF
	else if(parseInt(today,10) > parseInt(years+months+days,10))
		msg += "Please enter in a future or present date for " + datestring +"\n";
	return msg;
}//ENDS VALIDDATE


function validateCommon() {

	var regex = new RegExp("^[^<>().,;:\@\[\\]]+([.]{0,1}[^<>().,;:\@\[\\]]+)*[@]{1}(([a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])|[a-zA-Z0-9])(([.][a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])|[a-zA-Z0-9])+$"); 
	var num = new RegExp("^[\\d]+$");
	var startmonth = document.info.StartMonth[document.info.StartMonth.selectedIndex].value;
	var startyear = document.info.StartYear[document.info.StartYear.selectedIndex].value;
	var startday = document.info.StartDay[document.info.StartDay.selectedIndex].value;
	var endmonth = document.info.EndMonth[document.info.EndMonth.selectedIndex].value;
	var endyear = document.info.EndYear[document.info.EndYear.selectedIndex].value;
	var endday = document.info.EndDay[document.info.EndDay.selectedIndex].value;
	var startDate = new Date(startyear,startmonth,startday);
	var endDate = new Date(endyear,endmonth,endday);
	var start = startyear+""+startmonth+""+startday;
	var end = endyear+""+endmonth+""+endday;
	var beentohawaiiNo = document.info.VisitedBefore[0].checked;
	var beentohawaiiYes = document.info.VisitedBefore[1].checked;

	var oahu = document.info.Oahu.checked;
	var maui = document.info.Maui.checked;
	var bigisland = document.info.BigIsland.checked;
	var kauai = document.info.Kauai.checked;
	var lanai = document.info.Lanai.checked;
	var molokai = document.info.Molokai.checked;
	var undecided = document.info.Undecided.checked;

	var stay = document.info.VisitDays.value;
	var state = document.info.State[document.info.State.selectedIndex].value;
	var province = document.info.Province[document.info.Province.selectedIndex].value;
	var country = document.info.Country[document.info.Country.selectedIndex].value;
	var zip = document.info.Zip.value;
	var visitoremail = document.info.UserEmail.value;
	var children = document.info.Children.value;
	var adult = document.info.Adults.value;
	var purposeoftravel = document.info.VisitPurpose[document.info.VisitPurpose.selectedIndex].value;
	
	var travelagents = true; // document.info.InformationFrom[1].checked;
	var businessproductsservices = true; //document.info.InformationFrom[0].checked;


	var msg = "";
	
	msg += validdate(startyear,startmonth,startday,"start",now.substring(0,8));
	msg += validdate(endyear,endmonth,endday,"end",now.substring(0,8));
	msg += dateafter(start,end,"start date","end date");
	
	if(oahu == false && maui == false && bigisland == false && kauai == false && lanai == false && molokai == false && undecided == false)
		msg += "Please check which island you plan to visit.\n";
	if(beentohawaiiYes == false && beentohawaiiNo == false)
		msg += "Please enter in if you have you visited Hawaii.\n";
	if(stay == "")
		msg += "Please enter in the duration of your stay.\n";
//	else if(!num.test(stay))
//		msg += "Please enter in a valid duration of your stay\n";

	if(province.length == 0 && state.length == 0 && country.length == 0)
		msg += "Please enter enter in the State or Province, and the Country you reside in.\n";
	else if(country == "United States" && state == "")
		msg += "Please enter enter in the State you reside in.\n";
	//else if(country != "United States" && state != "")
		//msg += "Please enter enter in United States for country.\n";
	//else if(country != "Canada" && province != "")
		//msg += "Please enter enter in Canada for country.\n";
	else if(country == "Canada" && province == "")
		msg += "Please enter enter the Province you reside in.\n";
		
	if(zip.length == 0)
		msg += "Please enter your zip code.\n";
	
	
	
	if(children == "" && adult =="")
		msg += "Please enter the number of people in your party.\n";
	else if(!num.test(adult))
		msg += "Please enter a valid number of adults.\n";
	else if(!num.test(children) && children != "")
		msg += "Please enter a valid number of Children.\n";
	if(travelagents == false && businessproductsservices == false) 
		msg += "Please enter which information you would like to receive.\n";

	if(visitoremail.length == 0)
		msg += "Please enter in your email address.\n";
	else if(!regex.test(visitoremail))
		msg += "Please enter in a valid email address.\n";

	if(msg == "") {
		setCookie();
		return true;	
	}//ENDS IF
	alert(msg);
	return false;

}
function isLeap(years) {
	if(years == "0000")
		return false;
	var yearss = parseInt(years,10);
	var bool = false;
	if(yearss % 4 == 0)
		bool = true;
	if(yearss % 100 == 0)
		bool = false;
	if(yearss % 400 == 0)
		bool = true;
	return bool;
}/*ENDS ISLEAP*/



function updateSingledate(dayname,monthname,yearname) {
	var firstmonth = document.info.elements[""+monthname][document.info.elements[""+monthname].selectedIndex].value;
	var firstday = document.info.elements[""+dayname][document.info.elements[""+dayname].selectedIndex].value;
	var firstyear = document.info.elements[""+yearname][document.info.elements[""+yearname].selectedIndex].value;
	var value = "";
	var days = 31;
	var dayindex = document.info.elements[""+dayname].selectedIndex;
	if(firstmonth != "00") {
		var optionslength = document.info.elements[""+dayname].options.length;
		switch(firstmonth) {
			case "01":
			case "03":
			case "05":
			case "07":
			case "08":
			case "10":
			case "12":
				days = 31+1;
				break;
			case "02":
				if(isLeap(firstyear)) 
					days = 29+1;
				else
					days = 28+1;
				break;
			case "04":
			case "06":
			case "09":
			case "11":
				days = 30+1;
				break;
		}//ENDS SWITCH
		if(days > optionslength) {
			for(var i = 1; i < days;i++) {
				if(i < 10)
					value = "0" + i;
				else
					value = i + "";
				document.info.elements[""+dayname].options[i] = new Option(i,value);
			}//ENDS FOR
		}//ENDS IF
		document.info.elements[""+dayname].options.length=days;
		days -= 1;
		//alert("day index = " + dayindex);
		//alert("days = " + days);
		//alert(dayindex > days);
		if(dayindex > days)
			document.info.elements[""+dayname].selectedIndex=days;
		else
			document.info.elements[""+dayname].selectedIndex=dayindex;
	}//ENDS IF
}//ENDS UPDATESINGLEDATE


function update(indexss,yearss,monthss) {

	/*alert("index = " + indexss);
	alert("month = " + monthss);
	alert("year = "+ yearss);*/
	var length = document.info.elements[indexss].options.length;
	var leap = isLeap(yearss);
	var temp = "";
	if(monthss === "02") {
		if(leap == true) {
			if(length < 30) {
				for(var i = 1; i < 30;i++) {
					if(i < 10)
						temp = "0" + i;
					else
						temp = i;
					document.info.elements[indexss].options[i] = new Option(i,temp);
				}/*ENDS FOR*/
			}/*ENDS IF*/
			document.info.elements[indexss].options.length = 30;
		}/*ENDS LEAP*/
		else {
			if(length < 29) {
				for(var i = 1; i < 29;i++) {
					if(i < 10)
						temp = "0" + i;
					else
						temp = i;
					document.info.elements[indexss].options[i] = new Option(i,temp);
				}/*ENDS FOR*/
			}/*ENDS IF*/
			document.info.elements[indexss].options.length = 29;
		}/*ENDS ELSE*/
	}/*ENDS FEBURARY*/
	else if(monthss === "01" || monthss === "03" || monthss === "05" || monthss === "07" || monthss === "08" || monthss === "10" || monthss === "12") {
		if(length < 32) {
			
			for(var i = 1; i < 32;i++) {
				if(i < 10)
					temp = "0" + i;
				else
					temp = i;
				document.info.elements[indexss].options[i] = new Option(i,temp);
			}/*ENDS FOR*/
		}/*ENDS IF*/
		document.info.elements[indexss].options.length = 32;
	}/*ENDS ELSE IF*/
	else {
		if(length < 31) {
			for(var i = 1; i < 31;i++) {
				if(i < 10)
					temp = "0" + i;
				else
					temp = i;
				document.info.elements[indexss].options[i] = new Option(i,temp);
			}/*ENDS FOR*/
		}/*ENDS IF*/
		document.info.elements[indexss].options.length = 31;
	}/*ENDS ELSE*/
				
}/*ENDS UPDATEDROPDOWN*/



function updateDates(index) {
	var firstmonth = document.info.elements["StartMonth"][document.info.elements["StartMonth"].selectedIndex].value;
	var firstday = document.info.elements["StartDay"][document.info.elements["StartDay"].selectedIndex].value;
	var firstyear = document.info.elements["StartYear"][document.info.elements["StartYear"].selectedIndex].value;
	var secondmonth = document.info.elements["EndMonth"][document.info.elements["EndMonth"].selectedIndex].value;;
	var secondday = document.info.elements["EndDay"][document.info.elements["EndDay"].selectedIndex].value;
	var secondyear = document.info.elements["EndYear"][document.info.elements["EndYear"].selectedIndex].value;
	var firstdate = firstyear + firstmonth + firstday;
	var seconddate = secondyear + secondmonth + secondday;
	if(index == "0") { //FIRST CHANGED
		//FULL DATE	
		if(firstmonth != "" && firstday != "" && firstyear != "") {
			update("StartDay",firstyear,firstmonth);
			//alert(firstday + " < = " +  (document.info.elements["StartDay"].length-1));
			//alert(parseInt(firstday,10) <= document.info.elements["StartDay"].length-1);
			if(parseInt(firstday,10) <= document.info.elements["StartDay"].length-1)
				document.info.elements["StartDay"].selectedIndex = parseInt(firstday,10);
			else
				document.info.elements["StartDay"].selectedIndex = (document.info.elements["StartDay"].length-1);
			//Full second date
			if(secondmonth != "00" && secondday != "00" && secondyear != "0000") {
				if(parseInt(firstdate,10) > parseInt(seconddate,10)) {
					document.info.elements["EndMonth"].selectedIndex = document.info.elements["StartMonth"].selectedIndex;
					document.info.elements["EndYear"].selectedIndex = document.info.elements["StartYear"].selectedIndex;
					document.info.elements["EndDay"].selectedIndex = 0;
					update("EndDay",firstyear,firstmonth);
					document.info.elements["EndDay"].selectedIndex = document.info.elements["StartDay"].selectedIndex;
				}//ENDS IF
			}//ENDS IF

		}//ENDS IF
		
	}//ENDS IF
	else { //SECOND CHANGED
		if(secondmonth != "" && secondday != "" && secondyear != "") {
			update("EndDay",secondyear,secondmonth);
			if(parseInt(secondday,10) <= document.info.elements["EndDay"].length-1)
				document.info.elements["EndDay"].selectedIndex = parseInt(secondday,10);
			else
				document.info.elements["EndDay"].selectedIndex = (document.info.elements["EndDay"].length-1);
			//Full second date
			if(firstmonth != "00" && firstday != "00" && firstyear != "0000") {
				if(parseInt(firstdate,10) > parseInt(seconddate,10)) {
					document.info.elements["StartMonth"].selectedIndex = document.info.elements["EndMonth"].selectedIndex;
					document.info.elements["StartYear"].selectedIndex = document.info.elements["EndYear"].selectedIndex;
					document.info.elements["StartDay"].selectedIndex = 0;
					update("StartDay",secondyear,secondmonth);
					document.info.elements["StartDay"].selectedIndex = document.info.elements["EndDay"].selectedIndex;
				}//ENDS IF
			}//ENDS IF
		}//ENDS IF
	}//ENDS ELSE
}


function updateStartandEndDates() {
	if(getCookie('StartMonth') != '' && getCookie('StartYear') != '')
		updateSingledate('StartDay','StartMonth','StartYear');
	if(getCookie('EndMonth') != '' && getCookie('EndYear') != '')
		updateSingledate('EndDay','EndMonth','EndYear');
}//ENDS UPDATESTARTANDENDDATES




function loadData() {

	setYear('EndYear');
	setYear('StartYear');
	populateFromCookie();
}//ENDS LOADDATA