//regulärer Ausdruck für die Email-Überprüfung 
var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;
//regulärer Ausdruck zur TelNr-Überprüfung
var telfilter = /^(\d|\+|\-|\.|\,|\/|\(|\))*$/;
//variablen für die div-container zur Fehleranzeige
var fname;
var femail;
var fnachricht;
var fnameposleft;
var fnamepostop;
var femailposleft;
var femailpostop;
var fnachrichtposleft;
var fnachrichtpostop;
var nameid;
var emailid;
var nachrichtid;
//Javascript - Formularprüfung

//prüft mithilfe eines regulären Ausdrucks auf korrekte Emailadresse (Hilfsfunktion zu testeForm(f))
function checkmail(e){
  var returnval=emailfilter.test(e.value);  
  return returnval;
}

function checktel(t){
  var returntel = telfilter.test(t.value);
	return returntel;
}

//prüft ob ein Feld leer ist (Hilfsfunktion zu testeForm(f))
function istLeer(s){
  for(var i = 0; i < s.length;i++){
	  var c = s.charAt(i);
		if((c != ' ' )&&(c!= '\n')&&(c!='')) return true;
	}	
	return false
}

//Hauptfunktion zur Formularprüfung
function testeForm(f){

  var nam = document.getElementById("dernameid");
	var em = document.getElementById("dieemailid");
	var nac = document.getElementById("dienachrichtid");
  var tl = document.getElementById("dietelid");

  var fehler = ""; 
	if(!istLeer(f.elements["dername"].value)||f.elements["dername"].value == "Bitte geben Sie einen Namen an."){	 
	  fehler = "eins";
	} 
	if(!istLeer(f.elements["dieemail"].value)){	 
    fehler += "zwei";		
	}
	else{
	  if(!checkmail(f.elements["dieemail"])){
		  fehler += "zweiemail";			
		}
	} 
	if(!checktel(f.elements["dietel"])){
	  fehler += "tel"
	}
	if((!istLeer(f.elements["nachricht"].value))||(f.elements["nachricht"].value == "Bitte geben Sie eine Nachricht ein")){	 
    fehler += "drei";
	}
	if(istLeer(f.elements["nachricht"].value)&&f.elements["nachricht"].value.length>1000){
	  fehler+= "vier";
	}
	
	
	//falsch oder gar nicht ausgefüllt
	if(fehler!= ""){
	  if(fehler.indexOf("eins") != -1){
		  nam.value = "Bitte geben Sie einen Namen an.";
			nam.style.color = "red";
		}	
		if(fehler.indexOf("zwei") != -1){
		  em.value = "Bitte geben Sie eine E-Mail Adresse an.";
			em.style.color = "red";
		}
		if(fehler.indexOf("zweiemail") != -1){
		  em.value = "Bitte geben Sie eine gültige E-Mailadresse ein.";
			em.style.color = "red";
		}
		if(fehler.indexOf("tel") != -1){
		  tl.value = "Bitte geben Sie eine gültige Telefonnr. an.";
			tl.style.color = "red";
		}
		if(fehler.indexOf("drei") != -1){
      nac.value = "Bitte geben Sie eine Nachricht ein.";
			nac.style.color = "red";
		}	
		if(fehler.indexOf("vier") != -1){
      nac.value = "Bitte nicht mehr als 1000 Zeichen eingeben.";
			nac.style.color = "red";
		}	
	  return false;
	}
	//richtig ausgefüllt
	else{	
	 return true;  
	}
}

