function formCheck(formobj){
	// name of mandatory fields
	var fieldRequired = Array("First_Name", "Last_Name", "Email", "State");
	// field description to appear in the dialog box
	var fieldDescription = Array("First Name", "Last Name", "Email", "State");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";
	
	var l_Msg = alertMsg.length;
	var obj;
		
	for (var i = 0; i < fieldRequired.length; i++){
		obj = formobj.elements[fieldRequired[i]];
		if (obj){
			switch(obj.type){
			case "select-one":
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == ""){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "select-multiple":
				if (obj.selectedIndex == -1){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "text":
			case "textarea":
				if (obj.value == "" || obj.value == null){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			default:
			}
			if (obj.type == undefined){
				var blnchecked = false;
				for (var j = 0; j < obj.length; j++){
					if (obj[j].checked){
						blnchecked = true;
					}
				}
				if (!blnchecked){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
			}
		}
	}

	if (alertMsg.length == l_Msg){
		return true;
	}else{
		alert(alertMsg);
		return false;
	}
}

var ck_name = /^[A-Za-z0-9 ]{3,20}$/;
var ck_email = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i 
var ck_username = /^[A-Za-z0-9_]{1,20}$/;

function validate(form) {
	var fname = form.First_Name.value;
	var lname = form.Last_Name.value;
	var email = form.Email.value;
	var state = form.State.value;
  
	var errors = [];
	 
 	if (!ck_name.test(fname)) {
  		errors[errors.length] = "You must enter your First Name.";
  	}
  	
	if (!ck_name.test(lname)) {
		errors[errors.length] = "You must enter your Last Name.";
	}
  
	if (!ck_email.test(email)) {
		errors[errors.length] = "You must enter a valid Email address.";
	}

	if (!ck_username.test(state)) {
		errors[errors.length] = "Please select a State.";
	}
	
	if (errors.length > 0) {
		reportErrors(errors);
		return false;
	}
	
	return true;
}

function reportErrors(errors){
 	var msg = "Please try again, all fields are required and valid email addresses only.\n";
 	var numError;	
 	
 	for (var i = 0; i<errors.length; i++) {
 		numError = i + 1;
 		msg += "\n" + numError + ". " + errors[i];
 	}
	alert(msg);
}

function clearText(field)
{
	if (field.defaultValue == field.value) {
		field.value = '';
	}
    	//else if (field.value == '') {
    	//	field.value = field.defaultValue;
    	//}
}
