function Formpruefung(Formular)
{

  if (getCheckedValue(Formular.elements['anrede']) == "")
  {
    alert(unescape("Bitte w%E4hlen Sie eine Anrede aus."));
    Formular.prename.focus();
    return (false);
  }

  if (Formular.prename.value == "")
  {
    alert("Bitte geben Sie Ihren Vornamen im Feld \"Vorname\" ein.");
    Formular.prename.focus();
    return (false);
  }

  if (Formular.name.value == "")
  {
    alert("Bitte geben Sie Ihren Nachnamen im Feld \"Name\" ein.");
    Formular.name.focus();
    return (false);
  }

  if (Formular.street.value == "")
  {
    alert(unescape("Bitte geben Sie Stra%DFe und Hausnummer im Feld \"Stra%DFe/Hausnummer\" ein."));
    Formular.street.focus();
    return (false);
  }

  if (Formular.plz.value == "")
  {
    alert("Bitte geben Sie Ihre PLZ im Feld \"PLZ\" ein.");
    Formular.plz.focus();
    return (false);
  }


  if (Formular.city.value == "")
  {
    alert("Bitte geben Sie Ihren Wohnort im Feld \"Ort\" ein.");
    Formular.city.focus();
    return (false);
  }

  if (!(validEmail(Formular.mail.value))) {
    alert(unescape("Ung%FCltige E-Mailadresse!"));
    Formular.mail.focus()
		 return false
   }


  if ((Formular.prephone.value == "")||(isNaN(Formular.prephone.value)))
  {
    alert("Bitte geben Sie Ihre Vorwahl als reine Zahlen im Feld \"Tel.-Vorwahl\" ein.");
    Formular.prephone.focus();
    return (false);
  }


  if ((Formular.phone.value == "")||(isNaN(Formular.phone.value)))
  {
    alert("Bitte geben Sie Ihre Telefonnummer als reine Zahlen im Feld \"Telefon\" ein.");
    Formular.phone.focus();
    return (false);
  }

  if (getCheckedValue(Formular.elements['ag']) == "")
  {
    alert("Bitte akzeptieren Sie die AGB durch Anklicken.");
    Formular.nachricht.focus();
    return (false);
  }

  return (true);
}

// return the value of the radio button that is checked
// return an empty string if none are checked, or
// there are no radio buttons
function getCheckedValue(radioObj) {
	if(!radioObj)
		return "";
	var radioLength = radioObj.length;
	if(radioLength == undefined)
		if(radioObj.checked)
			return radioObj.value;
		else
			return "";
	for(var i = 0; i < radioLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
	return "";
}


   function validEmail(email) {
			invalidChars = " /:,#'`$~!%^&*()+\"\;<>?\\|	"
			if (email == "") {						// cannot be empty
				return false
			}
			for (i = 0; i < invalidChars.length; i++) {	// does it contain any invalid characters?
				badChar = invalidChars.charAt(i)
				if (email.indexOf(badChar,0) > -1) {
					return false
				}
			}
			atPos = email.indexOf("@",1)			// there must be one "@" symbol
			if (atPos == -1) {
				return false
			}
			if (email.indexOf("@",atPos+1) != -1) {	// and only one "@" symbol
				return false
			}
			periodPos = email.indexOf(".",atPos)
			if (periodPos == -1) {					// and at least one "." after the "@"
				return false
			}
			if (periodPos+3 > email.length)	{		// must be at least 2 characters after the "."
				return false
			}
			return true
	}


   function validEmail(email) {
			invalidChars = " /:,#'`$~!%^&*()+\"\;<>?\\|	"
			if (email == "") {						// cannot be empty
				return false
			}
			for (i = 0; i < invalidChars.length; i++) {	// does it contain any invalid characters?
				badChar = invalidChars.charAt(i)
				if (email.indexOf(badChar,0) > -1) {
					return false
				}
			}
			atPos = email.indexOf("@",1)			// there must be one "@" symbol
			if (atPos == -1) {
				return false
			}
			if (email.indexOf("@",atPos+1) != -1) {	// and only one "@" symbol
				return false
			}
			periodPos = email.indexOf(".",atPos)
			if (periodPos == -1) {					// and at least one "." after the "@"
				return false
			}
			if (periodPos+3 > email.length)	{		// must be at least 2 characters after the "."
				return false
			}
			return true
	}
