function echeck(str) {
  var at="@"
  var dot="."
  var lat=str.indexOf(at)
  var lstr=str.length
  var ldot=str.indexOf(dot)
  if (str.indexOf(at)==-1){
     return false
  }
  if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
     return false
  }
  if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
      return false
  }
   if (str.indexOf(at,(lat+1))!=-1){
      return false
   }
   if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
      return false
   }
   if (str.indexOf(dot,(lat+2))==-1){
      return false
   }
   if (str.indexOf(" ")!=-1){
      return false
   }
   return true
}


/* This script and many more are available free online at
The JavaScript Source :: http://javascript.internet.com
Created by: Shaun Bailey :: http://www.sbwebdevelopment.co.uk */

function validate() {
  if(!document.getElementById) return;

  // get form variables
  var first_name = document.getElementById("first_name").value;
  var last_name = document.getElementById("last_name").value;
  var email_add = document.getElementById("email_add").value;
  var mobile_no = document.getElementById("mobile_no").value;

  var incorrect = new Array();
  var no = 0;
  var regExp = /[A-Za-z]{2,6}/;

  regExp = /[A-Za-z]{1,}-?[A-Za-z]?/;

  if(regExp.test(first_name)) {
   	first_name = first_name.charAt(0).toUpperCase() + first_name.substring(1,first_name.length).toLowerCase();
  } else {
   	incorrect[no] = "1";
  	 no++;
   	first_name = "";
  }

  if(regExp.test(last_name)) {
   	last_name = last_name.charAt(0).toUpperCase() + last_name.substring(1,last_name.length).toLowerCase();
  } else {
   	incorrect[no] = "2";
  	 no++;
   	last_name = "";
  }

  if(!echeck(email_add)) {
   	incorrect[no] = "4";
   	no++;
   	email_add = "";
  }else{
	email_add = email_add;
  }

  regExp = /\(?\d{4}\)?\s?\d{4}/;
  if(regExp.test(mobile_no)) {
   	if(mobile_no.indexOf("(") < 0) {
  	  	mobile_no = mobile_no;
    } else if(mobile_no.indexOf(" ") < 0) {
   	 	mobile_no = mobile_no.substring(0,7) + " " + mobile_no.substring(mobile_no.length-6,mobile_no.length);
   	}
  } else {
    incorrect[no] = "3";
    no++;
    mobile_no = "";
  }

  for(i=1;i<5;i++) {
  		document.getElementById(i).style.color="#000000";
  }

  for(j=0;j<no;j++) {
  		document.getElementById(incorrect[j]).style.color="#FF0000";
  }

  if(no > 0) {
   	document.getElementById("errors").innerHTML = "<span class=\"error\">There was an error with your form submission. Please fill in the neccessary fields.</span><br />";
  }else{
	document.mailling_list.submit();
  }

  document.getElementById("first_name").value = first_name;
  document.getElementById("last_name").value = last_name;
  document.getElementById("email_add").value = email_add;
  document.getElementById("mobile_no").value = mobile_no;

}
