function setLabelClass(elems,idFor,newClass){
  
  for(j=0;j<elems.length;j++){
    if(elems[j].getAttribute('for','false') == idFor|| elems[j].getAttribute('htmlfor','false') == idFor){
      elems[j].className = newClass;
    }
  }
}

function dealFormError(form,missingFields, wrongEmails, wrongPassword){
  
  /*
    This function highlights the missing mandatory fields and their label
  */
  var labels = document.getElementsByTagName('label');
  var wrongFields = missingFields.concat(wrongEmails);
  
  //  reset the styles of the form-elements.
  if(self.oldFields){
    for(i=0;i<oldFields.length;i++){
      form[oldFields[i]].className = oldClasses[i];
      setLabelClass(labels,oldFields[i],"");
    }
  }

  if(wrongFields.length>0){

    oldFields = new Array();
    oldClasses = new Array();
    for(i=0;i<wrongFields.length;i++){
      oldFields.push(wrongFields[i]);
      oldClasses.push(form[wrongFields[i]].className);
      form[wrongFields[i]].className = form[wrongFields[i]].className + " " + "formError";
      setLabelClass(labels,wrongFields[i],"formError");
    }
  }
  
  msg = "Das Formular konnte nicht abgeschickt werden.";
  if(missingFields.length>0){
    msg += "\nBitte f?llen Sie alle Pflichtfelder aus.";
  }
  if(wrongEmails.length>0){
    msg += "\nWenn Sie Emailadressen eingeben, m?ssen diese syntaktisch korrekt sein.";
  }
  if(wrongPassword){
    msg += "\nDie Passw?rter m?ssen mind. 4 Zeichen gro? sein und miteinander ?bereinstimmen.";
  }
  alert(msg);
}
