/*
This JS file contents some very usefull functions
*/

// Test form fields values, if value is wrong than output error massage and function returns FALSE
// if value is correct function returns TRUE

function TestField (FildName, FildValue, StandardValue, RE, FILL){
	if (FILL){
		if (FildValue=="") { alert ("Field " + FildName + " must be fill !"); return false; }
	}
	if (RE){
		if ((StandardValue=="") || (FildValue=="")) return true;
		var RegEx= new RegExp(StandardValue);
		if (!FildValue.match(RegEx)) { alert ("Invalid " + FildName + ": [ " + FildValue + " ] !"); return false; }	
	}
	return true;
}

function test_contact_form (FormObject){
	RegEx_name = "^[a-zA-Z .,-]{1,}$";
	RegEx_email= "^[_a-zA-Z0-9-](\.{0,1}[_a-zA-Z0-9-])*@([a-zA-Z0-9-]{2,}\.){0,}[a-zA-Z0-9-]{3,}(\.[a-zA-Z]{2,4}){1,2}$";
	RegEx_phone= "^[0-9]{1,}$";

	if (!TestField ("Name", FormObject.realname.value, RegEx_name, true, true)) return false;
	if (!TestField ("Company", FormObject.company.value, RegEx_name, false, true)) return false;
	if (!TestField ("Address", FormObject.address.value, RegEx_name, false, true)) return false;
	
	if ((FormObject.email.value== "") && (FormObject.phone.value== "") && (FormObject.fax.value== "")) {
		alert ("One of the fields E-mail, Telephone, Fax, must be filled !");
		return false;
	}
	
	if (!TestField ("E-mail", FormObject.email.value, RegEx_email, true, false)) return false;
	if (!TestField ("Telephone", FormObject.phone.value, RegEx_phone, true, false)) return false;
	if (!TestField ("Fax", FormObject.fax.value, RegEx_phone, true, false)) return false;
	
	if (FormObject.radio.value== "") { alert ("Select type of contact !"); return false; }
	if (FormObject.details.value== "") { alert ("Type details of enquiry !"); return false; }
	
		if ((FormObject.radio.value== "E-mail") && (FormObject.email.value=="")) { alert ("Type of contact is E-mail, but field E-mail is empty !"); return false; }
	if ((FormObject.radio.value== "Telephone") && (FormObject.phone.value=="")) { alert ("Type of contact is Telephone, but field Telephone is empty !"); return false; }
	if ((FormObject.radio.value== "Fax") && (FormObject.fax.value=="")) { alert ("Type of contact is Fax, but field Fax is empty !"); return false; }
		
	FormObject.submit();
	return true;
}