function remove_all_child_nodes(id) {
  if ($(id).hasChildNodes()) {
    while ($(id).hasChildNodes()) {
      $(id).removeChild($(id).firstChild);
    }
  }
}

function validate_email(email) {
  return /\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(email)
}

function send_form_zahlungsmethode() {
  if ( $('AGB').checked == false ) {
    alert("Sie müssen unsere allgemeinen Verkaufs- und Lieferbedingungen akzeptieren.");
    $('AGB').focus();
    return false;
  } else {
    if ( $F('zahlungsmethode') == 'Innopay' ) {
      $('form_zahlungsmethode').setAttribute('target', 'innopay');
      $('form_zahlungsmethode').action = 'https://pay.innocard.ch/pspStart_ccs.php';
      $('form_zahlungsmethode').submit();
      window.open('about:blank','innopay','scrollbars=1,width=850,height=700,left='+String(((screen.availWidth / 2) - 850 / 2))+',top='+String(((screen.availHeight / 2) - 700 / 2)));
      document.location.replace('order.php?zahlungsmethode=' + String($F('zahlungsmethode')))
    } else {
      $('form_zahlungsmethode').action = 'order.php?zahlungsmethode=' + String($F('zahlungsmethode'));
      $('form_zahlungsmethode').submit();
    }
  }
}

function bezahlt(Bestellnummer, Kaufdatum, Preis) {
  check = confirm("Möchten Sie die Bestellung wirklich als 'bezahlt' kennzeichnen?\n\nBestellnummer: "+String(Bestellnummer)+"\nKaufdatum: "+Kaufdatum+"\nPreis: "+String(Preis));
  if (check == true) {
    document.location.href = '?Bestellnummer='+String(Bestellnummer);
  }
}

