
/***************************************************
  Adress Check
***************************************************/
 
 
  
  var checkArray, myForm, myInput, myInputName;
  var labelName, myLabel, labelElems, checkResult, i, j, re;
 
 function check(myForm,check){
 //DOM muss stimmen...
   if(document.getElementById){
   		//mit dem Funktionsaufruf werden die zu pruefenden Felder uebergeben
	   checkArray  = check.split(":"); 
			//Alle Labels zuruecksetzen
		   labelElems=document.getElementsByTagName("label");
		   for (i = 0; i < labelElems.length; i++){    
				labelElems[i].style.fontWeight = "normal";
				labelElems[i].style.color = "#666";
				}

		//Felder nacheinander pruefen
		for (i=0; i<checkArray.length; i++){	         
			checkResult = false;
		    myInput= myForm[checkArray[i]];
			 
			// alert('checkArray[i]: '+ checkArray[i]+"\nvalue: "+ myInput.value);
			
			 if (myInput.type == null){
				for (var j = 0; j < myInput.length; j++){
					if (myInput[j].checked){
						checkResult = true;
					}
				}	
			}
			else if(myInput.value){//Eintrag im Feld pruefen
				checkResult = true;

				myInputName = /p_zeitraum/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 				

				myInputName = /p_konto/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 
					
				myInputName = /p_bankleitzahl/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 				

				myInputName = /p_betrag/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 
					
				//Wenn Feldbezeichner  "name" in Gross- oder Kleinschreibung enthaelt
				 myInputName = /p_name/i; 
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 
				
				//Wenn Feldbezeichner  "name" in Gross- oder Kleinschreibung enthaelt
				 myInputName = /p_nachname/i; 
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 

				myInputName = /p_vorname/i; 			
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 

				myInputName = /p_strasse/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 

				myInputName = /p_ort/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 				

				myInputName = /p_email/i;
				if (myInputName.test(myInput.name))
					{checkResult = check_email(myInput.value);}
					
				myInputName = /p_telefon/i;
				if (myInputName.test(myInput.name))
					{checkResult = check_telefon(myInput.value);}
					
				myInputName = /p_nachricht/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 

				myInputName = /p_verwendungszweck/i; 				
				if (myInputName.test(myInput.name))
				//Dann fuehre die Pruefung durch: hier check auf "string"
					{checkResult = check_string(myInput.value);} 
					
				myInputName = /p_passwort/i;
				if (myInputName.test(myInput.name))
					{checkResult = check_string(myInput.value);}	
					
				myInputName = /p_alter/i;
				if (myInputName.test(myInput.name))
					{checkResult = check_empty(myInput.value);}			
					
				myInputName = /uploadfile/i;
				if (myInputName.test(myInput.name))
					{checkResult = check_string(myInput.value);}

			}
			
		   if(!checkResult){		
			 // alert('TEST: '+checkArray[i].substring(0, 2));
			   if(checkArray[i].substring(0, 2) == "p_") {
			   	labelName =  checkArray[i].replace(/p_/,"l_");
				} else {
					labelName =  "l_"+checkArray[i];
				}
				myLabel= eval(document.getElementById(labelName));
				myLabel.style.fontWeight = "bold";
				myLabel.style.color = "#FF3300";
				if (myInput.type =="textarea" || myInput.type =="text") myInput.focus();				
				return false;	
				}
	   }// For Schleife
	 }// If document.getElementById
}// End of function



function check_plz(s) {
  var re = /^\d{5}$/;
  return re.test(s);
}

function check_telefon(s) {
  var re = /^[0-9\[\(]+[0-9\ \(\)\[\]\-\/]{5,}[0-9]+$/;
  return re.test(s);
}

function check_email(s) {
  var re = /^[a-zA-Z0-9_\.\-]+@([a-zA-Z0-9\-_]|\.)*[a-zA-Z0-9]{2,}\.[a-zA-Z0-9]{2,4}$/;
  return re.test(s);
}

function check_string(s) {
  if (s.length>3) return true;
  else return false;
}

function check_empty(s) {
  if (s != '') return true;
  else return false;
}

 /* Im IE mouseover-Farbwechsel bei textarea und text-input-Feldern
    Funktionsaufruf am Ende des Dokuments 
	
	Mozilla 1.* bewegt merkwuerdigerweise die Positionierung beim
	mouseover und wurde daher vorerst auisgeschlossen
	*/
function init(){  
	if(document.getElementsByTagName){ 
	var i, n_elems, elems, eTyp, eFocus= false;
	
	// Funktionen 
	function eventHandle(elems, eTyp){
	n_elems = elems.length; 
	//alert (n_elems);
		for (i = 0; i < n_elems; i++) {
			if ((elems[i].getAttribute('type')=='text')||(eTyp=='tTextarea')) {
			    // Focus auf erstes Eingabe-Feld
				//if(!eFocus){elems[i].focus();eFocus=true;}
				elems[i].onmouseover= handleOverEvt;	
				elems[i].onmouseout= handleOffEvt;
				}
			}
		}
		   
       function handleOverEvt(event) { this.style.backgroundColor='#FFFFFF';}
       function handleOffEvt(event) { this.style.backgroundColor='#FBF6ED';}
	   
	   
		eventHandle(document.getElementsByTagName('textarea'),'tTextarea');
	   	eventHandle(document.getElementsByTagName('input'),'tInput');
	}
}
