function formValidator()
{
     this.errorList = new Array;
     this.isEmpty = isEmpty;
     this.isNumber = isNumber;
     this.isAlphabetic = isAlphabetic;
     this.isAlphaNumeric = isAlphaNumeric;
     this.isWithinRange = isWithinRange;
     this.isEmailAddress = isEmailAddress;
     this.isChecked = isChecked;
     this.raiseError = raiseError;
     this.numErrors = numErrors;
     this.displayErrors = displayErrors;
}
function isEmpty(val)
{
     if (val.match(/^\s+$/) || val == "") return true;
     else return false;
}
function isNumber(val)
{
     if (isNaN(val)) return false;
     else return true;
}
function isAlphabetic(val)
{
     if (val.match(/^[a-zA-Z]+$/)) return true;
     else return false;
}
function isAlphaNumeric(val)
{
     if (val.match(/^[a-zA-Z0-9]+$/)) return true;
     else return false;
}
function isWithinRange(val, min, max)
{
     if (val >= min && val <= max) return true;
     else return false;
}
function isEmailAddress(val)
{
     if (val.match(/^([a-zA-Z0-9])+([\.a-zA-Z0-9_-])*@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-]+)+/)) return true;
     else return false;
}
// check to see if form value is checked
function isChecked(obj)
{
	if (obj.checked) return true;
    else return false;
}
// display all errors
// iterate through error array and print each item
function displayErrors()
{
	texto = "";
	for (x=0; x<this.errorList.length; x++) {
		texto += "\n* " + this.errorList[x];
    }
	alert("Error:\n" + texto);	 
}
// add an error to error list
function raiseError(msg)
{
     this.errorList[this.errorList.length] = msg;
}
// return number of errors in error array
function numErrors()
{
     return this.errorList.length;
}
