//datum validieren
function checkDatum (feld) {
   var Monat = new  Array("01","02","03","04","05","06","07","08","09","10","11","12");
   var Tag = new  Array("00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31");

   var datum = feld.value

   //Fehlerbehandlung
   if (!datum) return false;
   datum=datum.toString();

   //Aufspaltung des Datums
   datum=datum.split(".");
   if (datum.length!=3) return false;

   if (datum[2].length!=4) return false;
   if (datum[1].length!=2) return false;
   if (datum[0].length!=2) return false;

   //Entfernung der fuehrenden Nullen und Anpassung des Monats
   datum[0]=parseInt(datum[0],10);
   datum[1]=parseInt(datum[1],10)-1;

   //Behandlung Jahr nur zweistellig
   if (datum[2].length==2) {
		if(datum[2] < 10) {
			datum[2]="20"+datum[2];
		}
		else{
			datum[2]="19"+datum[2];
		}
   }

   //Behandlung Jahr nur einstellig
   if (datum[2].length==1) {
			datum[2]="200"+datum[2];
   }

   //Erzeugung eines neuen Dateobjektes
   var kontrolldatum=new Date(datum[2],datum[1],datum[0]);

   //Vergleich, ob das eingegebene Datum gleich dem JS-Datum ist
   if (kontrolldatum.getDate()==datum[0] && kontrolldatum.getMonth()==datum[1] && kontrolldatum.getFullYear()==datum[2]) {
	 return true;
   }
   else {
	   return false;
   }
}

function checkVorlauf (feld) {
   var datum = feld.value
   //Aufspaltung des Datums
   datum=datum.split(".");
   
   //Entfernung der fuehrenden Nullen und Anpassung des Monats
   datum[0]=parseInt(datum[0],10);
   datum[1]=parseInt(datum[1],10)-1;
   
   //Behandlung Jahr nur zweistellig
   if (datum[2].length==2) {
		if(datum[2] < 10) {
			datum[2]="20"+datum[2];
		}
		else{
			datum[2]="19"+datum[2];
		}
   }

   //Behandlung Jahr nur einstellig
   if (datum[2].length==1) {
			datum[2]="200"+datum[2];
   }

   //Erzeugung eines neuen Dateobjektes
   var abflugdatum=new Date(datum[2],datum[1],datum[0],0,0,0);
   var heute=new Date();
   var heuteTag=heute.getDate();
   var heuteMonat=heute.getMonth();
   var heuteJahr=heute.getFullYear();
   var kontrolldatum=new Date(heuteJahr,heuteMonat,heuteTag,0,0,0);
   if (abflugdatum.getTime() < kontrolldatum.getTime()+259200000) {
	return false;
   }
   else {
	return true;
   }
}

function checkDatumsfolge (feld1,feld2) {
   var datum1 = feld1.value
   //Aufspaltung des Datums
   datum1=datum1.split(".");

   //Entfernung der fuehrenden Nullen und Anpassung des Monats
   datum1[0]=parseInt(datum1[0],10);
   datum1[1]=parseInt(datum1[1],10)-1;

   //Behandlung Jahr nur zweistellig
   if (datum1[2].length==2) {
		if(datum1[2] < 10) {
			datum1[2]="20"+datum1[2];
		}
		else{
			datum1[2]="19"+datum1[2];
		}
   }

   //Behandlung Jahr nur einstellig
   if (datum1[2].length==1) {
			datum1[2]="200"+datum1[2];
   }

   var datum2 = feld2.value
   //Aufspaltung des Datums
   datum2=datum2.split(".");

   //Entfernung der fuehrenden Nullen und Anpassung des Monats
   datum2[0]=parseInt(datum2[0],10);
   datum2[1]=parseInt(datum2[1],10)-1;

   //Behandlung Jahr nur zweistellig
   if (datum2[2].length==2) {
		if(datum2[2] < 10) {
			datum2[2]="20"+datum2[2];
		}
		else{
			datum2[2]="19"+datum2[2];
		}
   }

   //Behandlung Jahr nur einstellig
   if (datum2[2].length==1) {
			datum2[2]="200"+datum2[2];
   }

   //Erzeugung eines neuen Dateobjektes
   var abflugdatum=new Date(datum1[2],datum1[1],datum1[0],0,0,0);
   var rueckflugdatum=new Date(datum2[2],datum2[1],datum2[0],0,0,0);
   if (rueckflugdatum.getTime() < abflugdatum.getTime()) {
	return false;
   }
   else {
	return true;
   }
}

