// Pruefung des Email-Eingabefelds

function Ltrim(s)

{

  var i=0;

  if (s.length>0)

  {  

    while ((i<s.length) && (s.charAt(i)==" ")) i=i+1;

   
    if (i==s.length) s=""; else if (i>0) s=s.slice(i);

  }

  return s;	

}



var msg="\nBitte geben Sie eine korrekte Email-Adresse ein!"

function Unique(c)

{

  var i=0;


  i=document.Formular.email.value.indexOf(c);

  if (i!=-1) 

    { 

	  i=i+1;

      i=document.Formular.email.value.indexOf(c,i);

	  if (i==-1) return true; 

	  else 

	    {

		alert("Das Zeichen \""+c+"\" darf nur 1 x vorkommen!"+msg);

		return false; 

		}

  	}	

  alert("Es fehlt das \""+c+"\"-Zeichen!"+msg);	

  return false; 

}



function CorrectAddress()

{

  var normalchars="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

  var specialchars= "-.@_";

  var validchars= normalchars+specialchars;

  var i=0;

  var j=0;


  document.Formular.email.value=Ltrim(document.Formular.email.value);

  if (document.Formular.email.value.length<8)

    {

	  alert("Ihre Email-Adresse muss mindestens 8 Zeichen lang sein!"+msg);

      return false;

	}

  if ((normalchars.indexOf(document.Formular.email.value.charAt(0))==-1) ||

      (normalchars.indexOf(document.Formular.email.value.charAt(document.Formular.email.value.length-1))==-1))

    {

	  alert("Sie haben falsche Zeichen eingegeben!"+msg);

      return false;

	}

  if (!(Unique("@"))) // behandelt Fehlerausgaben selber

    {

	return false;

	}


  if (document.Formular.email.value.indexOf('.') == -1)

    {

	  alert("Es fehlt der Punkt!"+msg);

      return false;

	}

  else 

    {	


    i=document.Formular.email.value.lastIndexOf('.');

	j=document.Formular.email.value.lastIndexOf('@');

    if ((i) < (j))

      {

	    alert("Nach dem Zeichen \"@\" muss noch ein Punkt kommen!"+msg);

        return false;

	  }

	else if ((i-j)<4)

	  {

	    alert("Zuwenig Abstand zwischen dem Zeichen \"@\" und dem letzten Punkt!"+msg);

        return false;

	  }  

	}

  for(i=0;i<document.Formular.email.value.length;i++)

    {

	 if (validchars.indexOf(document.Formular.email.value.charAt(i))==-1)

       {

	     alert("Ungültiges Zeichen an Position "+(i+1)+"!"+msg);	 

		 return false;

	   }	 

	 else if ((i<document.Formular.email.value.length-1) &&

        	  (specialchars.indexOf(document.Formular.email.value.charAt(i))!=-1) &&

			  (specialchars.indexOf(document.Formular.email.value.charAt(i+1))!=-1))

       {

	     alert("Zwei falsche Zeichen hintereinander an Position "+(i+1)+"!"+msg);	 

		 return false;

	   }	 

    }

  return true;

}  

	 

function chkFormular()

{

  if (!(CorrectAddress()))

  {

    document.Formular.email.select();

    document.Formular.email.focus();

	return false;

  }

  document.Formular.nachricht.value=Ltrim(document.Formular.nachricht.value);

  if (document.Formular.nachricht.value == "") 

  {

    alert("Bitte geben Sie eine Nachricht ein!");

    document.Formular.nachricht.select();

    document.Formular.nachricht.focus();

	return false;

  }

  document.location.href="";

  return true;

}

