// Form validation functions

function validate(acc_form)
{
//return true;
var form_fields = new Array();

form_fields[0] = acc_form.title.value;
form_fields[1] = acc_form.forename.value;
form_fields[2] = acc_form.surname.value;
form_fields[3] = acc_form.address1.value;
form_fields[4] = acc_form.county.value;
form_fields[5] = acc_form.postcode.value;
form_fields[6] = acc_form.phone.value;
form_fields[7] = acc_form.username2.value;
form_fields[8] = acc_form.conf_username.value;
form_fields[9] = acc_form.password2.value;
form_fields[10] = acc_form.conf_password.value;
form_fields[11] = acc_form.town.value;
form_fields[12] = acc_form.city.value;

var txt = form_fields[7];
var pcregexp = /^([A-Z][A-Z]?[0-9][0-9A-Z]? *[0-9][A-Z][A-Z])$/;
var postcode = form_fields[5];
var phoneregexp = /^[\d\s]+$/;
var phone = form_fields[6];
var pwregexp = /(?!^[0-9]*$)(?!^[a-zA-Z]*$)^([a-zA-Z0-9]{6,15})$/;
var password = form_fields[9];
var conf_password = form_fields[10];
var emregexp = /^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}$/;
var email = form_fields[7];

for (x = 0; x <= 8; x++)
{
	if (form_fields[x] == "")
	{
		alert('You have missed some required fields');
		return false;
	}
}

if (!((form_fields[11] != "")||(form_fields[12] != "")))
{
	alert('You must enter a town or city');
	return false;
}


if (!email.match(emregexp))
{
	alert('Please enter a valid email address');
	return false;
}

if (form_fields[7] != form_fields[8])
{
	alert('The email and confirm email fields must match');
	return false;
}


if (!postcode.match(pcregexp))
{
	alert('Please enter a valid UK postcode');
	return false;
}

if(!((phone.match(phoneregexp))&&(phone.length > 9)))
{
	alert('Please enter a valid phone number\ne.g. 0123 4567890 (numbers and spaces only)');
	return false;		
}

if (!password.match(pwregexp))
{
	alert('Passwords must be between 6 and 15 characters long\nand contain a mixture of letters and numbers');
	return false;
}

if (password != conf_password)
{
	alert('The password and confirm passwords fields must match');
	return false;
}

return true;
}