function gutschein_personalisieren(ansicht) {
  switch (ansicht) {
    case 'vorschau':
      if (gutschein_personalisieren_ueberpruefen() == true) {
        remove_all_child_nodes('gutschein_personalisieren_headline');
        $('gutschein_personalisieren_headline').appendChild(document.createTextNode('Gutschein drucken/versenden (Schritt 3/4)'));
        $('gutschein_personalisieren_eingabe').style.display = 'none';
        $('gutschein_personalisieren_vorschau').style.display = 'block';
        ausgewaehltes_layout = false;
        $$('#layoutauswahl input').each(function(e) {
          if (e.checked == true) {
            ausgewaehltes_layout = e.value.split('_');
          }
        });
        $('gutschein_personalisieren_vorschau_layout').style.backgroundImage = 'url(/images/gutscheine/'+ausgewaehltes_layout[0]+'/'+String(ausgewaehltes_layout[1].substr(1))+'_gross.png)';

        remove_all_child_nodes('gutschein_personalisieren_vorschau_produkt');
        $('gutschein_personalisieren_vorschau_produkt').appendChild(document.createTextNode($F('ProduktName')));

        remove_all_child_nodes('gutschein_personalisieren_vorschau_fuer_name');
        $('gutschein_personalisieren_vorschau_fuer_name').appendChild(document.createTextNode($F('GutscheinempfaengerVorname') + ' ' + $F('GutscheinempfaengerNachname')));

        remove_all_child_nodes('gutschein_personalisieren_vorschau_von_name');
        $('gutschein_personalisieren_vorschau_von_name').appendChild(document.createTextNode($F('KundeVorname') + ' ' + $F('KundeNachname')));

        remove_all_child_nodes('gutschein_personalisieren_vorschau_gutscheinnummer');
        $('gutschein_personalisieren_vorschau_gutscheinnummer').appendChild(document.createTextNode($F('Gutscheinnummer')));

        remove_all_child_nodes('gutschein_personalisieren_vorschau_ausstellungsdatum');
        $('gutschein_personalisieren_vorschau_ausstellungsdatum').appendChild(document.createTextNode($F('Ausstellungsdatum')));
      }
      break;
    case 'eingabe':
      remove_all_child_nodes('gutschein_personalisieren_headline');
      $('gutschein_personalisieren_headline').appendChild(document.createTextNode('Gutschein drucken/versenden (Schritt 2/4)'));
      $('gutschein_personalisieren_eingabe').style.display = 'block';
      $('gutschein_personalisieren_vorschau').style.display = 'none';
      break;
    case 'speichern':
      remove_all_child_nodes('gutschein_personalisieren_headline');
      $('gutschein_personalisieren_headline').appendChild(document.createTextNode('Gutschein drucken/versenden (Schritt 4/4)'));
      $('gutschein_personalisieren_eingabe').style.display = 'none';
      $('gutschein_personalisieren_vorschau').style.display = 'none';
      remove_all_child_nodes('gutschein_personalisieren_speichern');
      $('gutschein_personalisieren_speichern').style.display = 'block';

      $$('#layoutauswahl input').each(function(e) {
        if (e.checked == true) {
          ausgewaehltes_layout = e.value.split('_');
        }
      });
      var url = '/js/ajax_gutschein_personalisieren_speichern.php';
      var data = '';
      data += 'Gutscheinnummer='+encodeURIComponent($F('Gutscheinnummer').stripTags());
      data += '&GutscheinLayout='+encodeURIComponent(ausgewaehltes_layout[1].stripTags());
      data += '&GutscheinempfaengerAnrede='+encodeURIComponent($F('GutscheinempfaengerAnrede').stripTags());
      data += '&GutscheinempfaengerVorname='+encodeURIComponent($F('GutscheinempfaengerVorname').stripTags());
      data += '&GutscheinempfaengerNachname='+encodeURIComponent($F('GutscheinempfaengerNachname').stripTags());
      data += '&GutscheinempfaengerStrasse='+encodeURIComponent($F('GutscheinempfaengerStrasse').stripTags());
      data += '&GutscheinempfaengerPLZ='+encodeURIComponent($F('GutscheinempfaengerPLZ').stripTags());
      data += '&GutscheinempfaengerOrt='+encodeURIComponent($F('GutscheinempfaengerOrt').stripTags());
      data += '&GutscheinempfaengerTelefonnummer='+encodeURIComponent($F('GutscheinempfaengerTelefonnummer').stripTags());
      data += '&GutscheinempfaengerEmailAdresse='+encodeURIComponent($F('GutscheinempfaengerEmailAdresse').stripTags());
      data += '&GutscheinempfaengerBemerkungen='+encodeURIComponent($F('GutscheinempfaengerBemerkungen').stripTags());
      data += '&Ausstellungsdatum='+encodeURIComponent($F('AusstellungsdatumTimestamp').stripTags());
      var myAjax = new Ajax.Request(url, {
        method: 'post',
        parameters: data,
        onComplete: function(response) {
          result = response.responseText.strip();
          switch (result) {
            case '0':
              text = 'Die Daten wurden nicht gespeichert, da Sie nicht eingeloggt sind.';
              break;
            case '1':
              text = 'Die Daten wurden erfolgreich gespeichert.';
              break;
            case '2':
              text = 'Die Daten wurden nicht gespeichert, da kein Gutschein mit der angegebenen Gutscheinnummer vorhanden ist.';
              break;
            case '3':
              text = 'Die Daten wurden nicht gespeichert, da der Gutschein mit der angegebenen Gutscheinnummer bereits eingelöst wurde.';
              break;
            case '4':
              text = 'Die Daten wurden nicht gespeichert, da der Gutschein mit der angegebenen Gutscheinnummer gelöscht wurde.';
              break;
          }

          p = document.createElement('p');
          p.appendChild(document.createTextNode(text));
          $('gutschein_personalisieren_speichern').appendChild(p);

          p = document.createElement('p');
          p.appendChild(document.createTextNode('Was möchten Sie nun tun?'));
          $('gutschein_personalisieren_speichern').appendChild(p);

          ul = document.createElement('ul');
          li = document.createElement('li');
          a = document.createElement('a');
          a.href = '/shop/gutschein.php?gutscheinnummer='+$F('Gutscheinnummer');
          a.appendChild(document.createTextNode('Gutschein herunterladen (PDF)'));
          li.appendChild(a);
          ul.appendChild(li);
          if ($F('GutscheinempfaengerEmailAdresse') != '') {
            li = document.createElement('li');
            li.id = 'gutschein_personalisieren_versenden_li';
            a = document.createElement('a');
            a.href = 'javascript:gutschein_personalisieren(\'versenden\')';
            a.appendChild(document.createTextNode('Gutschein als E-Mail an Gutscheinempfänger versenden'));
            li.appendChild(a);
            ul.appendChild(li);
          }
          $('gutschein_personalisieren_speichern').appendChild(ul);
        }
      });
      break;
    case 'versenden':
      check = confirm("Möchten Sie den Gutschein jetzt an "+String($F('GutscheinempfaengerVorname').stripTags())+" "+String($F('GutscheinempfaengerNachname').stripTags())+" per E-Mail versenden?");
      if (check == true) {
        var url = '/js/ajax_gutschein_personalisieren_versenden.php';
        var data = '';
        data += 'Gutscheinnummer='+encodeURIComponent($F('Gutscheinnummer').stripTags());
        var myAjax = new Ajax.Request(url, {
          method: 'post',
          parameters: data,
          onComplete: function(response) {
            result = response.responseText.strip();
            switch (result) {
              case '0':
                text = 'Der Gutschein wurde nicht versendet, da Sie nicht eingeloggt sind.';
                break;
              case '1':
                text = 'Der Gutschein wurde erfolgreich versendet.';
                $('gutschein_personalisieren_versenden_li').remove(); // Link zum Versenden des Gutscheins per E-Mail entfernen
                break;
              case '2':
                text = 'Der Gutschein wurde nicht versendet, da kein Gutschein mit der angegebenen Gutscheinnummer vorhanden ist.';
                break;
              case '3':
                text = 'Der Gutschein wurde nicht versendet, da der Gutschein mit der angegebenen Gutscheinnummer bereits eingelöst wurde.';
                break;
              case '4':
                text = 'Der Gutschein wurde nicht versendet, da der Gutschein mit der angegebenen Gutscheinnummer gelöscht wurde.';
                break;
              case '4':
                text = 'Der Gutschein wurde nicht versendet, da keine Gutscheinnummer angegeben wurde.';
                break;
            }
            alert(text);
          }
        });
      }
      break;
  }
}