function checkPickup (feld1,feld2,feld3,feld4,feld5) {
	   var datum1 = feld1.value
	   //Aufspaltung des Datums
	   datum1=datum1.split(".");

	   //Entfernung der fuehrenden Nullen und Anpassung des Monats
	   datum1[0]=parseInt(datum1[0],10);
	   datum1[1]=parseInt(datum1[1],10)-1;

	   //Behandlung Jahr nur zweistellig
	   if (datum1[2].length==2) {
			if(datum1[2] < 10) {
				datum1[2]="20"+datum1[2];
			}
			else{
				datum1[2]="19"+datum1[2];
			}
	   }

	   //Behandlung Jahr nur einstellig
	   if (datum1[2].length==1) {
				datum1[2]="200"+datum1[2];
	   }

	   var datum2 = feld3.value
	   //Aufspaltung des Datums
	   datum2=datum2.split(".");

	   //Entfernung der fuehrenden Nullen und Anpassung des Monats
	   datum2[0]=parseInt(datum2[0],10);
	   datum2[1]=parseInt(datum2[1],10)-1;

	   //Behandlung Jahr nur zweistellig
	   if (datum2[2].length==2) {
			if(datum2[2] < 10) {
				datum2[2]="20"+datum2[2];
			}
			else{
				datum2[2]="19"+datum2[2];
			}
	   }

	   //Behandlung Jahr nur einstellig
	   if (datum2[2].length==1) {
				datum2[2]="200"+datum2[2];
	   }
	   
	   var time1 = feld2.value
	   //Aufspaltung des Datums
	   time1=time1.split(":");
	   
	   var time2 = feld4.value
	   //Aufspaltung des Datums
	   time2=time2.split(":");
	   
	   var transferdauer = parseInt(feld5);

	   //Erzeugung eines neuen Dateobjektes
	   var abflugdatum=new Date(datum1[2],datum1[1],datum1[0],time1[0],time1[1]);
	   var pickupdatum=new Date(datum2[2],datum2[1],datum2[0],time2[0],time2[1]);

	   var minutes = abflugdatum.getMinutes();
	   minutes -= (90 + transferdauer);
	   abflugdatum.setMinutes(minutes);
	   
	   if (pickupdatum > abflugdatum) {
		var Tag = abflugdatum.getDate();
		if (Tag < 10) Tag = "0" + Tag;
		var Monat = abflugdatum.getMonth();
		Monat += 1;
		if (Monat < 10) Monat = "0" + Monat;
		var Jahr = abflugdatum.getFullYear();
		Stunde = abflugdatum.getHours();
		if (Stunde < 10) Stunde = "0" + Stunde;
		Minute = abflugdatum.getMinutes();
		if (Minute < 10) Minute = "0" + Minute;
		document.transfer.rueckpickupdatum.value = Tag + "." + Monat + "." + Jahr;
		document.transfer.rueckpickuptime.value = Stunde + ":" + Minute;
		return false;
	   }
	   else {
		return true;
	   }
	}

function checkTime (feld) {
   var time = feld.value

   //Fehlerbehandlung
   if (!time) return false;
   time=time.toString();

   //Aufspaltung des Datums
   time=time.split(":");
   if (time.length!=2) return false;

   if (time[0].length!=2) return false;
   if (time[1].length!=2) return false;
   
   if (isNaN(time[0])) return false;
   if (isNaN(time[1])) return false;

   return true;
}
