 //**************************************************
 //
 //   AEON Verlag & Studio
 //   Abt. Internet Solutions
 //   Hanau, Germany
 //   Copyright  17.10.2008
 //   Autor: Reinhold Gleisinger
 //
 //**************************************************


 //**************************
 //  function checkmailform()
 //**************************

function checkmailform()
{
    var mform = document.mailing;

     if (mform.lastname.value == "")  {
        alert ("Please enter last name");
        mform.lastname.focus();
        return false;
     }
     if (mform.firstname.value == "")  {
        alert ("Please enter first name");
        mform.firstname.focus();
        return false;
     }
     if (mform.city.value == "")  {
        alert ("Please enter city");
        mform.city.focus();
        return false;
     }
     if (mform.country.selectedIndex == 0)  {
        alert ("Please select country");
        mform.country.focus();
        return false;
     }
     if (!checkemail(mform.email.value)) {
        alert ("Please enter valid email address");
        mform.email.focus();
        return false;
     }

     return true;
}

 //*******************************************************
 //  function bestehtaus(s, erlaubt)
 //
 //  überprüft eingegebenen String auf zulässige Zeichen
 //*******************************************************

  function bestehtaus(s, erlaubt)
  {
    for (var i=0; i<s.length; i++) 
      if (erlaubt.indexOf(s.charAt(i)) == -1) 
        return false;
    return true;
  }

 //*************************************************
 //  function checkemail(s)
 //
 //  überprüft die Mailadresse auf korrekte Syntax
 //*************************************************

  function checkemail(s)
  {
    var abisz = "abcdefghijklmnopqrstuvwxyz";
    abisz += abisz.toUpperCase();
    var ziffern = "0123456789";
    if (s.length<7)
      return false;
    if (s.split("@").length != 2)  //0 oder mehr als 2 Mal @
      return false;
    var vorne = s.substring(0, s.indexOf("@"));
    var hinten = s.substring(s.indexOf("@")+1, s.length);
    // vor dem @ mindestens ein Zeichen:
    if (vorne == 0)
      return false;
    // vorne nur Buchstaben, Zahlen, Punkt, Bindestrich, Unterstrich
    if (!bestehtaus(vorne, abisz+ziffern+".-_"))
      return false;
    // hinten nur Buchstaben, Zahlen, Punkt, Bindestrich
    if (!bestehtaus(hinten, abisz+ziffern+".-"))
      return false;
    // hinten mindestens ein Punkt, danach zwei bis vier Buchstaben
    var punkt = hinten.lastIndexOf(".");
    if (punkt <= 1 || punkt >= hinten.length-2 || punkt < hinten.length-5)
      return false;
    // links vom letzten Punkt mindestens zwei Zeichen
    if (!bestehtaus(hinten.substring(punkt-2, punkt), abisz+ziffern+"-"))
      return false;
    // kein ".."
    if (hinten.indexOf("..") > -1)
      return false;
    // keine Fehler, alles in Ordnung
    return true;
  }


