<!--
    
    // Purpose: Uses a range of date validation functions to insure proper date entry
    
    function makeDateFromStr ( dateStr )
    {
    	var s = new String(dateStr);
		var d = new Date(dateStr);
		var vMonth = d.getMonth() + 1;
		var vDay = d.getDate();
		var vYear = d.getFullYear();
		// Create a string object to check the length of the string by
		if(s.length < 9)
		{
			if(d.getYear() < 80)
				d.setYear ( d.getYear() + 100 );
		}
		if(!isNaN(vMonth))
			return d;
		else
			return null;
    }
    
    function makeStrFromDate ( d )
    {
    	if ( d == null )
    		return "";
    	
		var vMonth = d.getMonth() + 1;
		var vDay = d.getDate();
		var vYear = d.getFullYear();
		
		return "" + vMonth + '/' + vDay + '/' + vYear;
    }
    
    
    function checkDates(vDate)
    {
		// Checks for the following valid date formats: 
		// MM/DD/YY MM/DD/YYYY MM-DD-YY MM-DD-YYYY 
		// Also separates date into month, day, and year variables 
		
		// Use the follwing line to accept either 2 or 4 year format.
		var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4}|\d{1})$/; 
		
		// To require a 4 digit year entry, use this line instead: 
		dateStr = document.forms[0].elements[vDate].value;
		// var datePat = /^(\d{1,2})(\/)(\d{1,2})\2(\d{4})$/; 
		
		var matchArray = dateStr.match(datePat); // is the format ok? 
		
		if (matchArray == null) { 
			alert("Date format must be mm/dd/yyyy, mm/dd/yy, m/d/yyyy, m/d/yy, mm-dd-yyyy, mm-dd-yy, m-d-yyyy, or m-d-yy.");
			document.forms[0].elements[vDate].value = "";
			return false; 
		} 
		month = matchArray[1]; // parse date into variables 
		day = matchArray[3]; 
		year = matchArray[4]; 
		if (month > 12) { // check month range 
			alert("Month must be between 1 and 12."); 
			return false; 
		} 
		if (day > 31) {
			alert("Day must be between 1 and 31."); 
			return false; 
		} 
		if ((month==4 || month==6 || month==9 || month==11) && day==31) {
			alert("Month "+month+" doesn't have 31 days.");
			return false;
		} 
		if (month == 2) { // check for february 29th 
			var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)); 
			if (day>29 || (day==29 && !isleap)) { 
				alert("February " + year + " doesn't have " + day + " days."); 
				return false; 
			} 
		} 
		return true; // date is valid 
	
	}
	
	function checkDatesByPtr (TextFldPtr) {
		// Checks for the following valid date formats: 
		// MM/DD/YY MM/DD/YYYY MM-DD-YY MM-DD-YYYY 
		// Also separates date into month, day, and year variables 
		
		// Use the follwing line to accept either 2 or 4 year format.
		var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2}|\d{4})$/; 
		
		// To require a 4 digit year entry, use this line instead: 
		dateStr = TextFldPtr.value;
		// var datePat = /^(\d{1,2})(\/)(\d{1,2})\2(\d{4})$/; 
		
		var matchArray = dateStr.match(datePat); // is the format ok? 
		if (matchArray == null) { 
			alert("Date format must be mm/dd/yyyy, mm/dd/yy, m/d/yyyy, m/d/yy, mm-dd-yyyy, mm-dd-yy, m-d-yyyy, or m-d-yy.");
			TextFldPtr.value = "";
			return false; 
		} 
		month = matchArray[1]; // parse date into variables 
		day = matchArray[3]; 
		year = matchArray[4]; 
		if (month < 1 || month > 12) { // check month range 
			alert("Month must be between 1 and 12."); 
			return false; 
		} 
		if (day < 1 || day > 31) {
			alert("Day must be between 1 and 31."); 
			return false; 
		} 
		if ((month==4 || month==6 || month==9 || month==11) && day==31) {
			alert("Month "+month+" doesn't have 31 days.");
			return false;
		} 
		if (month == 2) { // check for february 29th 
			var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)); 
			if (day>29 || (day==29 && !isleap)) { 
				alert("February " + year + " doesn't have " + day + " days."); 
				return false; 
			} 
		} 
		return true; // date is valid 
	
    }
    
    function checkDates_Blank(vDate)
	{	//Call checkDates and clear the field if it is invalid
		var vValidated_b = checkDates(vDate);
		if (vValidated_b == false)
		{
			document.forms[0].elements[vDate].value = "";
			return false;
		}
		else
			return true;
	}



//-->
