function txtChk(str,chkType)
{
  if (chkType == 0)
  {
//alert(str.length);

    var valid = -1 + str.length;
  }
  else if (chkType == 1)//used for postcode validation (1/2 letters followed by 1/2letters, with optional trailing letter. An optional space, 1 number followed by 2 letters)
  {
    var valid = str.search(/^[A-Za-z]{1,2}[0-9]{1,2}[A-Za-z]{0,2}[ ]{0,1}[0-9]{1}[A-Za-z]{2}$/);
  }
  else if (chkType == 2)
  {
    var valid = str.search(/^[A-Za-z0-9.-]+@[A-Za-z0-9.-]+$/);
  }
      
  if (valid == -1)
  {
    return false;
  }
  else
  {
    return true;
  }
}

function boxChk()
{
      var checked = false;

      for (var i=0, e; e=document.course_form.elements[i]; i++) {
        if (e.type == 'checkbox'){
          //checked = true;
          if (e.checked) {
            checked = true;
          } 
        }
      }

      return checked;
    }
    
    
function validate(){

  var message;
  var validated = true;

  if (!boxChk())
  {
    message = 'You must enrol on at least one course. Please check and try again';
    validated = false;
  }

  if (!txtChk(document.course_form.email.value, 2))
  {
    message = 'Email address is missing or invalid. Please check and try again';
    validated = false;
  }

  if (!txtChk(document.course_form.company_address_postcode.value, 1))
  {
    message = 'Postcode is missing or invalid Please check and try again';
    validated = false;
  }

  if (!txtChk(document.course_form.company_address_1.value, 0))
  {
    message = 'Company address field missing or invalid. Please check and try again';
    validated = false;
  }

  if (!txtChk(document.course_form.name.value, 0))
  {
    message = 'Name field missing or invalid. Please check and try again';
    validated = false;
  }

  if (!validated)
  {
    alert(message);
  }

  return validated;
}