function getCorrectedYear(year) {
    year = year - 0;
    if (year < 70) return (2000 + year);
    if (year < 1900) return (1900 + year);
    return year;
}

function SetDefaultDates(objForm,StartMonth,EndMonth) {
	/* preset month list length based on 12 months/year */
	var ListLength = 12;

	/* assure 2-digit start month */
	if (StartMonth.length == 1) {
		StartMonth = '0' + StartMonth
	}

	/* assure 2-digit end month */
	if (EndMonth.length == 1) {
		EndMonth = '0' + EndMonth
	}

	/* select default start month */
	for (var i = 0; i < ListLength; i++) {
		if (objForm.StartMonth.options[i].value == StartMonth) {
			objForm.StartMonth.options[i].selected = true;
		}
	}
	/*  */
	PopulateStartDay(objForm,0);

	/* select default end month */
	for (var i = 0; i < ListLength; i++) {
		if (objForm.EndMonth.options[i].value == EndMonth) {
			objForm.EndMonth.options[i].selected = true;
		}
	}
	/*  */
	PopulateEndDay(objForm,0);
}

function PopulateStartDay(objForm,picked) {

	var timeA = new Date(objForm.StartYear.options[objForm.StartYear.selectedIndex].text, objForm.StartMonth.options[objForm.StartMonth.selectedIndex].value,1);
	var timeDifference = timeA - 86400000;
	var timeB = new Date(timeDifference);
	var daysInMonth = timeB.getDate();
	if (isNaN(timeA) == true)
		{ daysInMonth = 31; }
	var selectedDay = 0;
	if (picked == 1) {
		selectedDay = objForm.StartDay.selectedIndex ;
		if ( selectedDay > daysInMonth  ) {
			selectedDay = daysInMonth;
		}
	}
	/* assure date array is blank */
	var len = objForm.StartDay.options.length;
	for (var i = 0; i < len; i++) {
		objForm.StartDay.options[0] = null;
	}

	/* rebuild date array with valid days/month */
	objForm.StartDay.options[0] = new Option('Day');
	for (var i = 1; i <= daysInMonth; i++) {
		objForm.StartDay.options[i] = new Option(i);
		if ((i) == StartDay || i == selectedDay) {
			objForm.StartDay.options[i].selected = true;
		}
	}
}

function PopulateEndDay(objForm,picked) {
	var timeA = new Date(objForm.EndYear.options[objForm.EndYear.selectedIndex].text, objForm.EndMonth.options[objForm.EndMonth.selectedIndex].value,1);
	var timeDifference = timeA - 86400000;
	var timeB = new Date(timeDifference);
	var daysInMonth = timeB.getDate();
	if (isNaN(timeA) == true)
		{ daysInMonth = 31; }
	var selectedDay = 0;
	if (picked == 1) {
		selectedDay = objForm.EndDay.selectedIndex;
		if ( selectedDay > daysInMonth  ) {
			selectedDay = daysInMonth;
		}
	}
	/* assure date array is blank */
	var len = objForm.EndDay.options.length;
	for (var i = 0; i < len; i++) {
		objForm.EndDay.options[0] = null;
	}

	/* rebuild date array with valid days/month */
	objForm.EndDay.options[0] = new Option('Day');	
	for (var i = 1; i <= daysInMonth; i++) {
		objForm.EndDay.options[i] = new Option(i);
		if ((i) == EndDay || i == selectedDay) {
			objForm.EndDay.options[i].selected = true;
		}
	}
}

function getYears(objForm) {
	var years = new Array();
	var	today = new Date();
	var ListLength;

	/* varifies year between 1971 - 2069 and is 4-digit */
	var	yrNow = getCorrectedYear(today.getYear());

	/* creates array of years */
	for (var i = 0; i < 6; i++) {
		years[i] = yrNow;
		yrNow = yrNow + 1;
	}

	/* assures list of start years is blank */
	ListLength = objForm.StartYear.length;
	for (var i = 0; i < ListLength; i++) {
		objForm.StartYear.options[0] = null;
	}

	/* assure list of end years is blank */
	ListLength = objForm.EndYear.length;
	for (var i = 0; i < ListLength; i++) {
		objForm.EndYear.options[0] = null;
	}

	/* assigns list of start years and end years */
	objForm.StartYear.options[0] = new Option('Year');
	objForm.EndYear.options[0] = new Option('Year');	
	for (var i = 0; i < years.length; i++) {
		objForm.StartYear.options[i+1] = new Option(years[i]);
		if (years[i] == StartYear) {
			objForm.StartYear.options[i+1].selected = true;
		}
		objForm.EndYear.options[i+1] = new Option(years[i]);
		if (years[i] == EndYear) {
			objForm.EndYear.options[i+1].selected = true;
		}
	}
}

function getDepartYears(objForm) {
	var years = new Array();
	var	today = new Date();
	var ListLength;

	/* varifies year between 1971 - 2069 and is 4-digit */
	var	yrNow = getCorrectedYear(today.getYear());

	/* creates array of years */
	for (var i = 0; i < 6; i++) {
		years[i] = yrNow;
		yrNow = yrNow + 1;
	}

	/* assures list of start years is blank */
	ListLength = objForm.StartYear.options.length;
	for (var i = 0; i < ListLength; i++) {
		objForm.StartYear.options[0] = null;
	}

	objForm.StartYear.options[0] = new Option('Year');
	/* assigns list of start years */
	for (var i = 0; i < years.length; i++) {
		objForm.StartYear.options[i+1] = new Option(years[i]);
		if (years[i] == StartYear) {
			objForm.StartYear.options[i+1].selected = true;
		}
	}
}


function SetDepartDate(objForm,StartMonth) {
	/* preset month list length based on 12 months/year */
	var ListLength = 12;

	/* assure 2-digit start month */
	if (StartMonth.length == 1) {
		StartMonth = '0' + StartMonth
	}

	/* select default start month */
	for (var i = 1; i <= ListLength; i++) {
		if (objForm.StartMonth.options[i].value == StartMonth) {
			objForm.StartMonth.options[i].selected = true;
		}
	}
	/*  */
	PopulateStartDay(objForm,0);
}

