function checkForm(){
	var form = this;
	var req = new Array();
	var eMailPatt = /^[-+.\w]{1,64}@[-.\w]{1,64}\.[-.\w]{2,6}$/i;
	var phonePatt = /\([2-9][0-9]{2}\)[\s]?[1-9][0-9]{2}-[0-9]{4}|[2-9][0-9]{2}-[1-9][0-9]{2}-[0-9]{4}|[2-9][0-9]{2}[\s]?[1-9][0-9]{2}[\s]?[0-9]{4}|[2-9][0-9]{2}\.[2-9][0-9]{2}\.[0-9]{4}/;

	var errors = '';
	
	for(i = 0; i < form.length; i++){
		if(form[i].className === 'required'){
			req[i] = form[i].name;
		}
		
		if( (form[i].value !== '') &&
			(/email/i.test(form[i].name)) ){
				if( !eMailPatt.test(form[i].value) ){
					errors += '<li>Please double-check your e-mail address.</li>';
				}
		}
		if( (form[i].value !== '') &&
			(/phone/i.test(form[i].name)) ){
		 		if( !phonePatt.test(form[i].value) ){
		 			errors += '<li>Please double-check your phone number.</li>';
		 		}
		 }
		if( (form[i].value !== '') &&
			(/fax/i.test(form[i].name)) ){
		 		if( !phonePatt.test(form[i].value) ){
		 			errors += '<li>Please double-check your fax number.</li>';
		 		}
		}
	}
	for(x in req){
		if(form[req[x]].value === ''){
			errors += '<li>' + req[x] + ' is a required field.</li>';
		}
	}
	// innerHTML is not a standard, but is well-supported and fast.
	if(errors){ document.getElementById('showErrors').innerHTML = '<ul>'+errors+'</ul>'; return false; }
	
} 
