var allErrorElements = new Array(
'error_firstname', 'error_lastname', 'error_email',
'error_email_format', 'error_email_invalid_chars','error_email_not_avbl', 'error_name_email_combination_invalid',
'error_unknown'
);
function validateForm(){
   var frm = document.forms[0];

   var errorCounter = 0;
   var errElements = new Array();
   
   var firstErrorComponent = null;

   var email = frm['user.email'].value;
   if (email == '') {
      errElements[errorCounter] = 'error_email';
      errorCounter = errorCounter + 1;
      if (firstErrorComponent == null ) firstErrorComponent = frm['user.email'];
   }
   else {
      if (!validateEmailFormat(email)) {
         errElements[errorCounter] = 'error_email_format';
         errorCounter = errorCounter + 1;
         if (firstErrorComponent == null ) firstErrorComponent = frm['user.email'];
      }
      else if (!validateEmailChars(email)) {
          errElements[errorCounter] = 'error_email_invalid_chars';
          errorCounter = errorCounter + 1;
          if (firstErrorComponent == null ) firstErrorComponent = frm['user.email'];
       }
   }
   
   if (errorCounter > 0) 
   {
       //alert('Before displaying errors');
       displayErrors(errElements);
      if (firstErrorComponent != null ) {
		firstErrorComponent.focus();
		firstErrorComponent.value =  firstErrorComponent.value;
      }

       return false;
   }	
   else
   {
       return true;
   }
}

