// JavaScript Document
function char_count(){
   //Über die DOM-Methode document.getElementById wird der Wert aus dem Eingabefeld geholt
   //und der Variablen val zugewiesen.
   var val = document.getElementById('eingabe_pw').value;

   //Anschließend wird über die selbe DOM-Methode ein Referenzpunkt für das Feedback erzeugt 
   //und in der Variablen call gespeichert.
   var call = document.getElementById('feedback_pw');
            
   //Ab hier beginnt die Prüfung.
   //Das Passwort ist entweder zu kurz, unsicher, sicher oder sehr sicher
   
   //Ist das Passwort wenigstens 6 Zeichen lang?
   if (val.length > 8)  
   {    
        
      //Wenn das Passwort neben Buchstaben zusätzlich wenigstens eine Zahl 
      //und ein Sonderzeichen enthält, ist es "sehr sicher".    
      if (val.match(/\d{1,}/) && val.match(/[a-zA-ZäöüÄÖÜ]{1,}/) && val.match(/\W/)) 
      {   
			call.style.color="#428c0d";               
		 	call.innerHTML = "<strong>sehr sicher!</strong>";
		 	$pw_status='sehr sicher!';
      }        
      //Wenn das Passwort nur eine Zahl oder ein Sonderzeichen enthält, ist es "sicher"?           
      else if (val.match(/\d{1,}/) && val.match(/[a-zA-ZäöüÄÖÜ]{1,}/) || val.match(/\W/) && val.match(/[a-zA-ZäöüÄÖÜ]{1,}/)) 
      {   
			call.style.color="#56a40c"; 
			call.innerHTML = "<strong>sicher!</strong>";
			$pw_status='sicher!';
      }
	   //Hier enthält das Passwort weder Ziffern noch Sonderzeichen und ist somit "unsicher".
      else
      {         
    		call.style.color="#ff9410"; 
    		call.innerHTML = "<strong>unsicher!</strong>";
			$pw_status='unsicher!';
	  }	
    } 
	//Hier enthält das Passwort nicht mal die erforderlichen 6 Zeichen und ist daher "zu kurz"
    else 
    {
		call.style.color="#ff352c"; 
		call.innerHTML = "<strong>zu kurz!</strong>";
		$pw_status='zu kurz!';
	}          
};      

