//Create an HTML reruest object for posting data to php
function request(){
	var activexmodes = ["Msxml2.XMLHTTP", "Microsoft.XMLHTTP"]
    if (window.ActiveXObject) {
    	for (var i = 0; i < activexmodes.length; i++) {
        	try {
            	return new ActiveXObject(activexmodes[i])
                } 
                catch (e) {
                            //suppress error
                }
        }
     }
     else {
     	if (window.XMLHttpRequest) {
                        // if Mozilla, Safari etc
                return new XMLHttpRequest();
        }
		else {
		               return false;
             }
        }
}


 //Checks a date for general validity (incl leap year) - ex. 6/31, 2/30 - not valid 
function checkDate(m, d, y){
    //  check month day - no leap year test 
    if (d < 1) { //if day is zero - bad
        return false;
    }
    else {
        if (d > 30) { //- if month has 31 check it
			if (((m < 8) && (m % 2 == 0)) || ((m > 8) && (m % 2 != 0))) {
    			return false; // a month with 31 days that cannot
			}
        }//day is less than 31 and greater than 1 - good for all but feb
        else {
			if (m == 2) //all feb cases
			{
    			if (checkLeapYear(y)) //if leapyear we can have 29
    			{
        			if (d > 29) { //if it is 30 fail
					return false;
        			}
    			}
    			else {
        			if (d > 28) { //not a LY if 29 or 30 fail
						return false;
						}
    			}
			}
        }
        return true;
    }
}
            
//checks a year for leap year
function checkLeapYear(year)
{
	if (year % 4 == 0) {
        if (year % 100 != 0) {
			return true;
        }
        else {
			if (year % 400 == 0) {
   				 return true;
			}
			else {
    			return false;
			}
        }
   	}
	return false;
}


//does what it says
function clearForm()
{
	var form = document.getElementById('form1');
	form.reset();
	//clears formatting of errored fields
    document.getElementById('errors').innerHTML = '';       
}