function get(id) {
	return document.getElementById(id);
}
function validateField(myField, type) {
	var contents = get(myField).value;
	var errorNotification = 'e'+ myField;
	if(type == 'email') { // email field
		// validate against invalid email addresses
		if ((/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(contents))){
			get(errorNotification).style.visibility='hidden';
		} else {
			get(errorNotification).style.visibility='visible';
		}
	} else if(type == 'basic') { // compulsory - at least 1 character
		// basic validation against empty fields which are deemed compulsory
		if(contents != '') {
			get(errorNotification).style.visibility='hidden';
		} else {
			get(errorNotification).style.visibility='visible';
		}
	}
}
function empty(value) {
	if(value == '' || value == false || value == null || value == 0) {
		return true;
	} else {
		return false;
	}
}
function contactForm(myForm) {
	var error = 0;
	var errorMessage = '';
	var focusField = '';
	var name = get('title');
	var email = get('email');
	var enquiry = get('enquiry');

	if(empty(name.value)) {
		error = 1;
		focusField = 'title';
		errorMessage += 'Please enter your name.';
	}	else if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value))){
		error = 1;
		focusField = 'email';
		errorMessage += 'Please enter a valid email address.';
	}	else if(empty(enquiry.value)) {
		error = 1;
		focusField = 'enquiry';
		errorMessage += 'Please fill in the message field.';
	}

	name.style.background='#FFFFFF';
	email.style.background='#FFFFFF';
	enquiry.style.background='#FFFFFF';
	get('etitle').style.visibility='hidden';
	get('eemail').style.visibility='hidden';
	get('eenquiry').style.visibility='hidden';

	if(error == 1){
		alert(errorMessage);
		var errorIcon = 'e'+focusField;
		get(errorIcon).style.visibility='visible';
		// focus on error field if focus field provided
		get(focusField).style.background='#FFFDE2';
		get(focusField).focus();
		return false;
	} else {
		get('contact').submit();
		return true;
	}
}
function renewContractForm() {
	var error = 0;
	var errorMessage = '';
	var focusField = '';

	var surgeryName = get('surgery_name');
	var postcode = get('postcode');
	var name = get('title');
	var tel = get('tel');
	var email = get('email');

	if(empty(surgeryName.value)) {
		error = 1;
		focusField = 'surgery_name';
		errorMessage += 'Please enter your surgery name.';
	} else if(empty(postcode.value)) {
		error = 1;
		focusField = 'postcode';
		errorMessage += 'Please enter your postcode.';
	} else if(empty(name.value)) {
		error = 1;
		focusField = 'title';
		errorMessage += 'Please enter your name.';
	} else if(empty(tel.value)) {
		error = 1;
		focusField = 'tel';
		errorMessage += 'Please enter a telephone number.';
	}	else if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value))){
		error = 1;
		focusField = 'email';
		errorMessage += 'Please enter a valid email address.';
	}

	surgeryName.style.background='#FFFFFF';
	postcode.style.background='#FFFFFF';
	name.style.background='#FFFFFF';
	tel.style.background='#FFFFFF';
	email.style.background='#FFFFFF';

	get('e_surgery_name').style.visibility='hidden';
	get('e_postcode').style.visibility='hidden';
	get('e_title').style.visibility='hidden';
	get('e_tel').style.visibility='hidden';
	get('e_email').style.visibility='hidden';

	if(error == 1){
		alert(errorMessage);
		var errorIcon = 'e_'+focusField;
		get(errorIcon).style.visibility='visible';
		// focus on error field if focus field provided
		get(focusField).style.background='#FFFDE2';
		get(focusField).focus();
		return false;
	} else {
		get('renew-contract').submit();
		return true;
	}
}
function serviceRequestForm() {
	var error = 0;
	var errorMessage = '';
	var focusField = '';

	var surgeryName = get('surgery_name');
	var postcode = get('postcode');
	var name = get('title');
	var tel = get('tel');
	var email = get('email');

	if(empty(surgeryName.value)) {
		error = 1;
		focusField = 'surgery_name';
		errorMessage += 'Please enter your surgery name.';
	} else if(empty(postcode.value)) {
		error = 1;
		focusField = 'postcode';
		errorMessage += 'Please enter your postcode.';
	} else if(empty(name.value)) {
		error = 1;
		focusField = 'title';
		errorMessage += 'Please enter your name.';
	} else if(empty(tel.value)) {
		error = 1;
		focusField = 'tel';
		errorMessage += 'Please enter a telephone number.';
	}	else if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value))){
		error = 1;
		focusField = 'email';
		errorMessage += 'Please enter a valid email address.';
	}

	surgeryName.style.background='#FFFFFF';
	postcode.style.background='#FFFFFF';
	name.style.background='#FFFFFF';
	tel.style.background='#FFFFFF';
	email.style.background='#FFFFFF';

	get('e_surgery_name').style.visibility='hidden';
	get('e_postcode').style.visibility='hidden';
	get('e_title').style.visibility='hidden';
	get('e_tel').style.visibility='hidden';
	get('e_email').style.visibility='hidden';

	if(error == 1){
		alert(errorMessage);
		var errorIcon = 'e_'+focusField;
		get(errorIcon).style.visibility='visible';
		// focus on error field if focus field provided
		get(focusField).style.background='#FFFDE2';
		get(focusField).focus();
		return false;
	} else {
		get('service-request').submit();
		return true;
	}
}
function repairRequestForm() {
	var error = 0;
	var errorMessage = '';
	var focusField = '';

	var surgeryName = get('surgery_name');
	var postcode = get('postcode');
	var name = get('title');
	var tel = get('tel');
	var email = get('email');

	if(empty(surgeryName.value)) {
		error = 1;
		focusField = 'surgery_name';
		errorMessage += 'Please enter your surgery name.';
	} else if(empty(postcode.value)) {
		error = 1;
		focusField = 'postcode';
		errorMessage += 'Please enter your postcode.';
	} else if(empty(name.value)) {
		error = 1;
		focusField = 'title';
		errorMessage += 'Please enter your name.';
	} else if(empty(tel.value)) {
		error = 1;
		focusField = 'tel';
		errorMessage += 'Please enter a telephone number.';
	}	else if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value))){
		error = 1;
		focusField = 'email';
		errorMessage += 'Please enter a valid email address.';
	}

	surgeryName.style.background='#FFFFFF';
	postcode.style.background='#FFFFFF';
	name.style.background='#FFFFFF';
	tel.style.background='#FFFFFF';
	email.style.background='#FFFFFF';

	get('e_surgery_name').style.visibility='hidden';
	get('e_postcode').style.visibility='hidden';
	get('e_title').style.visibility='hidden';
	get('e_tel').style.visibility='hidden';
	get('e_email').style.visibility='hidden';

	if(error == 1){
		alert(errorMessage);
		var errorIcon = 'e_'+focusField;
		get(errorIcon).style.visibility='visible';
		// focus on error field if focus field provided
		get(focusField).style.background='#FFFDE2';
		get(focusField).focus();
		return false;
	} else {
		get('repair-request').submit();
		return true;
	}
}
function purchaseSupportPackageForm() {
	var error = 0;
	var errorMessage = '';
	var focusField = '';

	var surgeryName = get('surgery_name');
	var postcode = get('postcode');
	var name = get('title');
	var tel = get('tel');
	var email = get('email');

	if(empty(surgeryName.value)) {
		error = 1;
		focusField = 'surgery_name';
		errorMessage += 'Please enter your surgery name.';
	} else if(empty(postcode.value)) {
		error = 1;
		focusField = 'postcode';
		errorMessage += 'Please enter your postcode.';
	} else if(empty(name.value)) {
		error = 1;
		focusField = 'title';
		errorMessage += 'Please enter your name.';
	} else if(empty(tel.value)) {
		error = 1;
		focusField = 'tel';
		errorMessage += 'Please enter a telephone number.';
	}	else if (!(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email.value))){
		error = 1;
		focusField = 'email';
		errorMessage += 'Please enter a valid email address.';
	}

	surgeryName.style.background='#FFFFFF';
	postcode.style.background='#FFFFFF';
	name.style.background='#FFFFFF';
	tel.style.background='#FFFFFF';
	email.style.background='#FFFFFF';

	get('e_surgery_name').style.visibility='hidden';
	get('e_postcode').style.visibility='hidden';
	get('e_title').style.visibility='hidden';
	get('e_tel').style.visibility='hidden';
	get('e_email').style.visibility='hidden';

	if(error == 1){
		alert(errorMessage);
		var errorIcon = 'e_'+focusField;
		get(errorIcon).style.visibility='visible';
		// focus on error field if focus field provided
		get(focusField).style.background='#FFFDE2';
		get(focusField).focus();
		return false;
	} else {
		get('purchase-support-package').submit();
		return true;
	}
}
function clearBox(input) {
	if(input.value==input.defaultValue) {
		input.value = '';	
	}
}

function resetBox(input) {
	if(!input.value) {
		input.value = input.defaultValue;	
	}
}

