// JavaScript Document

function hideAllGreenErrors() {
  
  	document.getElementById("emailError").style.display = "none";
	document.getElementById("firstnameError").style.display = "none";
	document.getElementById("lastnameError").style.display = "none";
	document.getElementById("postcodeError").style.display = "none";
	document.getElementById("customernoError").style.display = "none";
  }
  
  function validateGreenEmail(elementValue){
		
		var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/; 
		return emailPattern.test(elementValue); 
  }
  
  function isGreenNumeric(value) {
		
		return !isNaN(value);
  }
  
  function isValidPostcode(value) {
	    
		var postcodeRegEx = /[A-Z]{1,2}[0-9]{1,2} ?[0-9][A-Z]{2}/i;
     	return postcodeRegEx.test(value);
  }
	
	function ltrim(str, chars) {
		chars = chars || "\\s";
		return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
	}
	
	function rtrim(str, chars) {
		chars = chars || "\\s";
		return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
	}
	
		function trim(str, chars) {
		return ltrim(rtrim(str, chars), chars);
	}


function checkGreenForm() {
    
	var email = trim(document.getElementById("email").value);
	var firstname = trim(document.getElementById("firstname").value);
    var lastname = trim(document.getElementById("lastname").value);
	var postcode = trim(document.getElementById("postcode").value);
	var customerno = trim(document.getElementById("customerno").value);
 
	if (email === "" || !validateGreenEmail(email)) {
		hideAllGreenErrors();		
		document.getElementById("emailError").style.display = "block";
		document.getElementById("email").select();
		document.getElementById("email").focus();
		return false;
	
	} else if (firstname === "") {
		hideAllGreenErrors();
		document.getElementById("firstnameError").style.display = "block";
		document.getElementById("firstname").select();
		document.getElementById("firstname").focus();
		return false;
	
	} else if (lastname === "") {
		hideAllGreenErrors();
		document.getElementById("lastnameError").style.display = "block";
		document.getElementById("lastname").select();
		document.getElementById("lastname").focus();
		return false;
	
	} else if (postcode === "" || !isValidPostcode(postcode)) {
		hideAllGreenErrors();
		document.getElementById("postcodeError").style.display = "block";
		document.getElementById("postcode").select();
		document.getElementById("postcode").focus();
		return false;
	
	} else if (!isGreenNumeric(customerno)) {
		hideAllGreenErrors();
		document.getElementById("customernoError").style.display = "block";
		document.getElementById("customerno").select();
		document.getElementById("customerno").focus();
		return false;
	
	} 
	
	return true;
  
  }