// -1); var isIE = (!isOpera && ua.indexOf('msie') > -1); var borderAlertStyle = "2px solid #ff0000"; if (isIE) var borderNormalStyle = "2px inset"; else var borderNormalStyle = ""; var gCheckIcon = new Image(); gCheckIcon.src = 'img/g.png'; var loadingIcon = new Image(); loadingIcon.src = 'img/loading.gif'; function toggleSubitem(elem, blockID) { var b = document.getElementById(blockID); if (b) { if (elem.checked) $('#'+blockID).slideDown("fast"); else $('#'+blockID).slideUp("fast"); } return; } function toggleTimingBlock(elem) { if (elem.value == "1") { if ( !($('#S_TYPE_1_SUBITEM').is(':hidden')) ) return; $('#S_TYPE_1_SUBITEM').slideDown("fast"); $('#S_TYPE_2_SUBITEM').slideUp("fast"); $('#S_TYPE_3_SUBITEM').slideUp("fast"); } if (elem.value == "2") { if ( !($('#S_TYPE_2_SUBITEM').is(':hidden')) ) return; $('#S_TYPE_2_SUBITEM').slideDown("fast"); $('#S_TYPE_1_SUBITEM').slideUp("fast"); $('#S_TYPE_3_SUBITEM').slideUp("fast"); } if (elem.value == "3") { if ( !($('#S_TYPE_3_SUBITEM').is(':hidden')) ) return; $('#S_TYPE_3_SUBITEM').slideDown("fast"); $('#S_TYPE_1_SUBITEM').slideUp("fast"); $('#S_TYPE_2_SUBITEM').slideUp("fast"); } return; } function gebi(id) { return document.getElementById(id); } function validateOfferForm() { form = gebi("frm_offer"); if (!form) return false; var f; var checkEmpty = Array( "MA_NAME", "MA_DESCRIPTION", "ADDR_STREET", "ADDR_ZIP", "ADDR_CITY", "C_PHONE_NR"); for (var i=0; i < checkEmpty.length; i++) { if (!checkEmptyFormValue(checkEmpty[i])) return false; } if (!checkNumericFormValue("MA_PRICE")) return false; if (!checkIntegerFormValue("ADDR_ZIP")) return false; // Check schedule type f = form.S_TYPE; switch (getRadioGroupValue(f)) { // One-day offer case "1": var from = new Date(0, 0, 0, gebi("T_FROM_HH_1").value, gebi("T_FROM_MM_1").value); var to = new Date(0, 0, 0, gebi("T_TO_HH_1").value, gebi("T_TO_MM_1").value); if (from > to) { alert ("Die Ende-zeitm muss größer oder gleich der Beginn-zeit sein."); gebi("T_FROM_HH_1").style.border = borderAlertStyle; gebi("T_FROM_MM_1").style.border = borderAlertStyle; gebi("T_FROM_HH_1").focus(); return false; } else { gebi("T_FROM_HH_1").style.border = borderNormalStyle; gebi("T_FROM_MM_1").style.border = borderNormalStyle; } break; // Daily offer case "2": var from = new Date(gebi("D_START_DT_YYYY_2").value, gebi("D_START_DT_MM_2").value, gebi("D_START_DT_DD_2").value); var to = new Date(gebi("D_END_DT_YYYY_2").value, gebi("D_END_DT_MM_2").value, gebi("D_END_DT_DD_2").value); if (from > to) { alert ("Das Ende-Datum muss größer oder gleich dem Beginn-Datum sein."); gebi("D_START_DT_YYYY_2").style.border = borderAlertStyle; gebi("D_START_DT_MM_2").style.border = borderAlertStyle; gebi("D_START_DT_DD_2").style.border = borderAlertStyle; gebi("D_START_DT_YYYY_2").focus(); return false; } else { gebi("D_START_DT_YYYY_2").style.border = borderNormalStyle; gebi("D_START_DT_MM_2").style.border = borderNormalStyle; gebi("D_START_DT_DD_2").style.border = borderNormalStyle; } var from = new Date(0, 0, 0, gebi("T_FROM_HH_2").value, gebi("T_FROM_MM_2").value); var to = new Date(0, 0, 0, gebi("T_TO_HH_2").value, gebi("T_TO_MM_2").value); if (from > to) { alert ("Die Ende-zeitm muss größer oder gleich der Beginn-zeit sein."); gebi("T_FROM_HH_2").style.border = borderAlertStyle; gebi("T_FROM_MM_2").style.border = borderAlertStyle; gebi("T_FROM_HH_2").focus(); return false; } else { gebi("T_FROM_HH_2").style.border = borderNormalStyle; gebi("T_FROM_MM_2").style.border = borderNormalStyle; } break; // Scheduled offer case "3": var from = new Date(gebi("D_START_DT_YYYY_3").value, gebi("D_START_DT_MM_3").value, gebi("D_START_DT_DD_3").value); var to = new Date(gebi("D_END_DT_YYYY_3").value, gebi("D_END_DT_MM_3").value, gebi("D_END_DT_DD_3").value); if (from > to) { alert ("Das Ende-Datum muss größer oder gleich dem Beginn-Datum sein."); gebi("D_START_DT_YYYY_3").style.border = borderAlertStyle; gebi("D_START_DT_MM_3").style.border = borderAlertStyle; gebi("D_START_DT_DD_3").style.border = borderAlertStyle; gebi("D_START_DT_YYYY_3").focus(); return false; } else { gebi("D_START_DT_YYYY_3").style.border = borderNormalStyle; gebi("D_START_DT_MM_3").style.border = borderNormalStyle; gebi("D_START_DT_DD_3").style.border = borderNormalStyle; } // Check days timing var days = new Array("MO", "TU", "WD", "TH", "FR", "SA", "SU"); var checkedDays = 0; for (var i=0; i < days.length; i++) { if (gebi("S_X_"+days[i]).checked) { checkedDays++; var from = new Date(0, 0, 0, gebi("S_"+days[i]+"_FROM_HH_3").value, gebi("S_"+days[i]+"_FROM_MM_3").value); var to = new Date(0, 0, 0, gebi("S_"+days[i]+"_TO_HH_3").value, gebi("S_"+days[i]+"_TO_MM_3").value); if (from > to) { alert ("Die Ende-zeitm muss größer oder gleich der Beginn-zeit sein."); gebi("S_"+days[i]+"_FROM_HH_3").style.border = borderAlertStyle; gebi("S_"+days[i]+"_FROM_MM_3").style.border = borderAlertStyle; gebi("S_"+days[i]+"_FROM_HH_3").focus(); return false; } else { gebi("S_"+days[i]+"_FROM_HH_3").style.border = borderNormalStyle; gebi("S_"+days[i]+"_FROM_MM_3").style.border = borderNormalStyle; } } } // If no days were selected if (checkedDays == 0) { alert ("Kein Wochentag wurde ausgewählt."); return false; } break; } // Check an address //toggleButtons(true); var res = checkGoogleAddress(true); if (!res) { //toggleButtons(false); if (confirm("Die Adresse ist falsch (GoogleMaps findet die Adresse nicht).\n\nMöchten Sie die Daten trotzdem speichern?")) form.submit(); else return false; } form.submit(); } function checkEmptyFormValue(fieldID) { f = gebi(fieldID); if (!f) return; if (isEmptyString(f.value)) { f.style.border = borderAlertStyle; f.focus(); alert ("Bitte geben Sie einen Wert an."); return false; } else { f.style.border = borderNormalStyle; return true; } } function checkNumericFormValue(fieldID) { f = gebi(fieldID); if (!f) return; if (!isNumeric(f.value)) { f.style.border = borderAlertStyle; f.focus(); alert ("Der Preis soll >= 0 sein (Beispiele: \'0\', \'1.50\', \'100\')."); return false; } else { f.style.border = borderNormalStyle; return true; } } function checkIntegerFormValue(fieldID) { f = gebi(fieldID); if (!isInteger(f.value)) { f.style.border = borderAlertStyle; f.focus(); alert ("Falsche Zeichen in Wert eines numerischen Felds."); return false; } else { f.style.border = borderNormalStyle; return true; } } function getRadioGroupValue(radioGroupObj) { for (var i=0; i < radioGroupObj.length; i++) if (radioGroupObj[i].checked) return radioGroupObj[i].value; return null; } function toggleButtons(disabledState) { var elems = document.body.getElementsByTagName('input'); for (var i=0; i 7) { if (!silentMode) alert("Die Adresse ist richtig und kann auf einer GoogleMaps-Karte gezeigt werden."); result = true; } else { if (!silentMode) alert("Die Adresse ist falsch (GoogleMaps findet die Adresse nicht). Diese Adresse wird auf einer GoogleMaps-Karte nicht gezeigt."); result = false; } } }); gebi('gcheck_ico').src = gCheckIcon.src; return result; } function trim(str) { var str = str.replace(/^\s\s*/, ''), ws = /\s/, i = str.length; while (ws.test(str.charAt(--i))); return str.slice(0, i + 1); } // trim function confirmDeleteOne(id) { if (confirm("Möchten Sie das Angebot wirklich löschen?\n\nACHTUNG: Danach ist die Wiederherstellung nicht möglich!")) document.location = 'index.php?action=delete_one&id='+id; return; } // confirmDeleteOne function isInteger(value) { var pattern = new RegExp("^([0-9]+)$"); return value.match(pattern); } // checkInteger function isNumeric(value) { var pattern = /(^\d+$)|(^\d+\.\d+$)/ return pattern.test(value); } function isEmptyString(value) { if (trim(value) == '') return true; else return false; } // checkEmptyString function addHandler(object, event, handler, useCapture) { if (object.addEventListener) { object.addEventListener(event, handler, useCapture ? useCapture : false); } else if (object.attachEvent) { object.attachEvent('on' + event, handler); } else return; } // addHandler function removeHandler(object, event, handler) { if (object.removeEventListener) { object.removeEventListener(event, handler, false); } else if (object.detachEvent) { object.detachEvent('on' + event, handler); } else return; } // removeHandler //]]>