function DatumErgaenzen(datum) {
	var checkstr = "0123456789";
	var Rueckgabe = "";
	var DateValue = datum;
	var DateTemp = "";
	var seperator = ".";
	var day;
	var month;
	var year;
	var leap = 0;
	var err = 0;
	var i;
	var PunktPosition = 0;
	var AktuellerMonat = "";
	var TagesDatum = new Date();
	var AktuellesJahr = TagesDatum.getFullYear() + "";
		AktuellesJahr = AktuellesJahr.substr(2,2);
	   err = 0;

	   // Tag ergaenzen, falls einstellig
	   PunktPosition = DateValue.indexOf(".");
	   if (PunktPosition == 1) {
	   		DateValue = "0" + DateValue.substr(0,1) + "_" + DateValue.substr(2);
			}

	   // Monat ergaenzen, falls 2-stellig
	   PunktPosition = DateValue.indexOf(".");
	   if (PunktPosition == 4) {
	   		DateValue = DateValue.substr(0,3) + "0" + DateValue.substr(3,1) + "_" + DateValue.substr(5);
			}
		// falls nach dem monat kein punkt eingegeben wurde
		if (PunktPosition == -1) {
			month = DateValue.substr(3);
			if (month.length < 2) {month = "0"+month;}
			DateValue = DateValue.substr(0,3) + month + "_" + DateValue.substr(5);
			}
			
	   // alle nichtzahlen aus dem datum loeschen
	   for (i = 0; i < DateValue.length; i++) {
		  if (checkstr.indexOf(DateValue.substr(i,1)) >= 0) {
			 DateTemp = DateTemp + DateValue.substr(i,1);
		  }
	   }

		DateValue = DateTemp;
	   
	   // Jahr anfuegen, falls nur Tag und Monat eingegeben
	   if (DateValue.length == 4) {
	   		month = DateValue.substr(3,2);
			AktuellerMonat = TagesDatum.getMonth() + 1;
			// Jahr eins erhoehen, falls Monat kleiner aktueller Monat
			if (AktuellerMonat > parseInt(month)) {
				AktuellesJahr = TagesDatum.getFullYear() + 1;
				AktuellesJahr = AktuellesJahr + "";
				AktuellesJahr = AktuellesJahr.substr(2,2);
				}
	   	  DateValue = DateValue + AktuellesJahr; 
		  }
		  
	   // Jahr auf 4-stellig setzen
	   if (DateValue.length == 6) {
		  DateValue = DateValue.substr(0,4) + '20' + DateValue.substr(4,2); }
	   if (DateValue.length != 8) {
		  err = 19;}
	   // pruefen, ob jahr mit 0000 eingegeben
	   year = DateValue.substr(4,4);
	   if (year == 0) {
		  err = 20;
	   }
	   // pruefen, ob monat gueltig
	   month = DateValue.substr(2,2);
	   if ((month < 1) || (month > 12)) {
		  err = 21;
	   }
	   // pruefen, ob tag < 1
	   day = DateValue.substr(0,2);
	   if (day < 1) {
		 err = 22;
	   }
	   // pruefen of schaltjahr
	   if ((year % 4 == 0) || (year % 100 == 0) || (year % 400 == 0)) {
		  leap = 1;
	   }
	   if ((month == 2) && (leap == 1) && (day > 29)) {
		  err = 23;
	   }
	   if ((month == 2) && (leap != 1) && (day > 28)) {
		  err = 24;
	   }
	   // pruefen ob tag innerhalb monat
	   if ((day > 31) && ((month == "01") || (month == "03") || (month == "05") || (month == "07") || (month == "08") || (month == "10") || (month == "12"))) {
		  err = 25;
	   }
	   if ((day > 30) && ((month == "04") || (month == "06") || (month == "09") || (month == "11"))) {
		  err = 26;
	   }
	   // pruefen, ob werte vorhanden
	   if ((day == 0) && (month == 0) && (year == 00)) {
		  err = 0; day = ""; month = ""; year = ""; seperator = "";
	   }
	   // ausgabe, falls datum gueltig
	   if (err == 0) {
		  Rueckgabe = day + seperator + month + seperator + year;
		  return Rueckgabe;
	   }
	   // fehlermeldung
	   else {
		  alert("ungueltiges Datum");
	   }
}