function gutschein_personalisieren_ueberpruefen() {
  return_value = true;

  layout_ausgewaehlt = false;
  $$('#layoutauswahl input').each(function(e) {
    if (e.checked == true) {
      layout_ausgewaehlt = true;
    }
  });

  if (return_value == true) {
    if (layout_ausgewaehlt == false) {
      alert('Bitte wählen Sie ein Gutscheinlayout aus.');
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerVorname') == '') {
      alert('Bitte geben Sie den Vornamen des Gutscheinempfängers ein.');
      $('GutscheinempfaengerVorname').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerNachname') == '') {
      alert('Bitte geben Sie den Nachnamen des Gutscheinempfängers ein.');
      $('GutscheinempfaengerNachname').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerStrasse') == '') {
      alert('Bitte geben Sie die Strasse des Gutscheinempfängers ein.');
      $('GutscheinempfaengerStrasse').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerPLZ') == '') {
      alert('Bitte geben Sie die PLZ des Gutscheinempfängers ein.');
      $('GutscheinempfaengerPLZ').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerOrt') == '') {
      alert('Bitte geben Sie den Ort des Gutscheinempfängers ein.');
      $('GutscheinempfaengerOrt').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerTelefonnummer') == '') {
      alert('Bitte geben Sie die Telefonnummer des Gutscheinempfängers ein.');
      $('GutscheinempfaengerVorname').focus();
      return_value = false;
    }
  }

  if (return_value == true && $('gutschein_personalisieren_gutschein_per_email_versenden').checked == true) {
    if ($F('GutscheinempfaengerEmailAdresse') == '') {
      alert('Wenn Sie den Gutschein an den Gutscheinempfänger per E-Mail versenden möchten, müssen Sie die E-Mail-Adresse des Gutscheinempfängers angeben.');
      $('GutscheinempfaengerEmailAdresse').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerEmailAdresse') != '' && validate_email($F('GutscheinempfaengerEmailAdresse')) != true) {
      alert('Die Syntax der von Ihnen angegebenen E-Mail-Adresse des Gutscheinempfängers ist falsch.');
      $('GutscheinempfaengerEmailAdresse').focus();
      return_value = false;
    }
  }

  return return_value;
}

function neuen_gutschein_erfassen_gutschein_type_ermitteln() {
  if ( $F('ProduktName').startsWith('Helikopterflug') ) {
    $('_GutscheinType').value = 'rundflug';
  } else if ( $F('ProduktName').startsWith('Helikopter Schnupperflug') ) {
    $('_GutscheinType').value = 'schnupperflug';
  } else if ( $F('ProduktName').startsWith('Geschenkgutschein') ) {
    $('_GutscheinType').value = 'rundflug';
  } else {
    $('_GutscheinType').value = '';
  }
}

function neuen_gutschein_erfassen_layout_auswahl_anzeigen() {
  ['rundflug', 'schnupperflug'].each(function(e) {
    $('layoutauswahl_'+e).style.display = 'none';
  });

  switch ( $F('_GutscheinType') ) {
    case '':
      $('gutschein_layout_').style.display = 'block';
      break;
    case 'rundflug':
    case 'schnupperflug':
      $('gutschein_layout_').style.display = 'none';
      $('layoutauswahl_'+$F('_GutscheinType')).style.display = 'block';
      break;
  }
}

