function checktim(elem1,elem2) {
  stunde = elem1.value; minute = elem2.value;
  tmp = new Date(2000,1,0,stunde,minute,0);
  if(stunde > 23 || minute > 59) {  alert('Bitte geben Sie eine gueltige Uhrzeit ein.'); elem1.focus(); return false; 
  } else { return stunde+":"+minute; }
}


function checkdat(elem) {
 wert = elem.value; if (!wert) { return false; }
 var regex = /^([0-3][0-9])\.([0-1][0-9])\.(\d{4})$/;
 erg = regex.exec(wert);
 if (!erg) {  alert("Geben Sie ein gueltiges Datum im Format 'TT.MM.JJJJ' an."); elem.focus(); return false; 
 } else { 
   tag = RegExp.$1; mon = RegExp.$2; jah = RegExp.$3; 
   tmp = new Date(jah,mon,0);
   if(tmp.getDate() < tag || mon > 12 || mon == 0 || jah < 2009 || tag == 0) {  alert('Datum hat richtiges Format, ist aber kein gueltiges Datum.');
           elem.focus(); return false;
   } else { return wert; }
 } 
}



function check1() {

 if (!document.buchform.name.value)    	{ alert('Bitte geben Sie einen Namen ein.');        	document.buchform.name.focus();    return false; } 
 if (document.buchform.email.value)   	{ 
 	  var regex = /^[a-zA-Z0-9][\w\.-]*@(?:[a-zA-Z0-9][a-zA-Z0-9_-]+\.)+[A-Z,a-z]{2,5}$/;
 	  erg = regex.exec(document.buchform.email.value);
 	  if (!erg) {  alert("Geben Sie eine gueltige Email-Adresse ein."); document.buchform.email.focus(); return false; } 
 }

 if (!document.buchform.email.value) {
   if (!document.buchform.str.value || !document.buchform.nr.value || !document.buchform.plz.value || !document.buchform.ort.value) {
    alert("Bei Buchungen ohne E-Mail-Adresse geben Sie die vollstaendige Anschrift ein.");
    if (!document.buchform.str.value) { document.buchform.str.focus(); return false; }
    if (!document.buchform.nr.value) { document.buchform.nr.focus(); return false; }
    if (!document.buchform.plz.value) { document.buchform.plz.focus(); return false; }
    if (!document.buchform.ort.value) { document.buchform.ort.focus(); return false; }
    return false;
   }
 }

 if (!document.buchform.tel.value) 	{ alert('Bitte geben Sie eine Telefonnummer ein.'); 	document.buchform.tel.focus(); 	   return false; } 
 if (document.buchform.pers.options[document.buchform.pers.selectedIndex].value == "0")	{ 
 	alert('Bitte geben Sie eine Personenanzahl an.'); 	document.buchform.pers.focus(); 	   return false; } 

 if (!document.buchform.adatum.value) { 
	alert("Bitte geben Sie ein Datum bei 'Hinflug' ein.");
	document.buchform.adatum.focus();
	return false; 
 } else { rvdat = checkdat(document.buchform.adatum); } 

 astunde=document.buchform.astunde.options[document.buchform.astunde.selectedIndex];
 aminute=document.buchform.aminute.options[document.buchform.aminute.selectedIndex];
 estunde=document.buchform.estunde.options[document.buchform.estunde.selectedIndex];
 eminute=document.buchform.eminute.options[document.buchform.eminute.selectedIndex];

 if (astunde.value=="-" || aminute.value=="-") { 
	alert("Bitte geben Sie eine Uhrzeit bei 'Hinflug' ein.");
	document.buchform.astunde.focus();
	return false; 
 } else { rvtim = checktim(astunde,aminute); } 

 if (!document.buchform.edatum.value) { 
	alert("Bitte geben Sie ein Datum bei 'Rueckflug' ein."); 
	document.buchform.edatum.focus(); 
	return false; 
 } else { rbdat = checkdat(document.buchform.edatum); } 

 if (estunde.value=="-" || eminute.value=="-") { 
	alert("Bitte geben Sie eine Uhrzeit bei 'Ankunftszeit' ein.");
	document.buchform.estunde.focus();
	return false; 
 } else { rbtim = checktim(estunde,eminute); } 


   dh = heute_dat.split("."); tmpheute = new Date(dh[2],dh[1]-1,dh[0],0,0,0);
   dv = rvdat.split("."); tv = rvtim.split(":"); tmpvon = new Date(dv[2],dv[1]-1,dv[0],tv[0],tv[1],0);
   db = rbdat.split("."); tb = rbtim.split(":"); tmpbis = new Date(db[2],db[1]-1,db[0],tb[0],tb[1],0);
 if (rvdat) { if (tmpheute > tmpvon) { alert("Datum 'Hinflug' darf nicht in der Vergangenheit liegen."); document.buchform.adatum.focus(); return false; } }

 if (rvdat && rbdat && rvtim && rbtim) { 
 // Parkhalle nur vom 01.11.2010 - 31.03.2011 buchbar
   if(document.buchform.stellplatz[1].checked==true) {
     hallevon = new Date(2010,10,1,0,0,0);
     hallebis = new Date(2011,2,31,23,59,59);
     if (tmpvon < hallevon || tmpbis > hallebis) { alert("Die Parkhalle ist nur vom 01.11.2010 - 31.03.2011 buchbar."); document.buchform.adatum.focus(); return false; }
   }
   if (tmpvon >= tmpbis) { alert("Datum/Zeit 'Hinflug' darf nicht nach Datum/Zeit 'Rueckflug' liegen oder gleich sein."); document.buchform.adatum.focus(); return false; } 
 }

// if (!document.buchform.flugnrhin.value)    	{ alert('Bitte geben Sie eine Flugnummer bei Hinflug ein.');  	document.buchform.flugnrhin.focus();  return false; } 
// if (!document.buchform.flugnrruk.value)    	{ alert('Bitte geben Sie eine Flugnummer bei Rueckflug ein.'); 	document.buchform.flugnrruk.focus();  return false; } 
 if (!document.buchform.ziel.value) 		{ alert('Bitte geben Sie ein Reiseziel an.'); 			document.buchform.ziel.focus();	      return false; } 
   else { document.buchform.submit();  }

}








