
function checkDate(dateField) {
	date = dateField.value;
	error = false;
	if (date != "") {
		month = date.substring(0,2);
		year = date.substring(3,5);
		
		if (!isInt(month) || !isInt(year)) 
			error = true;
		if (date.charAt(2) != "/")
			error = true;
		if (error) {
			alert("Please enter the date using this format: \n(MM/YY)");
			dateField.focus();
			return false;
		}
	}
	return true;
}

function isInt(field) {
	var valid = "0123456789.";
	var decimalCount = 0;
	for (var i=0; i<field.length; i++) {
		if (valid.indexOf(field.charAt(i)) =="-1") return false;
		if (field.charAt(i) == ".") decimalCount += 1;
		if (decimalCount > 1) return false;
	}
	return true;
}

function validate(form) {
	 
	var ok = 0;
	
	// Check required fields
	
	if (isEmpty(form.firstname.value)) {
		alert("Please enter your first name.");
		form.firstname.focus();
		return false;
	}
	if (isEmpty(form.lastname.value)) {
		alert("Please enter your last name.");
		form.lastname.focus();
		return false;
	}
	if (isEmpty(form.address1.value)) {
		alert("Please enter your address.");
		form.address1.focus();
		return false;
	}
	if (isEmpty(form.city.value)) {
		alert("Please enter your city.");
		form.city.focus();
		return false;
	}
	if (isEmpty(form.zip.value)) {
		alert("Please enter your zipcode.");
		form.zip.focus();
		return false;
	}
	
	if (isEmpty(form.email.value)) {
		alert("Please enter email address.");
		form.email.focus();
		return false;
	}
	
	if (isEmpty(form.homephone.value)) {
		alert("Please enter your phone number.");
		form.homephone.focus();
		return false;
	}
	
	if (!phoneFormat(form.homephone.value)) {
		alert("Please enter phone number using this format \n212-555-5555");
		form.homephone.focus();
		return false;
	}
	
	
	if (form.state.options[form.state.selectedIndex].value == "0")
	{
		alert("Please enter your state.");
		form.state.focus();
		return false;
	}
	
	var i, n;
        
        n = document.ChangePass.email.value.length;
        
        for (i = 0;i < n;i++)
        {
          if (document.ChangePass.email.value.charAt(i) == " ") 
          {
            alert("Spaces are not allowed in email addresses!");
            return false;
          }
        }  
	    
	    if (document.ChangePass.email.value.length > 100)
        {
          alert("Email addresses must be at most 100 characters long");
		  document.ChangePass.email.focus();		  
          return false;
        }
		if (document.ChangePass.email.value.length < 3)
        {
          alert("Email addresses must be at least 3 characters long");
		  document.ChangePass.email.focus();	
          return false;
        }
	    if ((document.ChangePass.email.value != document.ChangePass.email2.value)||(document.ChangePass.email.value.length != document.ChangePass.email2.value.length))
        {
          alert("Email addresses do not match.");	
		  document.ChangePass.email.focus();	
          return false;
        }

	return true;
}

function phoneFormat(phoneNum) {
	numbers = phoneNum.substring(0,3) + phoneNum.substring(4,7) + phoneNum.substring(8,12);
	if (phoneNum.charAt(3) != "-" || phoneNum.charAt(7) != "-")
		return false;
	// loop through numbers and check if all valid
	for (var i=0; i<numbers.length; i++) {
		if (!isInt(numbers.charAt(i)))
			return false
	}
	return true;
}

function lTrim(theString) {
	while(1) {
		if (theString.substring(0,1) != " ") 
			break;
		theString = theString.substring(1,theString.length);
	}
	return theString;
}
		
function isEmpty(inputVal) {
	var inputStr = lTrim(inputVal.toString());
	if (inputStr.length < 1) {
		return true;
	}
	return false;
}

