// JavaScript Document




function confirmSubmit(func1, func2){
	
	if (func1 == false){
		return false;
	}
	
	if (func2 == false){
		return false;
	}
	
		return true;
}//confirm submit




function showDate(inputMonth, inputDay, inputYear){
	
	
//Minimum time allowed between current day and requested visit (7days * milliseconds in one day)
var minDays = 7;
var minTime = minDays * 86400000;

/*Get current date*/ 
var today = new Date();

//Desired date
var useDate = new Date();
useDate.setFullYear(inputYear, inputMonth - 1, inputDay);

	//Ensure the use does not ask for day 31 in february--february has only 28 days
	if (ensureDateExists(inputMonth, inputDay, inputYear) == false){
		return false;
	}
	
	
	
	//Ensure date is not blocked out for scheduling
	if (dateIsValid(inputMonth, inputDay, inputYear) == false){
		alert("Please remember that campus tours are only offered Monday thru Friday " +
			  "and on the second Saturday of each month.");
		return false;
	}
	
	
	
	//Ensure there are at least the minimum number of days between now and requested date.
	if (meetMinimumTime(today.valueOf(), useDate.valueOf(), minTime) == false){
		alert("Please allow at least " + minDays + " days between now and the date of your visit."			        );
		return false;
	}
	



var daysInBetween = (useDate.valueOf() - today.valueOf())/ 86400000; //86400000 = time(ms)/day

alert("You have selected a valid date. There are " + daysInBetween + " days between now and your requested campus visit.");

return true;
}




function ensureDateExists(month, day, year){

	if (year == 2009 || year == 2010){
	//list all months that have fewer than 31 days
		var daysInFeb = 28;
		var daysInApr = 30;
		var daysInJun = 30;
		var daysInSep = 30;
		var daysInNov = 30;
	}
	
	//February
	if (month == 2){
		if (day > daysInFeb){
			alert("There are only " + daysInFeb + " days in February.");
			return false;
		}
	}
	
	//April
	if (month == 4){
		if (day > daysInApr){
			alert("There are only " + daysInApr + " days in April.");
			return false;
		}
	}
	
	//June
	if (month == 6){
		if (day > daysInJun){
			alert("There are only " + daysInJun + " days in June.");
			return false;
		}
	}
	
	//September
	if (month == 9){
		if (day > daysInSep){
			alert("There are only " + daysInSep + " days in September.");
			return false;
		}
	}
	
	//November
	if (month == 11){
		if (day > daysInNov){
			alert("There are only " + daysInNov + " days in November.");
			return false;
		}
	}
	
	else{
		return true;
	}
	
}//ensureDateExists()



function meetMinimumTime(today, wantedDay, minTime){
	if ( (wantedDay - today) >= minTime){
		return true;
	}
	
	if ( (wantedDay - today) < minTime){
		return false;
	}
}