function neuen_gutschein_erfassen_vorgegebene_artikel() {
  vorgegebene_artikel = $F('_vorgegebene_artikel').split('###');
  $('ProduktName').value = vorgegebene_artikel[0];
  $('ProduktPreis').value = vorgegebene_artikel[1] != 0 ? vorgegebene_artikel[1] : '';
  $('ProduktMwst').value = vorgegebene_artikel[2] != 0 ? vorgegebene_artikel[2] : '';
}

function neuen_gutschein_erfassen_ueberpruefen() {
  return_value = true;

  if (return_value == true) {
    if ($F('KundeAnrede') == '') {
      alert('Bitte geben Sie die Anrede des Kunden ein.');
      $('KundeAnrede').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeVorname') == '') {
      alert('Bitte geben Sie den Vornamen des Kunden ein.');
      $('KundeVorname').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeNachname') == '') {
      alert('Bitte geben Sie den Nachnamen des Kunden ein.');
      $('KundeNachname').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeStrasse') == '') {
      alert('Bitte geben Sie die Strasse des Kunden ein.');
      $('KundeStrasse').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundePLZ') == '') {
      alert('Bitte geben Sie die PLZ des Kunden ein.');
      $('KundePLZ').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeOrt') == '') {
      alert('Bitte geben Sie den Ort des Kunden ein.');
      $('KundeOrt').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeLand') == '') {
      alert('Bitte geben Sie das Land des Kunden ein.');
      $('KundeLand').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeBenutzername') == '') {
      alert('Bitte geben Sie die E-Mail-Adresse des Kunden ein.');
      $('KundeBenutzername').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeBenutzername') != '' && validate_email($F('KundeBenutzername')) != true) {
      alert('Die Syntax der von Ihnen angegebenen E-Mail-Adresse des Kunden ist falsch.');
      $('KundeBenutzername').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('KundeTelefon') == '') {
      alert('Bitte geben Sie die Telefonnummer des Kunden ein.');
      $('KundeTelefon').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('ProduktName') == '') {
      alert('Bitte geben Sie den Namen des Produktes ein.');
      $('ProduktName').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('ProduktPreis') == '') {
      alert('Bitte geben Sie den Preis des Produktes ein.');
      $('ProduktPreis').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('BestellungPortoVerpackung') == '') {
      alert('Bitte geben Sie den Preis für Porto/Verpackung ein.');
      $('BestellungPortoVerpackung').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    layout_ausgewaehlt = false;
    $$('#layoutauswahl_'+$F('_GutscheinType')+' input').each(function(e) {
      if (e.checked == true) {
        layout_ausgewaehlt = true;
      }
    });
  }

  if (return_value == true) {
    if (layout_ausgewaehlt == false) {
      alert('Bitte wählen Sie ein Gutscheinlayout aus.');
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerVorname') == '') {
      alert('Bitte geben Sie den Vornamen des Gutscheinempfängers ein.');
      $('GutscheinempfaengerVorname').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerNachname') == '') {
      alert('Bitte geben Sie den Nachnamen des Gutscheinempfängers ein.');
      $('GutscheinempfaengerNachname').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerStrasse') == '') {
      alert('Bitte geben Sie die Strasse des Gutscheinempfängers ein.');
      $('GutscheinempfaengerStrasse').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerPLZ') == '') {
      alert('Bitte geben Sie die PLZ des Gutscheinempfängers ein.');
      $('GutscheinempfaengerPLZ').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerOrt') == '') {
      alert('Bitte geben Sie den Ort des Gutscheinempfängers ein.');
      $('GutscheinempfaengerOrt').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerTelefonnummer') == '') {
      alert('Bitte geben Sie die Telefonnummer des Gutscheinempfängers ein.');
      $('GutscheinempfaengerVorname').focus();
      return_value = false;
    }
  }

  if (return_value == true && $('_gutschein_versenden').checked == true) {
    if ($F('GutscheinempfaengerEmailAdresse') == '') {
      alert('Wenn Sie den Gutschein an den Gutscheinempfänger per E-Mail versenden möchten, müssen Sie die E-Mail-Adresse des Gutscheinempfängers angeben.');
      $('GutscheinempfaengerEmailAdresse').focus();
      return_value = false;
    }
  }

  if (return_value == true) {
    if ($F('GutscheinempfaengerEmailAdresse') != '' && validate_email($F('GutscheinempfaengerEmailAdresse')) != true) {
      alert('Die Syntax der von Ihnen angegebenen E-Mail-Adresse des Gutscheinempfängers ist falsch.');
      $('GutscheinempfaengerEmailAdresse').focus();
      return_value = false;
    }
  }

  return return_value;
}
