// Array of the months.
var monthNamesArray = new Array(12);
monthNamesArray[0]  = "January";
monthNamesArray[1]  = "February";
monthNamesArray[2]  = "March";
monthNamesArray[3]  = "April";
monthNamesArray[4]  = "May";
monthNamesArray[5]  = "June";
monthNamesArray[6]  = "July";
monthNamesArray[7]  = "August";
monthNamesArray[8]  = "September";
monthNamesArray[9]  = "October";
monthNamesArray[10] = "November";
monthNamesArray[11] = "December";
  
// Determines the events calenders start and end date ranges and then redirects 
// and passes the information along the querystring.
function EventsCalenderRedirect()
{
	var queryStr;
	var month   = document.getElementById('month');
	var day     = document.getElementById('day');
	var year    = document.getElementById('year');
	var monthER = document.getElementById('month_end_range');
	var dayER   = document.getElementById('day_end_range');
	var yearER  = document.getElementById('year_end_range');
   
	if(month != null && day != null && year != null)
	{
		if(ValidateMonthDay(month.value, day.value) == true)
		{
			queryStr = '../asp/kids.aspx?fileName=eventscalender.asp&month=' + month.value + '&day=' + day.value + '&year=' + year.value;
	   
			if(monthER != null && dayER != null && yearER != null)
			{
				if(ValidateMonthDay(monthER.value, dayER.value) == true)
				{
					// Make sure that the end date is not before the start date.
					var startDate = new Date(year.value, month.value, day.value);
					var endDate = new Date(yearER.value, monthER.value, dayER.value);

					// Make sure that the end date is not before the start date.
					if (Date.parse(startDate) > Date.parse(endDate))
					{
						alert('Invalid Date Range!\nStart Date cannot be after End Date!')
					    return;
					}
	 
					queryStr = queryStr + '&month_end_range=' + monthER.value + '&day_end_range=' + dayER.value + '&year_end_range=' + yearER.value;
				}
				else
				{
					alert('Error in the End Date:  ' + monthNamesArray[parseInt(monthER.value)-1] + ' can not have ' + dayER.value + ' days');
					return;
				}
			}
			document.location.href = queryStr;
		}
		else
		{
			alert('Error in the Start Date:  ' + monthNamesArray[parseInt(month.value)-1] + ' can not have ' + day.value + ' days');
		}
	}
	else
	{
		alert('Error in the date format.  Please try again.');
	}
}

// Validates that the day is valid for the month (february can't have 30 days, etc).
function ValidateMonthDay(month, day)
{
	var result = true;
	
	if(month == 2 && day > 28)
	{
		result = false;
	}
	else if(month == 4 && day > 30)
	{
		result = false;
	}
	else if(month == 6 && day > 30)
	{
		result = false;
	}
	else if(month == 9 && day > 30)
	{
		result = false;
	}
	else if(month == 11 && day > 30)
	{
		result = false;
	}
	
	return result;
}