
// NOTE* include formValidation.js prior to this file
// Use multiple case statements where applicable.

function ValidateField(field) {
	if(!gbl_isKeyPressed)
		return false;

	var str_errorMsg = "";
	
	switch(field.id) {

		case "nameTextBox" :

			str_errorMsg += ValidateREQ(field);
			str_errorMsg += ValidateLEN(field, 100);
			break;

		case "addressTextBox" :
		case "phoneTextBox"	  :

			str_errorMsg += ValidateREQ(field);
			str_errorMsg += ValidateLEN(field, 100);
			break;

		case "emailTextBox" :

			str_errorMsg += ValidateREQ(field);
			if(str_errorMsg.length == 0)
				str_errorMsg += ValidateREG(field, /^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.(([0-9]{1,3})|([a-zA-Z]{2,3})|(aero|coop|info|museum|name))$/);
			str_errorMsg += ValidateLEN(field, 100);
			break;

		case "questionTextArea" :
			
			str_errorMsg += ValidateREQ(field);
			str_errorMsg += ValidateLEN(field, 100);
			break;
	}

	return str_errorMsg;
}



function ShowFormErrors(obj_Form) {

	var str_errorMsgs = "";
	var bln_isFocus   = false;
	var obj_field;
	var obj_fields    = new Array();
	var obj_postal;
	var obj_physical;
	var index = 0;
	
	gbl_isKeyPressed = true;
	// Find input fields

	obj_fields = obj_Form.getElementsByTagName('input');
	for(obj_field in obj_fields) {
		str_errorMsgs += ValidateField(obj_fields[obj_field]);
		if(str_errorMsgs.length > 0 && !bln_isFocus) {
			ValidateFocus(obj_fields[obj_field]);
			bln_isFocus = true;
		}
	}

	// Find textarea fields

	obj_fields = null;
	obj_field  = null;
	obj_fields = obj_Form.getElementsByTagName('textarea');

	for(obj_field in obj_fields) {
		if(index == 0) {
			index++;
			continue;
		}
		
		str_errorMsgs += ValidateField(obj_fields[obj_field]);
		if(str_errorMsgs.length > 0 && !bln_isFocus) {
			ValidateFocus(obj_fields[obj_field]);
			bln_isFocus = true;
		}
	}
	
	if(str_errorMsgs.length > 0)
		alert(str_errorMsgs);

	return str_errorMsgs.length > 0 ? false : true;
}



function SubmitForm(obj_Form, obj_button) {
	var bln_isValid = ShowFormErrors(obj_Form);
	if(bln_isValid) {
		if(CaptchaCheck(obj_Form)) {
			LoadingBar(true, obj_button);
			obj_Form.submit();
		}
	}
	
	return bln_isValid;
}