
function checkFormTextBox(x){
	theField = jsV[x];
	z = getObjByName(theField);
	if(z.value == ''){
		alert('Please supply ' + jsVn[x]);
		focusTB(jsV[x]);
		return false;
	} 
	return(true);
}

function checkFormEmail(x){
	theField = jsV[x];
	z = getObjByName(theField);
	if(z.value == ''){
		alert('Please supply ' + jsVn[x]);
		focusTB(jsV[x]);
		return false;
	} 
	re = new RegExp('^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.)+[a-z]{2,4}$');
	if(z.value.search(re)){
		alert('The email address does not seem to be valid...please check it (AOL users please remember to put @aol.com after your screen name)');
		focusTB(jsV[x]);
		return false;
	}
	return(true);
}

function checkFormUSPhone(x){
	theField = jsV[x];
	z = getObjByName(theField);
	if(z.value == ''){
		alert('Please supply ' + jsVn[x]);
		focusTB(jsV[x]);
		return false;
	} 
	var re = /(^\d{3}-\d{4}$)/;
	if(! re.test(z.value)){
		alert('The phone number does not seem to be valid...please check it (use xxx-xxxx)');
		focusTB(jsV[x]);
		return false;
	}
	return(true);
}

function checkFormUSAreaCode(x){
	theField = jsV[x];
	z = getObjByName(theField);
	if(z.value == ''){
		alert('Please supply ' + jsVn[x]);
		focusTB(jsV[x]);
		return false;
	} 
	var re = /(^\d{3}$)/;
	if(! re.test(z.value)){
		alert('The area code does not seem to be valid...please check it (use xxx)');
		focusTB(jsV[x]);
		return false;
	}
	return(true);
}

function checkFormUSZip(x){
	theField = jsV[x];
	z = getObjByName(theField);
	if(z.value == ''){
		alert('Please supply ' + jsVn[x]);
		focusTB(jsV[x]);
		return false;
	} 
	var re = /(^\d{5}$)|(^\d{5}-\d{4}$)/;
	if(! re.test(z.value)){
		alert('The zip code does not seem to be valid...please check it (use either zip or zip+4)');
		focusTB(jsV[x]);
		return false;
	}
	return(true);
}


function checkForm(){
	//check for required fields
	numFields = jsV.length;
	if(numFields){
		//check each field in order
		
		for(x=0;x<numFields;x++){
			switch(jsVt[x]){
				case '1':
					if(! checkFormTextBox(x)){
						focusTB(jsV[x]);
						return(false);
					}
					break;
				case '2':
					if(! checkFormEmail(x)){
						focusTB(jsV[x]);
						return(false);
					}
					break;
				case '10':
					if(! checkFormUSZip(x)){
						focusTB(jsV[x]);
						return(false);
					}
					break;
				case '8':
					if(! checkFormUSPhone(x)){
						focusTB(jsV[x]);
						return(false);
					}
					break;
				case '9':
					if(! checkFormUSAreaCode(x)){
						focusTB(jsV[x]);
						return(false);
					}
					break;
				default:
					
			}	
		}
		return(true);
	} else {
		return(true);
	}
}

