  var fader1 = null;
  var fader2 = null;

  function validate()
  {
    var oneFailed = false;
    //Reverse order so the focus starts from the top of the page
    if (!validateSecurityCheck(true)) 
      oneFailed = true;
    if (!validateEmailAddress(true)) 
      oneFailed = true;
    if (!validateName(true)) 
      oneFailed = true;
    if (!validateMessage(true)) 
      oneFailed = true;
    return !oneFailed;
  }

  function validateName(doFocus)
  {
    var field = $("#txtName");
    var filter = /^([a-zA-Z\s])+$/;
    if (isEmpty(field.val()))
    {
      showErrorMessage('NameError','txtName','Please enter your name');
      if (doFocus == true)
        field.focus();
      return false;
    }
    else if (!filter.test(field.val())) 
    {
      showErrorMessage('NameError','txtName','Your name cannot contain symbols or numbers');
      if (doFocus == true)
        field.focus();
      return false;
    }
    else
      hideErrorMessage('NameError','txtName');
    return true;
  }

  function validateMessage(doFocus)
  {
    var field = $("#txtMessage");
    var filter = /^([a-zA-Z_\.\-\'])+$/;
    if (isEmpty(field.val()))
    {
      showErrorMessage('MessageError','txtMessage','Please enter your message.  What would you like to discuss with us?');
      if (doFocus == true)
        field.focus();
      return false;
    }
    else
      hideErrorMessage('MessageError','txtMessage');
    return true;
  }

  function validateEmailAddress(doFocus)
  {
    var field = document.getElementById('txtEmailAddress');
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (isEmpty(field.value))
    {
      showErrorMessage('EmailAddressError','txtEmailAddress','Please enter an email address');
      if (doFocus == true)
        field.focus();
      return false;
    }
    else if (!filter.test(field.value)) 
    {
      showErrorMessage('EmailAddressError','txtEmailAddress','Your email address is not valid');
      if (doFocus == true)
        field.focus();
      return false;
    }
    else
      hideErrorMessage('EmailAddressError','txtEmailAddress');
    return true;
  }

  function validateSecurityCheck(doFocus)
  {
    var field = document.getElementById('recaptcha_response_field');
    var filter = /^([a-zA-Z0-9_\.\-])+$/;
    if (isEmpty(field.value))
    {
      showErrorMessage('CodeError','recaptcha_response_field','Please enter the security text you see in the image above');
      if (doFocus == true)
        field.focus();
      return false;
    }
    else
      hideErrorMessage('CodeError','recaptcha_response_field');
    return true;
  }

  function showErrorMessage(errorField, inputField, message)
  {
    $("#"+errorField).addClass('registerErrorField');
    $("#"+errorField).html(message);
    $("#"+errorField).removeClass('noShow');
    $("#"+inputField).addClass('registerFieldError');
  }

  function hideErrorMessage(field,inputField)
  {
    $("#"+field).addClass('noShow');
    $("#"+field).html('');
    $("#"+inputField).removeClass('registerFieldError');
  }


  function isEmpty( inputStr ) 
  { 
    if ( null == inputStr || "" == inputStr ) 
      return true; 
    else
      return false; 
  }

  $(document).ready(function() 
  { 
    $("#recaptcha_response_field").attr("style", "width:293px;");
    $("#recaptcha_response_field").addClass('txt');
    $("#txtName").focus();
  });

