

/***********************************************
* Required field(s) validation v1.10- By NavSurf
* Visit Nav Surf at http://navsurf.com
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/
String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, ''); }

function formCheck(formobj){
	// Enter name of mandatory fields
	var fieldRequired = Array("email", "password", "retypePassword", "firstName", "lastName", "phone", "billZip","shipZip");
	// Enter field description to appear in the dialog box
	var fieldDescription = Array("Email Address", "Password", "Retype Password", "First Name", "Last Name", "Daytime Phone Number", "Bill-to Zip or Postal Code", "Ship-to Zip or Postal Code");
	// dialog message
	var alertMsg = "Please complete the following fields:\n";

	var l_Msg = alertMsg.length;

	for (var i = 0; i < fieldRequired.length; i++){
		var 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":
			if (obj.value == "" || obj.value == null || obj.value.trim().length == 0){
					alertMsg += " - " + fieldDescription[i] + "\n";
				}
				break;
			case "textarea":
				var str = obj.value.trim();
				if (str == "" || str == 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;
	}
}
