function getTFTData(iValue) { cmdInit = new AJAXCommand('GET_TFTDATA',_getTFTData,iValue); arSendQueue[arSendQueue.length] = cmdInit; sendQueue(); } function _getTFTData() { var stReturn = objXMLHTTP.responseText; var obj = document.getElementById('Order.TFT.'); if (obj==undefined) return false; obj.innerHTML = stReturn; window.setTimeout('changeTFTDesc(1)',500); } function changeTFTDesc(iValue) { cmdInit = new AJAXCommand('GET_TFTDESC',_getTFTDesc,iValue); arSendQueue[arSendQueue.length] = cmdInit; sendQueue(); } function _getTFTDesc() { var stReturn = objXMLHTTP.responseText; var obj = document.getElementById('Order.TFT.Desc'); if (obj==undefined) return false; obj.innerHTML = stReturn; } function getFLH() { iTFT = getValidValue('Order.TFT'); sPLZ = getValidValue('step1.plz'); cmdInit = new AJAXCommand('GET_FLH',_getFLH,iTFT + '\t' + sPLZ); arSendQueue[arSendQueue.length] = cmdInit; sendQueue(); } function _getFLH() { var stReturn = objXMLHTTP.responseText; aData = null; aData = Xparse(stReturn); aFLH = new Array(); for (i=1;igültig'); enableButtons(BTN_STEP_NEXT); } else { sMsg = ('PLZ ist nicht gültig'); } document.getElementById('step1.plz.desc').innerHTML = sMsg; } function checkTime(stName,bAlert) { if (bAlert==undefined) bAlert = true; stValue = getValue(stName); var isTime = new RegExp("[0-2]?[0-9]:[0-5][0-9]"); if (isTime.test(stValue) == false) { if (bAlert) { alert('Eingabe ist keine Zeit (Benötigtes Format "HH:mm")'); document.forms[0].elements[stName].focus(); } return false; } return true; } function checkTimes(stTime1,stTime2) { var bError = false; stStunde1 = stTime1.substr(0,stTime1.indexOf(':')); stMinute1 = stTime1.substr(stTime1.indexOf(':'),stTime1.length); stStunde2 = stTime2.substr(0,stTime2.indexOf(':')); stMinute2 = stTime2.substr(stTime2.indexOf(':'),stTime2.length); if (stStunde1 > stStunde2) bError = true; if ((stStunde1 == stStunde2) && (stMinute1 >= stMinute2)) bError = true; return (bError ? '\t* Hinflugzeit muss vor Rückflugzeit liegen' : ''); } function checkForm(iStep) { stError = ""; switch(parseInt(iStep)) { //TFT case 2: return true; //Flugdaten case 3: iId = getValidValue('Order.Flight.Type'); today=new Date(); book_from = new Date(); book_from.setDate(today.getDate()+3); if (iId<3) { if (getValidValue('Order.Flight0.Ident',true)=="") { stError += "\t* Flugnummer (Hinflug)\n"; } if ((getValidValue('Order_Flight0_Date',true)=="") || (!(isDate(getValidValue('Order_Flight0_Date'),'yyyy-MM-dd')))) { stError += "\t* Flugdatum (Hinflug)\n"; } if (getValidValue('Order.Flight0.Time',true)=="") { stError += "\t* Abflugzeit (Hinflug)\n"; } else if (!checkTime('Order.Flight0.Time',false)) { stError += "\t* Abflugzeit (Rückflug)\n"; } if(compareDates(formatDate(today,'y-M-d'),'y-M-d',getValue('Order_Flight0_Date'),'y-M-d') !=0) { stError+='\t* Hinflugdatum darf nicht in der Vergangenheit liegen\n'; } else if(compareDates(formatDate(book_from,'y-M-d'),'y-M-d',getValue('Order_Flight0_Date'),'y-M-d') !=0) { if (!confirm('Hinflugdatum liegt innerhalb der nächsten 72h. Automatisches Buchen ist in diesem Zeitraum nicht möglich, sie können aber eine manuelle Anfrage stellen.\n\nMöchten Sie fortfahren?')) return false; } } if (iId>1) { if (getValidValue('Order.Flight1.Ident',true)=="") { stError += "\t* Flugnummer (Rückflug)\n"; } if ((getValidValue('Order_Flight1_Date',true)=="--") || (!(isDate(getValidValue('Order_Flight1_Date'),'yyyy-MM-dd')))) { stError += "\t* Flugdatum (Rückflug)\n"; } if (getValidValue('Order.Flight1.Time',true)=="") { stError += "\t* Abflugzeit (Rückflug)\n"; } else if (!checkTime('Order.Flight1.Time',false)) { stError += "\t* Abflugzeit (Rückflug)\n"; } if(compareDates(formatDate(today,'y-M-d'),'y-M-d',getValue('Order_Flight1_Date'),'y-M-d') !=0) { stError+='\t* Rückflugdatum darf nicht in der Vergangenheit liegen\n'; } else if(compareDates(formatDate(book_from,'y-M-d'),'y-M-d',getValue('Order_Flight1_Date'),'y-M-d') !=0) { if (!confirm('Rückflugdatum liegt innerhalb der nächsten 72h. Automatisches Buchen ist in diesem Zeitraum nicht möglich, sie können aber eine manuelle Anfrage stellen.\n\nMöchten Sie fortfahren?')) return false; } } if (iId == 2) { if(compareDates(getValue('Order_Flight0_Date'),'y-M-d',getValue('Order_Flight1_Date'),'y-M-d') !=0) { stError+='\t* Hinflugdatum muss vor Rückflugdatum liegen\n'; } else { if(compareDates(getValue('Order_Flight1_Date'),'y-M-d',getValue('Order_Flight0_Date'),'y-M-d') ==0) { stError+=checkTimes(getValue('Order.Flight0.Time'),getValue('Order.Flight1.Time')); } } } break; case 4: ///Pflichtfelder Personendaten if (getValidValue('Order.Name') == "") { stError+='\t* Name\n'; } if (getValidValue('Order.Street') == "") { stError+='\t* Straße und Hausnummer\n'; } if (getValidValue('Order.PLZ') == "") { stError+='\t* PLZ\n'; } if (getValidValue('Order.City') == "") { stError+='\t* Stadt\n'; } if (getValidValue('Order.Phone') == "") { stError+='\t* Telefonnumme\n'; } if (getValidValue('Order.Email') == "") { stError+='\t* eMail-Adresse\n'; } //maximale Anzahl von Abholadressen prüfen break; case 7: /*if (getValidValue('Order.KNr') == "") { stError+='\t* Kontonummer\n'; } if (getValidValue('Order.BLZ') == "") { stError+='\t* BLZ\n'; } if (getValidValue('Order.Bank') == "") { stError+='\t* Bank\n'; } if (getValidValue('Order.Inhaber') == "") { stError+='\t* Inhaber\n'; }*/ if (!confirm('Sind Sie sicher, dass Sie die Buchung wirklich absetzen wollen?')) { return false; } break; } if (stError!="") { alert("Es fehlen noch Daten: \n\n" + stError + "\n\nBitte geben Sie diese noch ein, um fortzufahren."); return false; } else { ///// Hinzufügen zur Liste return true; } } function getStep2Prices() { iValue = getValidValue('Order.FLH_ID'); cmdInit = new AJAXCommand('GET_PRICES',_getStep2Prices,iValue); arSendQueue[arSendQueue.length] = cmdInit; sendQueue(); } function _getStep2Prices() { var stReturn = objXMLHTTP.responseText; var obj = document.getElementById('Order.FLH.Prices'); if (obj==undefined) return false; obj.innerHTML = stReturn; }