function dateIsValid(month, day, year){
	
	if (year == 2009){
		
		//September
		if (month == 9){
			
			//Invalid days of September
			invalidDaysOfSep = new Array(5,6,13,19,20,26,27);
			
			for (var i=0; i <= invalidDaysOfSep.length ; i++)
			{
				if (day == invalidDaysOfSep[i])
					{
					return false;
					}
					
			}//for

		}//month == 9
	
		
		
		//October
		if (month == 10){
			
			//Invalid days of October
			invalidDaysOfOct = new Array(3,4,11,17,18,24,25,31);
			
			for (var i=0; i <= invalidDaysOfOct.length ; i++)
			{
				if (day == invalidDaysOfOct[i])
					{
					return false;
					}
					
			}//for
	
		}//month == 10
		
		
		//November
		if (month == 11){
			
			//Invalid days of November
			invalidDaysOfNov = new Array(1,7,8,15,21,22,28,29);
			
			for (var i=0; i <= invalidDaysOfNov.length ; i++)
			{
				if (day == invalidDaysOfNov[i])
					{
					return false;
					}
					
			}//for

		}//month == 11
		
		
		//December
		if (month == 12){
			
			//Invalid days of December
			invalidDaysOfDec = new Array(5,6,13,19,20,26,27);
			
			for (var i=0; i <= invalidDaysOfDec.length ; i++)
			{
				if (day == invalidDaysOfDec[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 12
	
	
	}//if 2009
	
	
	/*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX*/
	
	
	
	
	
	
	
	
	
	
	
	
	
	if (year == 2010){
		
		//January
		if (month == 1){
			
			//Invalid days of September
			invalidDaysOfJan = new Array(2,3,10,16,17,23,24,30,31);
			
			for (var i=0; i <= invalidDaysOfJan.length ; i++)
			{
				if (day == invalidDaysOfJan[i])
					{
					return false;
					}
					
			}//for

		}//month == 1
	
		
		
		//February
		if (month == 2){
			
			//Invalid days of February
			invalidDaysOfFeb = new Array(6,7,14,20,21,27,28);
			
			for (var i=0; i <= invalidDaysOfFeb.length ; i++)
			{
				if (day == invalidDaysOfFeb[i])
					{
					return false;
					}
					
			}//for
	
		}//month == 2
		
		
		//March
		if (month == 3){
			
			//Invalid days of March
			invalidDaysOfMar = new Array(6,7,14,20,21,27,28);
			
			for (var i=0; i <= invalidDaysOfMar.length ; i++)
			{
				if (day == invalidDaysOfMar[i])
					{
					return false;
					}
					
			}//for

		}//month == 3
		
		
		//April
		if (month == 4){
			
			//Invalid days of April
			invalidDaysOfApr = new Array(3,4,11,17,18,24,25);
			
			for (var i=0; i <= invalidDaysOfApr.length ; i++)
			{
				if (day == invalidDaysOfApr[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 4
		
		
		//May
		if (month == 5){
			
			//Invalid days of May
			invalidDaysOfMay = new Array(1,2,9,15,22,23,29,30);
			
			for (var i=0; i <= invalidDaysOfMay.length ; i++)
			{
				if (day == invalidDaysOfMay[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 5
		
		
		//June
		if (month == 6){
			
			//Invalid days of June
			invalidDaysOfJun = new Array(5,6,13,19,20,26,27);
			
			for (var i=0; i <= invalidDaysOfJun.length ; i++)
			{
				if (day == invalidDaysOfJun[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 6
		
		
		//April
		if (month == 7){
			
			//Invalid days of July
			invalidDaysOfJul = new Array(3,4,11,17,18,24,25,31);
			
			for (var i=0; i <= invalidDaysOfJul.length ; i++)
			{
				if (day == invalidDaysOfJul[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 7
		
		
		//April
		if (month == 8){
			
			//Invalid days of August
			invalidDaysOfAug = new Array(1,7,8,15,21,22,28,29);
			
			for (var i=0; i <= invalidDaysOfAug.length ; i++)
			{
				if (day == invalidDaysOfAug[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 8
		
		
		//September
		if (month == 9){
			
			//Invalid days of September
			invalidDaysOfSep = new Array(4,5,12,18,19,25,26);
			
			for (var i=0; i <= invalidDaysOfSep.length ; i++)
			{
				if (day == invalidDaysOfSep[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 9
		
		
		//October
		if (month == 10){
			
			//Invalid days of October
			invalidDaysOfOct = new Array(2,3,10,16,17,23,24,30,31);
			
			for (var i=0; i <= invalidDaysOfOct.length ; i++)
			{
				if (day == invalidDaysOfOct[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 10
		
		
		//November
		if (month == 11){
			
			//Invalid days of November
			invalidDaysOfNov = new Array(6,7,14,20,21,27,28);
			
			for (var i=0; i <= invalidDaysOfNov.length ; i++)
			{
				if (day == invalidDaysOfNov[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 11
		
		
		//December
		if (month == 12){
			
			//Invalid days of December
			invalidDaysOfDec = new Array(4,5,12,18,19,25,26);
			
			for (var i=0; i <= invalidDaysOfDec.length ; i++)
			{
				if (day == invalidDaysOfDec[i])
					{
					return false;
					}
					
			}//for
			
		}//month == 12
	
	
	}//if 2010
	
	return true;
	
	
}//dateIsValid()



