<!--

function checkMembership()
{
  var frm = document.membership_form;

  if (frm.email.value == "")
  {
    alert ("Please enter your \"Email\".");
    frm.email.focus();
    return false;
  }
  
  if (checkEmail(frm.email.value) == false)
  {
	frm.email.focus()
  return false;
  }
  
  if (frm.password1.value == "")
  {
    alert ("Please enter your \"Password\".");
    frm.password1.focus();
    return false;
  }
  
  if (frm.password1.value != frm.password2.value)
  {
    alert ("Passwords do not match.");
    frm.password2.focus();
    return false;
  }
  
  if (frm.fullname.value == "")
  {
    alert ("Please enter your \"Full Name\".");
    frm.fullname.focus();
    return false;
  }
  
  if (frm.race.value == "")
  {
    alert ("Please enter your \"Race\".");
    frm.race.focus();
    return false;
  }
  
  if (frm.gender.value == "")
  {
    alert ("Please enter your \"Gender\".");
    frm.gender.focus();
    return false;
  }
  
  if (frm.language.value == "")
  {
    alert ("Please enter your \"Language\".");
    frm.language.focus();
    return false;
  }
  
  if (frm.dob_day.value == "")
  {
    alert ("Please enter your \"Date of birth\".");
    frm.dob_day.focus();
    return false;
  }

  if (frm.dob_mth.value == "")
  {
    alert ("Please enter your \"Date of birth\".");
    frm.dob_mth.focus();
    return false;
  }
  
  if (frm.dob_yr.value == "")
  {
    alert ("Please enter your \"Date of birth\".");
    frm.dob_yr.focus();
    return false;
  }
  
  //dateStr = frm.dob_day.value + "-" + frm.dob_mth.value + "-" + frm.dob_yr.value
  
  if (isDate(frm.dob_day.value, frm.dob_mth.value, frm.dob_yr.value) == false)
  {
	frm.dob_day.focus()
  return false;
  }

  if (frm.marital_status.value == "")
  {
    alert ("Please enter your \"Marital status\".");
    frm.marital_status.focus();
    return false;
  }

  if (frm.add1.value == "")
  {
    alert ("Please enter your \"Address 1\".");
    frm.add1.focus();
    return false;
  }
  if (frm.postcode.value == "")
  {
    alert ("Please enter your \"Postcode\".");
    frm.postcode.focus();
    return false;
  }
 
  if (frm.town.value == "")
  {
    alert ("Please enter your \"City/Town\".");
    frm.town.focus();
    return false;
  }
  
  if (frm.state.value == "")
  {
    alert ("Please enter your \"State\".");
    frm.state.focus();
    return false;
  }
  return true;
}

function checkEmail(str) {
  var at="@"
  var dot="."
  var lat=str.indexOf(at)
  var lstr=str.length
  var ldot=str.indexOf(dot)
  if (str.indexOf(at)==-1){
    alert("Invalid \"Email\" entered!");
  return false;}

  if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
   alert("Invalid \"Email\" entered!");
  return false;}

  if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
    alert("Invalid \"Email\" entered!");
  return false;}

  if (str.indexOf(at,(lat+1))!=-1){
    alert("Invalid \"Email\" entered!");
  return false;}

  if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
    alert("Invalid \"Email\" entered!");
  return false;}

  if (str.indexOf(dot,(lat+2))==-1){
    alert("Invalid \"Email\" entered!");
  return false;}

  if (str.indexOf(" ")!=-1){
    alert("Invalid \"Email\" entered!");
  return false;}
return true;
}

function validateNo(field) {
  var valid="0123456789"
  var ok = "yes";
  var temp;
  for (var i=0; i<field.value.length; i++) {
	temp = "" + field.value.substring(i, i+1);
	if (valid.indexOf(temp) == "-1") ok = "no";
	}
    if (ok == "no") {
	  alert("Invalid entry! Only numbers (0-9).");
	  field.focus();
	  field.select();
    }
}


// ******************************************************************
// This function accepts a string variable and verifies if it is a
// proper date or not. It validates format matching either
// mm-dd-yyyy or mm/dd/yyyy. Then it checks to make sure the month
// has the proper number of days, based on which month it is.

// The function returns true if a valid date, false if not.
// ******************************************************************

function isDate(day, month, year) {

//var datePat = /^(\d{1,2})(-)(\d{1,2})(-)(\d{4})$/;
//var matchArray = dateStr.match(datePat); // is the format ok?

/*if (matchArray == null) {
alert("Please enter date as dd-mm-yyyy.");
return false;
}*/

//day = matchArray[1]; // p@rse date into variables
//month = matchArray[3];
//year = matchArray[5];

if (day < 1 || day > 31) { // check day range
alert("Day must be between 1 and 31.");
return false;
}

if (month < 1 || month > 12) { // check month range
alert("Month must be between 1 and 12.");
return false;
}

if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Month "+month+" doesn`t have 31 days!")
return false;
}

if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day==29 && !isleap)) {
alert("February " + year + " doesn`t have " + day + " days!");
return false;
}
}
return true; // date is valid
}

//-->