function check2() {

 astunde=document.checkform.astunde.options[document.checkform.astunde.selectedIndex];
 aminute=document.checkform.aminute.options[document.checkform.aminute.selectedIndex];
 estunde=document.checkform.estunde.options[document.checkform.estunde.selectedIndex];
 eminute=document.checkform.eminute.options[document.checkform.eminute.selectedIndex];

 if (!document.checkform.adatum.value) { 
	alert("Bitte geben Sie ein Datum bei 'Hinflug' ein.");
	document.checkform.adatum.focus();
	return false; 
 } else { rvdat = checkdat(document.checkform.adatum); } 

 if (astunde.value=="-" || aminute.value=="-") { 
	alert("Bitte geben Sie eine Uhrzeit bei 'Hinflug' ein.");
	document.checkform.astunde.focus();
	return false; 
 } else { rvtim = checktim(astunde,aminute); } 

 if (!document.checkform.edatum.value) { 
	alert("Bitte geben Sie ein Datum bei 'Ankunft Rueckflug' ein."); 
	document.checkform.edatum.focus(); 
	return false; 
 } else { rbdat = checkdat(document.checkform.edatum); } 

 if (estunde.value=="-" || eminute.value=="-") { 
	alert("Bitte geben Sie eine Uhrzeit bei 'Ankunft Rueckflug' ein.");
	document.checkform.estunde.focus();
	return false; 
 } else { rbtim = checktim(estunde,eminute); } 


 if (rvdat && rbdat && rvtim && rbtim) { 
   dv = rvdat.split("."); tv = rvtim.split(":"); tmpvon = new Date(dv[2],dv[1]-1,dv[0],tv[0],tv[1],0);
   db = rbdat.split("."); tb = rbtim.split(":"); tmpbis = new Date(db[2],db[1]-1,db[0],tb[0],tb[1],0);
   if (tmpvon >= tmpbis) { 
    alert("Datum/Zeit 'Hinflug' darf nicht nach Datum/Zeit 'Rueckflug' liegen oder gleich sein."); document.checkform.adatum.focus(); return false; 
   } else { document.checkform.subm.value='1'; document.checkform.submit();  }
 }


}


function check3() {

 if (!document.preisform.adatum.value) { 
	alert("Bitte geben Sie ein Datum bei 'Hinflug' ein.");
	document.preisform.adatum.focus();
	return false; 
 } else { rvdat = checkdat(document.preisform.adatum); } 

 if (!document.preisform.edatum.value) { 
	alert("Bitte geben Sie ein Datum bei 'Rueckflug' ein."); 
	document.preisform.edatum.focus(); 
	return false; 
 } else { rbdat = checkdat(document.preisform.edatum); } 

 if (rvdat && rbdat) { 
   dv = rvdat.split("."); tmpvon = new Date(dv[2],dv[1],dv[0],0,0,0);
   db = rbdat.split("."); tmpbis = new Date(db[2],db[1],db[0],0,0,0);
   if (tmpvon >= tmpbis) { 
    alert("Datum/Zeit 'Hinflug' darf nicht nach Datum/Zeit 'Rueckflug' liegen oder gleich sein."); document.preisform.adatum.focus(); return false; 
   } else { document.preisform.check.value='1'; document.preisform.submit();  }
 }


}


