var NV_checkform = function(f)
{
/*
	Carsten Meyer
	New Voice GmbH 2006
*/

	var fehler = 0;
	var fehlertext = '';
	var lab = f.getElementsByTagName('label');
	var len = lab.length;

	var regdatum = /[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}/;
	regex = /^[A-Z0-9._%\-]+@[A-Z0-9._%\-]+\.[A-Z]{2,4}$/i;
	plzreg = /^[0-9]{5}$/i;
	passreg = /^[0-9A-Za-z]{6,10}$/i;

  for(var i=0; i<len; i++)
  {
  labelfor = (lab[i].getAttribute('HTMLfor')|| lab[i].getAttribute('for'));

  if(lab[i].innerHTML.indexOf('*') > -1)
  {
	if(
	  (document.getElementById(labelfor).type == 'text' && document.getElementById(labelfor).value == '')
	  ||
	  (document.getElementById(labelfor).type == 'hidden' && document.getElementById(labelfor).id == 'geburtsdatum' && !regdatum.test(document.getElementById(labelfor).value))
	  ||
	  (document.getElementById(labelfor).type == 'text' && labelfor == 'Email'  && !regex.test(document.getElementById(labelfor).value))
	  ||
	  (document.getElementById(labelfor).type == 'text' && labelfor == 'PLZ'    && !plzreg.test(document.getElementById(labelfor).value))
	  ||
	  (document.getElementById(labelfor).type == 'password' && labelfor == 'Password'    && !passreg.test(document.getElementById(labelfor).value))
	  ||
	  (document.getElementById(labelfor).type == 'password' && labelfor == 'Password2'    && !passreg.test(document.getElementById(labelfor).value))
	  ||
	  (document.getElementById(labelfor).type == 'password' && labelfor == 'Password2'    &&  document.getElementById(labelfor).value !=  document.getElementById('Password').value )
	  ||
	  (document.getElementById(labelfor).type == 'textarea' && document.getElementById(labelfor).value.length == 0)
	  ||
	  (document.getElementById(labelfor).type == 'checkbox' && !document.getElementById(labelfor).checked)
	  ||
	  (document.getElementById(labelfor).type == 'select-one' && document.getElementById(labelfor).selectedIndex == 0)
	)
	{
		lab[i].className = 'fehler';
        fehler++;
	}
  	else
	{
		lab[i].className = '';
	}
}
	else
	{
		lab[i].className = '';
	}
}


	if(fehler > 0)
	{
		return false;
	}
	else
	{
		return true;
	}
}
