
/*
	+++
	
	TMPruefeFormular Version 0.3 
	
	Dieses Script darf frei und kostenlos verwendet werden, sofern
	-	die einzelnen Funktionen unveraendert bleiben.
	-	die einzelnen Funktions-Bezeichnungen unveraendert bleiben.
	-	diese Informationen, insbesodere auch der Hinweis auf den Urheber, unveraendert bleiben.
	
	Urheber:	Tobias Mueller 2004
	
	+++
*/
/*
	Aufruf (Beispiel): <form action="bla.php" onsubmit="return tmPruefeFormular(0,'feldname1','pMail','feldname2','p');">
	
	Parameter:
		- Parameter 1: Indexnummer des Formulars.
		Darauf koennen beliebig viele Parameter-Paare folgender Art folgen:
		- Name des zu pruefenden Feldes.
		- Art der Ueberpruefung.

	Folgende Parameter koennen fuer die Überpruefungs-Art mitgegeben werden:
		'p' = Ueberpruefe ob das Feld ausgefuellt ist.
		'pMail' = Ueberpruefe ob das Feld eine korrekte eMail-Adresse enthaelt.
		'pPLZ' = Ueberpruefe ob das Feld eine korrekte Postleitzahl enthaelt.
		'pZahl' = Ueberpruefe ob das Feld nur Zahlen enthaelt.
	
	WICHTIG: Unbedingt Gross- und Kleinschreibung beachten!
*/
function TMPruefeFormular() {
	var fehler = '', nichtausgefuellt = '', a = arguments, formindex = a[0];
	for (var i = 1; i < (a.length-2); i+=3) {
		var feldname = a[i];
		var pruefen = a[i+1];
		var feldbez = a[i+2];
		var feld = document.forms[formindex][feldname];
		var feldwert = feld.value;
		//var feldbez = feldname.slice(0,1).toUpperCase() + feldname.slice(1);
		if (!feldwert && (pruefen != 'paZahl')) {
			nichtausgefuellt += '- ' + feldbez + '\n';
		} else {
			if (pruefen.indexOf('pMail') != -1) {
				var AT = feldwert.indexOf('@');
				var letztesAT = feldwert.lastIndexOf('@');
				var letzterPunkt = feldwert.lastIndexOf('.');
				var laenge = feldwert.length;
				if ((laenge <= 6) || (laenge < (AT + 6)) || (AT != letztesAT) || (AT < 1) || (letzterPunkt <= (AT + 2)) || (letzterPunkt >= (laenge - 2))) {
					fehler += '- ' + feldbez + ' muss eine korrekte eMail-Adresse enthalten!\n';
				}
			} else if (pruefen.indexOf('pPLZ') != -1) {
				if ((isNaN(feldwert)) || (feldwert.length != 5)) {
					fehler += '- ' + feldbez + ' muss eine korrekte Postleitzahl enthalten!\n';
				}
			} else if (pruefen.indexOf('Zahl') != -1) {
				if (isNaN(feldwert)) {
					fehler += '- ' + feldbez + ' darf nur Zahlen enthalten!\n';
				}			
			}
		}
	}
	if (fehler || nichtausgefuellt) {
		var meldung = 'EINGABEFEHLER\n\n';
		var trenner = '-----------------------------------------------------------------------------------------------\t\t\n\n';
		meldung += trenner;
		if (nichtausgefuellt) {
			meldung += 'Folgende Felder muessen ausgefuellt werden:\n\n'
			meldung += nichtausgefuellt;
			if (fehler) {
				meldung += '\n'+trenner;
			}
		}
		if (fehler) {
			meldung += 'Folgende Felder wurden falsch ausgefuellt:\n\n'
			meldung += fehler;
			meldung += '\n';
		}
		alert(meldung);
		return false;
	}
}

function MM_CheckFlashVersion(reqVerStr,msg){
  with(navigator){
    var isIE  = (appVersion.indexOf("MSIE") != -1 && userAgent.indexOf("Opera") == -1);
    var isWin = (appVersion.toLowerCase().indexOf("win") != -1);
    if (!isIE || !isWin){  
      var flashVer = -1;
      if (plugins && plugins.length > 0){
        var desc = plugins["Shockwave Flash"] ? plugins["Shockwave Flash"].description : "";
        desc = plugins["Shockwave Flash 2.0"] ? plugins["Shockwave Flash 2.0"].description : desc;
        if (desc == "") flashVer = -1;
        else{
          var descArr = desc.split(" ");
          var tempArrMajor = descArr[2].split(".");
          var verMajor = tempArrMajor[0];
          var tempArrMinor = (descArr[3] != "") ? descArr[3].split("r") : descArr[4].split("r");
          var verMinor = (tempArrMinor[1] > 0) ? tempArrMinor[1] : 0;
          flashVer =  parseFloat(verMajor + "." + verMinor);
        }
      }
      // WebTV has Flash Player 4 or lower -- too low for video
      else if (userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 4.0;

      var verArr = reqVerStr.split(",");
      var reqVer = parseFloat(verArr[0] + "." + verArr[2]);
  
      if (flashVer < reqVer){
        if (confirm(msg))
          window.location = "http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash";
      }
    }
  } 
}

