function field_is_empty(field) {
	if (field.value.length == 0) return true;
	else return false;
}

function checkemail(emailStr) {
	var emailpat = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
	return (emailpat.test(emailStr));
}

function isPhoneNumber(s) {
    return !s.match(/[^0-9\(\) \+]/);
} 

function check_form(frm) {

	var frm_submit = true;
	var alert_str = "The following errors were encountered while attempting to submit your subscription:\n\n";
	
	if ( (field_is_empty(frm.first_name)) || (frm.first_name.value == "First Name")) {
		frm_submit = false;
		alert_str += "* No First Name has been entered\n";
	}
	if ( (field_is_empty(frm.last_name)) || (frm.last_name.value == "Last Name")) {
		frm_submit = false;
		alert_str += "* No Last Name has been entered\n";
	}
	if (field_is_empty(frm.email_address) || (frm.email_address.value == "Email Address")) {
		frm_submit = false;
		alert_str += "* No Email address had been entered\n";
	} else {
		if (!checkemail(frm.email_address.value)) {
			frm_submit = false;
			alert_str += "* The provided Email address is not valid\n";
		}
	}
    if (!field_is_empty(frm.phone_number)) {
        if (!isPhoneNumber(frm.phone_number.value)) {
            frm_submit = false;
            alert_str += "* The provided Phone number is not valid\n";
        }
    }
	if (field_is_empty(frm.postcode) || (frm.postcode.value == "Postcode")) {
		frm_submit = false;
		alert_str += "* No postcode has been entered\n";
	}
	
	if (!(frm_submit)) {
		alert(alert_str);
	}
	
	return frm_submit;
	
}
