// JavaScript Document
function SummerLibraryHours() //Function to define hours during summer.
{
	var str = new String();
	var curdate = new Date(); //todays date
	var wday = curdate.getDay(); //weekday 0-6
	var mday = curdate.getDate();  //day of the month 1-31
	var monthday = curdate.getMonth(); //month 0-11 
    //curdate.setMonth(11); //debugging
	//curdate.setDate(17); //debugging
	
	var beginDate = new Date();
	var endDate = new Date();
	var beginDate2 = new Date();
	var endDate2 = new Date();
	
	
	//Start Special Days closed in schedule
	var memorialDay = new Date();
	memorialDay.setMonth(4);
	memorialDay.setDate(25);
	
	var independenceDay =new Date();
	independenceDay.setMonth(6);
	independenceDay.setDate(3);
	
	var retreatDay = new Date();
	retreatDay.setMonth(7);
	retreatDay.setDate(17);
	//
	
	
	
	
	beginDate.setMonth(4); //Set first half of the scheduled dates
	beginDate.setDate(18);
	
	endDate.setMonth(7); 
	endDate.setDate(9);
	
	beginDate2.setMonth(7); //set second half of the scheduled dates
	beginDate2.setDate(10);
	
	endDate2.setMonth(7);
	endDate2.setDate(23);

	/*document.write(curdate + "<br />");
	document.write(beginDate + "<br />");
	document.write(endDate + "<br />");
	document.write(beginDate2 + "<br />");
	document.write(endDate2 + "<br />");
	document.write(memorialDay + "<br />");
	document.write(independenceDay + "<br />");
	document.write(retreatDay + "<br />");
	document.write(wday + "<br>");
	document.write(mday+ "<br>");
	document.write(monthday + "<br>");*/
	
	str = curdate.toLocaleDateString() + "<br>";
	
	if(curdate.getTime() == memorialDay.getTime() || curdate.getTime() == independenceDay.getTime() || curdate.getTime() == retreatDay.getTime())
	{
		str += "<li>Library is Closed.</li>";
	}
	else if(curdate >= beginDate && curdate <= endDate)
	{
		if(wday == 0 || wday == 6){
		str += "<li>Library is Closed.</li>";
		}
		else if(wday >= 1 && wday <= 4){
		str += "<li>8:00 a.m. - 5:00 p.m.</li>";
		}
		else if(wday == 5){
		str += "<li>8:00 a.m. - 4:30 p.m.</li>";
		}
	}
	else if(curdate >=beginDate2 && curdate <= endDate2)
	{
		if(wday == 0 || wday == 6){
		str += "<li>Library is Closed.</li>";
		}
		else if(wday >= 1 && wday <= 4){
		str += "<li>8:30 a.m. - 4:30 p.m.</li>";
		}
	}
	
	return(str);
	
}
//=======================================================================================================

