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);
}
