function ismail(str) {
// are regular expressions supported?
var supported = 0;
if (window.RegExp) {
  var tempStr = "a";
  var tempReg = new RegExp(tempStr);
  if (tempReg.test(tempStr)) supported = 1;
}
if (!supported) 
  return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
  var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
  var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
  return (!r1.test(str) && r2.test(str));
}
	
function validateForm() {
	valid = true, output = '';
		
	checkContactInfo();
	
	if(output > '') {
		valid = false;
		alert(output);
	}
	
	return valid;
	//return false;
}

function checkContactInfo() {
	valid = true;
	
	if (document.anfrage.datum.value.replace(/[^0-9]/g,'').length < 8) {
	  	valid = false;
	  	//output += '- Telefon\n';
		document.getElementById('datum').className = 'formfield_missing';
		document.getElementById('label_datum').className = 'label_missing';
	} else {
		document.getElementById('datum').className = 'formfield';
		document.getElementById('label_datum').className = 'label_checked';
	}
	
	if (!document.anfrage.vorname.value) {
	  	valid = false;
	  	//output += '- Vorname\n';
		document.getElementById('vorname').className = 'formfield_missing';
		document.getElementById('label_vorname').className = 'label_missing';
	} else {
		document.getElementById('vorname').className = 'formfield';
		document.getElementById('label_vorname').className = 'label_checked';
	}
	
	if (!document.anfrage.nachname.value) {
	  	valid = false;
	  	//output += '- Nachname\n';
		document.getElementById('nachname').className = 'formfield_missing';
		document.getElementById('label_nachname').className = 'label_missing';
	} else {
		document.getElementById('nachname').className = 'formfield';
		document.getElementById('label_nachname').className = 'label_checked';
	}
	
	if (!document.anfrage.plz.value) {
	  	valid = false;
	  	//output += '- PLZ\n';
		document.getElementById('plz').className = 'formfield_missing';
		document.getElementById('label_plz').className = 'label_missing';
	} else {
		document.getElementById('plz').className = 'formfield';
		document.getElementById('label_plz').className = 'label_checked';
	}
	
	if (!document.anfrage.ort.value) {
	  	valid = false;
	  	//output += '- Ort\n';
		document.getElementById('ort').className = 'formfield_missing';
		document.getElementById('label_ort').className = 'label_missing';
	} else {
		document.getElementById('ort').className = 'formfield';
		document.getElementById('label_ort').className = 'label_checked';
	}
	
	if (!document.anfrage.adresse.value) {
	  	valid = false;
	  	//output += '- Adresse\n';
		document.getElementById('adresse').className = 'formfield_missing';
		document.getElementById('label_adresse').className = 'label_missing';
	} else {
		document.getElementById('adresse').className = 'formfield';
		document.getElementById('label_adresse').className = 'label_checked';
	}	
	
	if (document.anfrage.tel.value.replace(/[^0-9]/g,'').length < 5) {
	  	valid = false;
	  	//output += '- Telefon\n';
		document.getElementById('tel').className = 'formfield_missing';
		document.getElementById('label_tel').className = 'label_missing';
	} else {
		document.getElementById('tel').className = 'formfield';
		document.getElementById('label_tel').className = 'label_checked';
	}
	
	if (!document.anfrage.mail.value) {
	  	valid = false;
	  	//output += '- E-Mail\n';
		document.getElementById('mail').className = 'formfield_missing';
		document.getElementById('label_mail').className = 'label_missing';
	} else {
		document.getElementById('mail').className = 'formfield';
		document.getElementById('label_mail').className = 'label_checked';
	}	
	
	if (document.anfrage.mail.value.length != 0) {
		if ((ismail(document.anfrage.mail.value) == false)) {
			valid = false;
			document.getElementById('mail').className = 'formfield_missing';
			document.getElementById('label_mail').className = 'label_missing';
		} else {
			document.getElementById('mail').className = 'formfield';
			document.getElementById('label_mail').className = 'label_checked';
		}	
	}
	
	if (!valid) output += '- Kontaktinfo ist unvollständig\n';
}