function FallLibraryHours() //Function to define Fall Semester Hours
{
	//-------------------Define variables------------------------
	var str = new String();
	var curdate = new Date(); //todays date
	//curdate.setMonth(0); //debugging
	//curdate.setDate(4); //debugging
	//curdate.setYear(2010); //debugging
	var wday = curdate.getDay(); //weekday 0-6
	var mday = curdate.getDate();  //day of the month 1-31
	var monthday = curdate.getMonth(); //month 0-11 
	
	
	
	//Start the sets for regular hours
	var start1 = new Date(); 
	var start2 = new Date(); 
	var start3 = new Date();
	var end1 = new Date();
	var end2 = new Date();
	var end3 = new Date();
	
	//Sets for irregular hours
	var midtermbegin = new Date(); //Mid Term Break Variables
	var midtermend = new Date();
	
	var recess_start = new Date(); //Thanksgiving Recess Variables
	var recess_end = new Date();
	
	var extended_start = new Date(); //Extended Hours for Finals Variables
	var extended_end = new Date(); 
	
	var holiday_start = new Date(); //Hoilday Hours Variables
	var holiday_end = new Date(); 
	
	// -----------------------------------------------------------
	
	
	//First Set (Regular Hours)
	start1.setMonth(7); //August
	start1.setDate(24);
	end1.setMonth(9); //October
	end1.setDate(8);
	
	//Midterm Break
	midtermbegin.setMonth(9); //October
	midtermbegin.setDate(9);
	midtermend.setMonth(9); //October
	midtermend.setDate(13);
	
	//Second Set (Regular Hours)
	start2.setMonth(9); //October
	start2.setDate(14);
	end2.setMonth(10); //November
	end2.setDate(23);
	
	//Thanksgiving Recess
	recess_start.setMonth(10); //November
	recess_start.setDate(24);
	recess_end.setMonth(10); //November
	recess_end.setDate(29);
	
	//Third Set (Regular Hours)
	start3.setMonth(10); //November
	start3.setDate(30);
	end3.setMonth(11); //December
	end3.setDate(16);
	
	//Extended Hours for Finals
	extended_start.setMonth(11); //December
	extended_start.setDate(5);
	extended_end.setMonth(11); //December
	extended_end.setDate(10);
	
	//Holiday Break
	holiday_start.setMonth(11); //December
	holiday_start.setDate(12);
	holiday_end.setMonth(0); //January
	holiday_end.setDate(18);
	//holiday_end.setYear(2010);
	
	
	//------------------------------------
	
	str = curdate.toLocaleDateString() + "<br>"; //Display Current Date
	
	//=========Define Rules for Regular Hours===========
	if((curdate >= start1 && curdate <= end1) || (curdate >= start2 && curdate <= end2) || (curdate >= start3 && curdate <= end3))
	{
		if(wday >= 1 && wday <=4){ //Monday through Thursday
			str += "<li>8:00 a.m - 1:00 a.m.</li>";
		}
		else if(wday ==5){ //Friday
			str += "<li>8:00 a.m - 11:00 p.m.</li>";
		}
		else if(wday==6){ //Saturday
			str += "<li>10:00 a.m - 11:00 p.m.</li>";
		}
		else if(wday==0){ //Sunday
			str += "<li>Noon - 1:00 a.m.</li>";
		}
	}
	//==================================================
	
	//=========Define Rules for Mid-Term Break==========
	if(curdate >= midtermbegin && curdate <= midtermend)
	{
		switch(wday){
			case 5: //Friday
			str += "<li>8:00 a.m - 4:30 p.m.</li>";
			break;
			case 6: //Saturday
			str += "<li>Noon - 8:00 p.m.</li>";
			break;
			case 0: //Sunday
			str += "<li>Noon - 8:00 p.m.</li>";
			break;
			case 1: //Monday
			str += "<li>8:30 a.m. - 8:00 p.m.</li>";
			break;
			case 2: //Tuesday
			str += "<li>8:30 a.m. - 11:00 p.m.</li>";
			break;
			//Regular hours resume Wednesday
		}
	}
	//==================================================
	
    //======Define Rules for Thanksgiving Recess========
	if(curdate >= recess_start && curdate <= recess_end){
		switch(wday){
			case 2: //Tuesday
			str += "<li>8:00 a.m - 4:30 p.m.</li>";
			break;
			case 3: //Wednesday
			str += "<li>8:30 a.m - 4:30 p.m.</li>";
			break;
			case 4: //Thursday
			str += "<li>Library is Closed</li>";
			break;
			case 5: //Friday
			str += "<li>Library is Closed</li>";
			break;
			case 6: //Saturday
			str += "<li>Library is Closed</li>";
			break;
			case 0: //Sunday
			str += "<li>5:00 p.m - 1:00 a.m.</li>";
			break;

		}
	}	
	//==================================================
	
	//======Define Rules for Extended Hours=============
	if(curdate >= extended_start && curdate <= extended_end){
		switch(wday){
			case 6: //Saturday
			str += "<li>8:00 a.m - 2:00 a.m.</li>";
			break;
			case 0: //Sunday
			str += "<li>10:00 a.m - 2:00 a.m.</li>";
			break;
			case 1: //Monday
			str += "<li>8:00 a.m - 2:00 a.m.</li>";
			break;
			case 2: //Tuesday
			str += "<li>8:00 a.m - 2:00 a.m.</li>";
			break;
			case 3: //Wednesday
			str += "<li>8:00 a.m - 2:00 a.m.</li>";
			break;
			case 4: //Thursday
			str += "<li>8:00 a.m - 2:00 a.m.</li>";
			break;
			case 5: //Friday
			str += "<li>8:00 a.m - 4:30 p.m.</li>";
			break;
		}
	}
	//==================================================
	
	//======Define Rules for Holiday Hours==============
	if(curdate >= holiday_start && curdate <= holiday_end)
	{
		if(monthday == 11)
		{
			switch(mday)
			{
				case 12: case 13: case 19: case 20: case 23: case 24: case 25: case 26: case 27: case 28: case 29: case 30: case 31:
				str += "<li>Library is Closed</li>";
				break;
				case 14: case 15: case 16: case 17: case 21: case 22: 
				str += "<li>8:30 a.m. - 4:30 p.m.</li>";
				break;
				case 18:
				str += "<li>8:30 a.m. - Noon</li>";
				break;
				default:
				str += "Sorry this is not currently available, Please check the schedule below";
				break;
			}
		}
		if(monthday == 0)
		{
			switch(mday)
			{
				case 1: case 2: case 3: case 9: case 10: case 16: case 17:
				str += "<li>Library is Closed</li>";
				break;
				case 4: case 5: case 6: case 7: case 8: case 11: case 12: case 13: case 14: case 15: case 18:
				str += "<li>8:30 a.m. - 4:30 p.m.</li>";
				break;				
			}
		}
				
	}
	//==================================================
	
  return (str);
}
