function fValidateDate(Month,Day,Year) {
//checks to see if a date entered is a valid date
if (fisNum(Month) == false) {alert("Please enter a valid Month");
								return false;
								}
if (fisNum(Day) == false) {alert("Please enter a valid Day");
								return false;
								}
if (fisNum(Year) == false) {alert("Please enter a valid Year");
								return false;
								}																
if (Month == "" | Month > 12 | Month < 1 )  {alert("Please enter a valid Month");
                                return false;
                                }
if (Day == "" | Day > 31) {alert("Please enter a valid Day");
                                return false;
                                }
if ((Month == 4 | Month == 6 | Month == 9 | Month == 11) & Day > 30) {alert("Please enter a valid Day");
                                return false;
                                }
if (Month == 2 & fIsLeapYear(Year) & Day > 29){alert("Please enter a valid Day");
                                return false;
                                }
if (Month == 2 & fIsLeapYear(Year) == false & Day > 28){alert("Please enter a valid Day");
                                return false;
                                }
//no good way to check if a year is valid or not, used the year below as abitrary
currDate = new Date()
if (Year == "" | Year < 1700 | Year > currDate.getFullYear()+1) {alert("Please enter a valid Year");
                                return false;
                                }
return true;
        }
        
function fValidatePhone(intAreaCode,intPrefix,intMain){
	if (intAreaCode.length > "0" | intPrefix.length > "0" | intMain.length > "0"){														
		if (fisNum(intAreaCode) == false) {alert("Please enter a valid Phone Number");
						return false;
						}
		if (fisNum(intPrefix) == false) {alert("Please enter a valid Phone Number");
						return false;
						}
		if (fisNum(intMain) == false) {alert("Please enter a valid Phone Number");
						return false;
						}
		if (intAreaCode.length != "3") {alert("Please enter a valid Phone Number");
						return false;
						}
		if (intPrefix.length != "3") {alert("Please enter a valid Phone Number");
						return false;
						}
		if (intMain.length != "4") {alert("Please enter a valid Phone Number");
						return false;
						}
	}
return true;
	}

function fIsLeapYear(Year) {
//check to see if a year is a leap year
        modCentYear = Year % 100
        //in a century year, if divisible by 400, it's a leap year
        if (modCentYear == 0) {
                                modCentLeapYear = Year % 400
                                if (modCentLeapYear == 0){
                                                         return true;
                                                          }
                               }
        //in a noncentury year, if divisible by 4, it's a leap year
        else {
                modLeapYearDiff = Year % 4
                if (modLeapYearDiff == 0) {
                                 return true;
                               }

                else { return false;}
              }
return true;           
        }

function fValidateAccntNo(idAccntNo){
//check to see if account number is valid (have no invalid character, one dash,one char after dash)
	if(idAccntNo == "") { 
		return false; 
    }
	invalidChars = "/:,;"
	for(i=0; i<invalidChars.length; i++){ //does it contain any invalid characters
		badChar = invalidChars.charAt(i)
		if(idAccntNo.indexOf(badChar,0) > -1){
			return false;
		}
	}
	atPos = idAccntNo.indexOf("-",1)
	if(atPos == -1){
		return false;
	}
	if(atPos+2 > idAccntNo.length){ //must be at least 1 character after the period
		return false;
	}
	return true;
}	

function fValidateZip(strStdZip,strZipNine) {
//check to see if Zip code is ok
	if (fisNum(strStdZip) == false) {alert("Please enter a valid Zip Code");
						return false;
						}
	if (strZipNine.length > 0 && fisNum(strZipNine) == false) {alert("Please enter a valid Zip Code");
						return false;
						}						
	if (strStdZip.length < 5 | strStdZip.Legth > 5){alert("Please enter a valid Zip Code");
						return false;
						}
    if (strZipNine.length > 0 && (strZipNine.length < 4 | strStdZip.Legth > 4)){alert("Please enter a valid Zip Code");
						return false;
						}
return true;           
        }	
        
function fisNum(Number){
//check to see if the argument is a number, will allow blanks
	if(Number == "" ){ 
		return false; 
    }
	for (i=0; i<Number.length; i++){
					if (Number.charAt(i) < "0"){ 
						return false;
					}
					if (Number.charAt(i) > "9"){
						return false;
					}
	}
	return true;
}

function fValidateEmail(email){
	if(email==""){
		return true;
	}
	invalidChars = "/:,;"
	for(i=0; i<invalidChars.length; i++){ //does it contain any invalid characters
		badChar = invalidChars.charAt(i)
		if(email.indexOf(badChar,0) > -1){alert("Please enter a valid email");
			return false;
		}
	}
	atPos = email.indexOf("@",1)  //there must be one @ symbol
	if(atPos == -1){alert("Please enter a valid email");
		return false;
	}
	if(email.indexOf("@",atPos+1) != -1){ //and only one @ symbol
		alert("Please enter a valid email");
		return false;
	}
	periodPos = email.indexOf(".", atPos)
	if(periodPos == -1){ //and at least one period after the @
		alert("Please enter a valid email");
		return false;
	}
	if(periodPos+3 > email.length){ //must be at least 2 characters after the period
		alert("Please enter a valid email");
		return false;
	}
	return true;
}
function fValidateENotify(Notify,Email) {
//checks to see if a there's an Email with Notify
if (Notify=="1" & Email == ""){alert("Please enter an email address.");
                                return false;
                                                              }
return true;
        }