  function IsValidEmailFormat(eMail, FinalCheck, LanguageID)
  {
     var ErrMsg;
     if (LanguageID==1) {ErrMsg = "email address is missing\n\n";}
     if (LanguageID==2) {ErrMsg = "eMail-Adresse fehlt\n\n";}

     if (eMail.value.length==0) { if(FinalCheck){doalert(ErrMsg, LanguageID);eMail.focus();};return !FinalCheck }

     if (LanguageID==1) {ErrMsg = "Error in email address\n\n";}
     if (LanguageID==2) {ErrMsg = "Fehler in der eMail-Adresse\n\n";}


     if (eMail.value.length<8) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}

     var PosAt = eMail.value.indexOf("@");
     var PosPt = eMail.value.lastIndexOf(".");

     if (PosAt<1) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}
     if (PosPt==-1) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}
     if ((PosPt-PosAt)<3) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}
     if ((eMail.value.length-PosPt-1)>4) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}
     if ((eMail.value.length-PosPt-1)<2) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}
     if (eMail.value.indexOf("@", PosAt+1)>-1) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}

     var ValidChars = new String("abcdefghijklmnopqrstuvwxyz");
     ValidChars += ValidChars.toUpperCase() + "0123456789.-_@";
     if (HasValidChars(eMail, ValidChars, ErrMsg)==false) {doalert(ErrMsg, LanguageID);eMail.focus(); return false;}
  }

  function doalert(msg, LanguageID)
  {if (LanguageID>0) {alert(msg)}}

  function HasValidChars(Field, ValidChars, ErrMsg)
  {  for (var Pos = 0; Pos < Field.value.length; Pos++)
     {
        if (ValidChars.indexOf(Field.value.charAt(Pos)) == -1)
        { ErrMsg += "\n\nIhre Eingabe enthält das Zeichen '"
          ErrMsg += Field.value.charAt(Pos)
          ErrMsg += "'. Sie dürfen nur diese Zeichen verwenden:\n"
          ErrMsg += ValidChars
          return false;
        }
     }
     return true;
  }