Ergebnis 1 bis 10 von 10

Thema: Kein Versand von Rechnung, AGB und Widerruf in 1.5.5f

  1. #1
    Padawan Stufe VIII Avatar von klartexter
    Registriert seit
    19.02.2006
    Ort
    Augsburg
    Beiträge
    1.245
    Themen
    78
    DANKE
    45
    Erhaltene Danke: 106

    Standard Kein Versand von Rechnung, AGB und Widerruf in 1.5.5f

    Nach dem Update auf Version 1.5.5f (von 1.5.5e) werden weder AGB noch Rechnung oder Widerruf bei der Bestellbestätigung versandt. An den Einstellungen wurde nichts gegenüber der Version 1.5.5e verändert, so sieht der relevante Teil im Admin aus:

    pdf.jpg

    Der Pfad wurde entfernt im Bild, ist aber richtig vorhanden.
    Immer mit der Ruhe - ich komme noch früh genug zu spät!

  2. #2
    Jedi-Ritter Avatar von webchills
    Registriert seit
    30.10.2004
    Ort
    Österreich
    Beiträge
    6.595
    Themen
    88
    DANKE
    3
    Erhaltene Danke: 1.123

    Standard

    Rechnung bei Bestellung = 0
    Wie soll dann mit der Bestellbestätigung etwas mitgemailt werden?

    Rechnungsversand bei Bestellstatus = 3
    Selbst wenn Rechnung bei Bestellung auf 1 gestellt wird, wird dann nur mitgemailt, wenn der Status der Bestellung auf 3 oder höher ist

    Wenn bei jedem Bestellstatus sofort mit der Bestellbestätigung mitgemailt werden soll
    Rechnung bei Bestellung = 1
    Rechnungsversand bei Bestellstatus = 1

    Das war schon immer so und hat nicht mit 1.5.5f zu tun
    !!! kostenloser Support ausschließlich im Forum - Nicht per Email, nicht per Telefon und nicht per PM !!!

  3. #3
    Padawan Stufe VIII Avatar von klartexter
    Registriert seit
    19.02.2006
    Ort
    Augsburg
    Beiträge
    1.245
    Themen
    78
    DANKE
    45
    Erhaltene Danke: 106
    Erstellt von

    Standard

    Ich habe bisher nie die Rechnung oder AGB bei der Bestellbestätigung mitgeschickt, deswegen ist die ja auf 0. Aber wenn die Ware verschickt wird, dann wurde bisher auch bei der Statusmail Rechnung, AGB und Widerrufsrecht angehängt. Der Status ist ja dann auch 3, so wie in den Einstellungen angegeben. Ich hatte mich im EP etwas unglücklich mit Bestellbestätigung ausgedrückt, tatsächlich ist aber die Statusmail nach dem Versand gemeint gewesen. Wie gesagt, bisher gab es kein Problem, an den Einstellungen wurde auch nichts verändert. Trotzdem werden seit dem Update weder Rechnung, noch AGB oder Widerruf angehängt.

    Vor dem Update:

    anh1.png

    Nach dem Update:

    anh2.png
    Immer mit der Ruhe - ich komme noch früh genug zu spät!

  4. #4
    Jedi-Ritter Avatar von webchills
    Registriert seit
    30.10.2004
    Ort
    Österreich
    Beiträge
    6.595
    Themen
    88
    DANKE
    3
    Erhaltene Danke: 1.123

    Standard

    Ok, das ist ja dann etwas völlig anderes.

    Ich geh mal davon aus, dass Konfiguration > pdf Rechnung > Status auf true steht

    Und dass bei Konfiguration > pdf Rechnung > Rechnungsneuversand die gewünschten Bestellstati eingestellt sind

    Das wär mal die Konfigurationsvoraussetzung.

    Falls das passt und die Anhänge beim Aktualisieren einer Bestellung nicht mitgemailt werden, dann ist etwas faul in Deiner DEINADMIN/orders.php
    In diesem Abschnitt wird der Mailversand mit den Anhängen erweitert, falls die pdf Rechnung auf true steht:

    Code:
    // BOF pdf Rechnung 
                if(RL_INVOICE3_STATUS=='true'){  
                  zen_mail('', SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO, SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO_SUBJECT . ' ' . EMAIL_TEXT_SUBJECT . ' #' . $oID, $message, STORE_NAME, EMAIL_FROM, $html_msg, 'order_status_extra', $attach);
                } else{
                  zen_mail('', SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO, SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO_SUBJECT . ' ' . EMAIL_TEXT_SUBJECT . ' #' . $oID, $message, STORE_NAME, EMAIL_FROM, $html_msg, 'order_status_extra');
                }
                // EOF pdf Rechnung
    Überprüfe ob der wirklich so aussieht, hier wird sehr oft das $attach vergessen, wenn andere Module integriert werden, die ebenfalls die DEINADMIN/orders.php ändern
    !!! kostenloser Support ausschließlich im Forum - Nicht per Email, nicht per Telefon und nicht per PM !!!

  5. #5
    Padawan Stufe VIII Avatar von klartexter
    Registriert seit
    19.02.2006
    Ort
    Augsburg
    Beiträge
    1.245
    Themen
    78
    DANKE
    45
    Erhaltene Danke: 106
    Erstellt von

    Standard

    Danke, der Fehler wurde gefunden. Spende ist raus.
    Immer mit der Ruhe - ich komme noch früh genug zu spät!

  6. #6
    Padawan Stufe VIII Avatar von klartexter
    Registriert seit
    19.02.2006
    Ort
    Augsburg
    Beiträge
    1.245
    Themen
    78
    DANKE
    45
    Erhaltene Danke: 106
    Erstellt von

    Standard

    Da war ich jetzt zu voreilig. Der Fehler lag in der Einstellung in Konfiguration > pdf Rechnung > Status, das stand auf false. Daher dachte ich, der Fehler sei lokalisiert. Denn der Eintrag in der orders.php war in Ordnung. Bei einer heute eingegangenen Bestellung bekam ich aber bei der Statusänderung Verschickt eine weiße Seite. Beim zurückblättern im Browser war die Aktion verschickt nicht eingetragen, auch nicht nach einem refresh. Nachdem ich in der Konfiguration > pdf Rechnung > Status wieder auf false gestellt habe, funktionierte auch wieder der Eintrag Verschickt, aber eben wieder ohne Anhang. Auch die weiße Seite brachte keinerlei Eintrag im Verzeichnis logs, das Verzeichnis ist beschreibbar, was ich durch eine Simulation (eine Datei kurzzeitig umbenannt) feststellen konnte, da war sofort die Fehlerdatei da. Meine Haare werden langsam grau....
    Immer mit der Ruhe - ich komme noch früh genug zu spät!

  7. #7
    Jedi-Ritter Avatar von webchills
    Registriert seit
    30.10.2004
    Ort
    Österreich
    Beiträge
    6.595
    Themen
    88
    DANKE
    3
    Erhaltene Danke: 1.123

    Standard

    Wird denn die pdf Rechnung überhaupt erstellt, wenn Du unter Kunden > Bestellungen bei der jeweiligen Bestellung auf den Button pdf Rechnung gehst?
    !!! kostenloser Support ausschließlich im Forum - Nicht per Email, nicht per Telefon und nicht per PM !!!

  8. #8
    Padawan Stufe VIII Avatar von klartexter
    Registriert seit
    19.02.2006
    Ort
    Augsburg
    Beiträge
    1.245
    Themen
    78
    DANKE
    45
    Erhaltene Danke: 106
    Erstellt von

    Standard

    Da gibt es keinerlei Problem, jeder Lieferung wird von mir auch ein gedrucktes Exemplar eben jener PDF-Rechnung beigelegt. Von daher weiß ich, dass diese Rechnungen auch generiert werden. Im Verzeichnis Root -> pdf liegt auch die Kopie der erstellten PDF, ich habe den Ordner extra geleert, um zu sehen, ob dort die Kopie auch eingestellt wird.
    Immer mit der Ruhe - ich komme noch früh genug zu spät!

  9. #9
    Jedi-Ritter Avatar von webchills
    Registriert seit
    30.10.2004
    Ort
    Österreich
    Beiträge
    6.595
    Themen
    88
    DANKE
    3
    Erhaltene Danke: 1.123

    Standard

    Na dann poste bitte mal den kompletten Inhalt Deiner DEINADMIN/orders.php als Code (# Schaltfläche verwenden)
    !!! kostenloser Support ausschließlich im Forum - Nicht per Email, nicht per Telefon und nicht per PM !!!

  10. #10
    Padawan Stufe VIII Avatar von klartexter
    Registriert seit
    19.02.2006
    Ort
    Augsburg
    Beiträge
    1.245
    Themen
    78
    DANKE
    45
    Erhaltene Danke: 106
    Erstellt von

    Standard

    Code:
    <?php
    /**
     * @package admin
     * @copyright Copyright 2003-2018 Zen Cart Development Team
     * @copyright Portions Copyright 2003 osCommerce
     * @license http://www.zen-cart-pro.at/license/2_0.txt GNU Public License V2.0
     * @version $Id: orders.php 2018-04-25 08:13:51Z webchills $
     */
    
      require('includes/application_top.php');
      // unset variable which is sometimes tainted by bad plugins like magneticOne tools
      if (isset($module)) unset($module);
    
      require(DIR_WS_CLASSES . 'currencies.php');
      $currencies = new currencies();
    
      if (isset($_GET['oID'])) $_GET['oID'] = (int)$_GET['oID'];
      if (isset($_GET['download_reset_on'])) $_GET['download_reset_on'] = (int)$_GET['download_reset_on'];
      if (isset($_GET['download_reset_off'])) $_GET['download_reset_off'] = (int)$_GET['download_reset_off'];
    
      include(DIR_WS_CLASSES . 'order.php');
    
      // prepare order-status pulldown list
      $orders_statuses = array();
      $orders_status_array = array();
      $orders_status = $db->Execute("select orders_status_id, orders_status_name
                                     from " . TABLE_ORDERS_STATUS . "
                                     where language_id = '" . (int)$_SESSION['languages_id'] . "' order by orders_status_id");
      while (!$orders_status->EOF) {
        $orders_statuses[] = array('id' => $orders_status->fields['orders_status_id'],
                                   'text' => $orders_status->fields['orders_status_name'] . ' [' . $orders_status->fields['orders_status_id'] . ']');
        $orders_status_array[$orders_status->fields['orders_status_id']] = $orders_status->fields['orders_status_name'];
        $orders_status->MoveNext();
      }
    
      $action = (isset($_GET['action']) ? $_GET['action'] : '');
      $order_exists = false;
      if (isset($_GET['oID']) && trim($_GET['oID']) == '') unset($_GET['oID']);
      if ($action == 'edit' && !isset($_GET['oID'])) $action = '';
    
      $oID = FALSE;
      if (isset($_POST['oID'])) {
        $oID = zen_db_prepare_input(trim($_POST['oID']));
      } elseif (isset($_GET['oID'])) {
        $oID = zen_db_prepare_input(trim($_GET['oID']));
      }
      if ($oID) {
        $orders = $db->Execute("select orders_id from " . TABLE_ORDERS . "
                                  where orders_id = '" . (int)$oID . "'");
        $order_exists = true;
        if ($orders->RecordCount() <= 0) {
          $order_exists = false;
          if ($action != '') $messageStack->add_session(ERROR_ORDER_DOES_NOT_EXIST . ' ' . $oID, 'error');
          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')), 'NONSSL'));
        }
      }
    
      if (zen_not_null($action) && $order_exists == true) {
        switch ($action) {
          case 'edit':
          // reset single download to on
            if ($_GET['download_reset_on'] > 0) {
              // adjust download_maxdays based on current date
              $check_status = $db->Execute("select customers_name, customers_email_address, orders_status,
                                          date_purchased from " . TABLE_ORDERS . "
                                          where orders_id = '" . $_GET['oID'] . "'");
              $customer_gender = $db->Execute("select customers_gender from " . TABLE_CUSTOMERS . "
                                          where customers_id = '" . $check_status->fields['customers_id'] . "'");
              // check for existing product attribute download days and max
              $chk_products_download_query = "SELECT orders_products_id, orders_products_filename, products_prid from " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " WHERE orders_products_download_id='" . $_GET['download_reset_on'] . "'";
              $chk_products_download = $db->Execute($chk_products_download_query);
    
              $chk_products_download_time_query = "SELECT pa.products_attributes_id, pa.products_id, pad.products_attributes_filename, pad.products_attributes_maxdays, pad.products_attributes_maxcount
              from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_ATTRIBUTES_DOWNLOAD . " pad
              WHERE pa.products_attributes_id = pad.products_attributes_id
              and pad.products_attributes_filename = '" . $db->prepare_input($chk_products_download->fields['orders_products_filename']) . "'
              and pa.products_id = '" . (int)$chk_products_download->fields['products_prid'] . "'";
    
              $chk_products_download_time = $db->Execute($chk_products_download_time_query);
    
              if ($chk_products_download_time->EOF) {
                $zc_max_days = (DOWNLOAD_MAX_DAYS == 0 ? 0 : zen_date_diff($check_status->fields['date_purchased'], date('Y-m-d H:i:s', time())) + DOWNLOAD_MAX_DAYS);
                $update_downloads_query = "update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_maxdays='" . $zc_max_days . "', download_count='" . DOWNLOAD_MAX_COUNT . "' where orders_id='" . $_GET['oID'] . "' and orders_products_download_id='" . $_GET['download_reset_on'] . "'";
              } else {
                $zc_max_days = ($chk_products_download_time->fields['products_attributes_maxdays'] == 0 ? 0 : zen_date_diff($check_status->fields['date_purchased'], date('Y-m-d H:i:s', time())) + $chk_products_download_time->fields['products_attributes_maxdays']);
                $update_downloads_query = "update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_maxdays='" . $zc_max_days . "', download_count='" . $chk_products_download_time->fields['products_attributes_maxcount'] . "' where orders_id='" . $_GET['oID'] . "' and orders_products_download_id='" . $_GET['download_reset_on'] . "'";
              }
    
              $db->Execute($update_downloads_query);
              unset($_GET['download_reset_on']);
    
              $messageStack->add_session(SUCCESS_ORDER_UPDATED_DOWNLOAD_ON, 'success');
              zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            }
          // reset single download to off
            if ($_GET['download_reset_off'] > 0) {
              // adjust download_maxdays based on current date
              // *** fix: adjust count not maxdays to cancel download
    //          $update_downloads_query = "update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_maxdays='0', download_count='0' where orders_id='" . $_GET['oID'] . "' and orders_products_download_id='" . $_GET['download_reset_off'] . "'";
              $update_downloads_query = "update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_count='0' where orders_id='" . $_GET['oID'] . "' and orders_products_download_id='" . $_GET['download_reset_off'] . "'";
              $db->Execute($update_downloads_query);
              unset($_GET['download_reset_off']);
    
              $messageStack->add_session(SUCCESS_ORDER_UPDATED_DOWNLOAD_OFF, 'success');
              zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            }
          break;
          case 'update_order':
            // demo active test
            if (zen_admin_demo()) {
              $_GET['action']= '';
              $messageStack->add_session(ERROR_ADMIN_DEMO, 'caution');
              zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            }
            $oID = zen_db_prepare_input($_GET['oID']);
    // Begin Paket Tracking
            $track_id1 = str_replace(" ", "", zen_db_prepare_input($_POST['track_id1']));
            $track_id2 = str_replace(" ", "", zen_db_prepare_input($_POST['track_id2']));
            $track_id3 = str_replace(" ", "", zen_db_prepare_input($_POST['track_id3']));
            $track_id4 = str_replace(" ", "", zen_db_prepare_input($_POST['track_id4']));
            $track_id5 = str_replace(" ", "", zen_db_prepare_input($_POST['track_id5']));
            $track_id6 = str_replace(" ", "", zen_db_prepare_input($_POST['track_id6']));
            $track_day = str_replace(" ", "", (int)zen_db_prepare_input($_POST['track_day']));
            $track_month = str_replace(" ", "", (int)zen_db_prepare_input($_POST['track_month']));
            $track_year = str_replace(" ", "", (int)zen_db_prepare_input($_POST['track_year']));
    // End Paket Tracking
            $comments = zen_db_prepare_input($_POST['comments']);
            $status = (int)zen_db_prepare_input($_POST['status']);
            if ($status < 1) break;
    
            $order_updated = false;
            $check_status = $db->Execute("select customers_id, customers_name, customers_email_address, orders_status,
                                          date_purchased from " . TABLE_ORDERS . "
                                          where orders_id = '" . (int)$oID . "'");
            $customer_gender = $db->Execute("select customers_gender from " . TABLE_CUSTOMERS . "
                                          where customers_id = '" . $check_status->fields['customers_id'] . "'");
    
            // BOF pdf Rechnung  
            if(RL_INVOICE3_STATUS=='true'){                                     
            $rlStat = explode('|', RL_INVOICE3_SEND_ORDERSTATUS_CHANGE);
            $rl_invoice3_send = in_array($status, $rlStat);
            if ( ($check_status->fields['orders_status'] != $status  && $status==RL_INVOICE3_ORDERSTATUS)  || ($rl_invoice3_send == true)){
                require_once (DIR_FS_CATALOG . DIR_WS_INCLUDES . 'classes/class.rl_invoice3.php');     
                require_once ('../' . DIR_WS_LANGUAGES . $_SESSION['language'] . '/extra_definitions/rl_invoice3.php');
                $paper = rl_invoice3::getDefault(RL_INVOICE3_PAPER, array('format' => 'A4', 'unit' => 'mm', 'orientation' => 'P'));
                $pdfT = new rl_invoice3($oID, $paper['orientation'], $paper['unit'], $paper['format']);
                $pdfT->createPdfFile(true);
                $attach = $pdfT->getPDFAttachments('ALL');
            } else {
                $attach = null;
            }
          }
            // EOF pdf Rechnung
        if(($check_status->fields['orders_status'] != $status) || zen_not_null($comments) || zen_not_null($track_id1) || zen_not_null($track_id2) || zen_not_null($track_id3) || zen_not_null($track_id4) || zen_not_null($track_id5) || zen_not_null($track_id6)) {
              $db->Execute("update " . TABLE_ORDERS . "
                            set orders_status = '" . zen_db_input($status) . "', last_modified = now()
                            where orders_id = '" . (int)$oID . "'");
    
              $customer_notified = '0';
              if (isset($_POST['notify']) && ($_POST['notify'] == '1')) {
    
                $notify_comments = '';
    // Begin Paket Tracking 
                if (isset($_POST['notify_comments']) && ($_POST['notify_comments'] == 'on')) {
                  if (zen_not_null($comments)) {
                  $notify_comments = EMAIL_TEXT_COMMENTS_UPDATE . $comments . "\n\n";
                  }
                  if (zen_not_null($track_id1)) { $notify_comments .= "\n" .PT_EMAIL_YOURID ." " . CARRIER_NAME_1 . " Tracking ID " .PT_EMAIL_YOURIDIS ." " . $track_id1 . " \n\n<br />" .PT_EMAIL_LINKINFO ." \n<br />" . CARRIER_LINK_1 . $track_id1 . "\n\n<br />" .PT_EMAIL_24HOURS ."" . "\n\n<br />"; }
                  if (zen_not_null($track_id2)) { $notify_comments .= "\n" .PT_EMAIL_YOURID ." " . CARRIER_NAME_2 . " Tracking ID " .PT_EMAIL_YOURIDIS ." " . $track_id2 . " \n\n<br />" .PT_EMAIL_LINKINFO ." \n<br />" . CARRIER_LINK_2 . $track_id2 . "\n\n<br />" .PT_EMAIL_24HOURS ."" . "\n\n<br />"; }
                  if (zen_not_null($track_id3)) { $notify_comments .= "\n" .PT_EMAIL_YOURID ." " . CARRIER_NAME_3 . " Tracking ID " .PT_EMAIL_YOURIDIS ." " . $track_id3 . " \n\n<br />" .PT_EMAIL_LINKINFO ." \n<br />" . CARRIER_LINK_3 . $track_id3 . "\n\n<br />" .PT_EMAIL_24HOURS ."" . "\n\n<br />"; }
                  if (zen_not_null($track_id4)) { $notify_comments .= "\n" .PT_EMAIL_YOURID ." " . CARRIER_NAME_4 . " Tracking ID " .PT_EMAIL_YOURIDIS ." " . $track_id4 . " \n\n<br />" .PT_EMAIL_LINKINFO ." \n<br />" . CARRIER_LINK_4 . $track_id4 . "\n\n<br />" .PT_EMAIL_24HOURS ."" . "\n\n<br />"; }
                  if (zen_not_null($track_id5)) { $notify_comments .= "\n" .PT_EMAIL_YOURID ." " . CARRIER_NAME_5 . " Tracking ID " .PT_EMAIL_YOURIDIS ." " . $track_id5 . " \n\n<br />" .PT_EMAIL_LINKINFO ." \n<br />" . CARRIER_LINK_5 . $track_id5 . "\n\n<br />" .PT_EMAIL_24HOURS ."" . "\n\n<br />"; }
                  if (zen_not_null($track_id6)) { $notify_comments .= "\n" .PT_EMAIL_YOURID ." " . CARRIER_NAME_6 . " Tracking ID " .PT_EMAIL_YOURIDIS ." " . $track_id6 . " \n\n<br />" .PT_EMAIL_LINKINFO ." \n<br />" . CARRIER_LINK_6_PART1 . $track_id6 . CARRIER_LINK_6_PART2 . $track_day . CARRIER_LINK_6_PART3 . $track_month . CARRIER_LINK_6_PART4 . $track_year . "\n\n<br />" .PT_EMAIL_24HOURS ."" . "\n\n<br />"; }
    // End Paket Tracking 
                }
                //send emails
            
                
          if ($customer_gender->fields['customers_gender'] == 'm') {
            $email_greeting = EMAIL_TEXT_ORDER_CUSTOMER_GENDER_MALE;
          } else if ($customer_gender->fields['customers_gender'] == 'f') { 
            $email_greeting = EMAIL_TEXT_ORDER_CUSTOMER_GENDER_FEMALE;
          } else {
            $email_greeting = EMAIL_TEXT_ORDER_CUSTOMER_NEUTRAL;      
          }
        
                $message =
                $email_greeting .
                $check_status->fields['customers_name']. "\n\n" .
                EMAIL_TEXT_UPDATEINFO . STORE_NAME . "\n\n" .
                EMAIL_TEXT_ORDER_NUMBER . ' ' . $oID . "\n\n" .
                EMAIL_TEXT_INVOICE_URL . ' ' . zen_catalog_href_link(FILENAME_CATALOG_ACCOUNT_HISTORY_INFO, 'order_id=' . $oID, 'SSL') . "\n\n" .
                EMAIL_TEXT_DATE_ORDERED . ' ' . zen_date_long($check_status->fields['date_purchased']) . "\n\n" .
                $notify_comments .
                EMAIL_TEXT_STATUS_UPDATED . sprintf(EMAIL_TEXT_STATUS_LABEL, $orders_status_array[$status] ) .
                EMAIL_TEXT_STATUS_PLEASE_REPLY;
                if ($customer_gender->fields['customers_gender'] == 'm') {
                $html_msg['EMAIL_CUSTOMER_GREETING']    = EMAIL_TEXT_ORDER_CUSTOMER_GENDER_MALE;
                } else if ($customer_gender->fields['customers_gender'] == 'f') {
                $html_msg['EMAIL_CUSTOMER_GREETING']    = EMAIL_TEXT_ORDER_CUSTOMER_GENDER_FEMALE;
                } else {
                $html_msg['EMAIL_CUSTOMER_GREETING']    = EMAIL_TEXT_ORDER_CUSTOMER_NEUTRAL;            
                }
                $html_msg['EMAIL_TEXT_UPDATEINFO']    = EMAIL_TEXT_UPDATEINFO;
                $html_msg['EMAIL_CUSTOMERS_NAME']    = $check_status->fields['customers_name'];
                $html_msg['EMAIL_TEXT_ORDER_NUMBER'] = EMAIL_TEXT_ORDER_NUMBER . ' ' . $oID;
                $html_msg['EMAIL_TEXT_INVOICE_URL']  = '<a href="' . zen_catalog_href_link(FILENAME_CATALOG_ACCOUNT_HISTORY_INFO, 'order_id=' . $oID, 'SSL') .'">'.str_replace(':','',EMAIL_TEXT_INVOICE_URL).'</a>';
                $html_msg['EMAIL_TEXT_DATE_ORDERED'] = EMAIL_TEXT_DATE_ORDERED . ' ' . zen_date_long($check_status->fields['date_purchased']);
                $html_msg['EMAIL_TEXT_STATUS_COMMENTS'] = nl2br($notify_comments);
                $html_msg['EMAIL_TEXT_STATUS_UPDATED'] = str_replace('\n','', EMAIL_TEXT_STATUS_UPDATED);
                $html_msg['EMAIL_TEXT_STATUS_LABEL'] = str_replace('\n','', sprintf(EMAIL_TEXT_STATUS_LABEL, $orders_status_array[$status] ));
                $html_msg['EMAIL_TEXT_NEW_STATUS'] = $orders_status_array[$status];
                $html_msg['EMAIL_TEXT_STATUS_PLEASE_REPLY'] = str_replace('\n','', EMAIL_TEXT_STATUS_PLEASE_REPLY);
                $html_msg['EMAIL_PAYPAL_TRANSID'] = '';
            // BOF pdf Rechnung  
            if(RL_INVOICE3_STATUS=='true'){  
                zen_mail($check_status->fields['customers_name'], $check_status->fields['customers_email_address'], EMAIL_TEXT_SUBJECT . ' #' . $oID, $message, STORE_NAME, EMAIL_FROM, $html_msg, 'order_status', $attach);
              } else {
                  zen_mail($check_status->fields['customers_name'], $check_status->fields['customers_email_address'], EMAIL_TEXT_SUBJECT . ' #' . $oID, $message, STORE_NAME, EMAIL_FROM, $html_msg, 'order_status');
              }
              // EOF pdf Rechnung
                $customer_notified = '1';
    
                // PayPal Trans ID, if any
                $sql = "select txn_id, parent_txn_id from " . TABLE_PAYPAL . " where order_id = :orderID order by last_modified DESC, date_added DESC, parent_txn_id DESC, paypal_ipn_id DESC ";
                $sql = $db->bindVars($sql, ':orderID', $oID, 'integer');
                $result = $db->Execute($sql);
                if ($result->RecordCount() > 0) {
                  $message .= "\n\n" . ' PayPal Trans ID: ' . $result->fields['txn_id'];
                  $html_msg['EMAIL_PAYPAL_TRANSID'] = $result->fields['txn_id'];
                }
                //send extra emails
                if (SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO_STATUS == '1' and SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO != '') {
                // BOF pdf Rechnung 
                if(RL_INVOICE3_STATUS=='true'){  
                  zen_mail('', SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO, SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO_SUBJECT . ' ' . EMAIL_TEXT_SUBJECT . ' #' . $oID, $message, STORE_NAME, EMAIL_FROM, $html_msg, 'order_status_extra', $attach);
                } else{
                  zen_mail('', SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO, SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO_SUBJECT . ' ' . EMAIL_TEXT_SUBJECT . ' #' . $oID, $message, STORE_NAME, EMAIL_FROM, $html_msg, 'order_status_extra');
                }
                // EOF pdf Rechnung 
                }
              } elseif (isset($_POST['notify']) && ($_POST['notify'] == '-1')) {
                // hide comment
                $customer_notified = '-1';
              }
    
    // Begin Paket Tracking 
              $db->Execute("insert into " . TABLE_ORDERS_STATUS_HISTORY . "
                          (orders_id, orders_status_id, date_added, customer_notified, track_id1, track_id2, track_id3, track_id4, track_id5, track_id6, track_day, track_month, track_year, comments)
                          values ('" . (int)$oID . "',
                          '" . zen_db_input($status) . "',
                          now(),
                          '" . zen_db_input($customer_notified) . "',
                          '" . zen_db_input($track_id1) . "',
                          '" . zen_db_input($track_id2) . "',
                          '" . zen_db_input($track_id3) . "',
                          '" . zen_db_input($track_id4) . "',
                          '" . zen_db_input($track_id5) . "',
                          '" . zen_db_input($track_id6) . "',
                          '" . zen_db_input($track_day) . "',
                          '" . zen_db_input($track_month) . "',
                          '" . zen_db_input($track_year) . "',
                          '" . zen_db_input($comments)  . "')");
              $order_updated = true;
            }
    // End Paket Tracking 
            // trigger any appropriate updates which should be sent back to the payment gateway:
            $order = new order((int)$oID);
            if ($order->info['payment_module_code']) {
              if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
                require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
                require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
                $module = new $order->info['payment_module_code'];
                if (method_exists($module, '_doStatusUpdate')) {
                  $response = $module->_doStatusUpdate($oID, $status, $comments, $customer_notified, $check_status->fields['orders_status']);
                }
              }
            }
    
            if ($order_updated == true) {
              if ($status == DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) {
    
                // adjust download_maxdays based on current date
                $chk_downloads_query = "SELECT opd.*, op.products_id from " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " opd, " . TABLE_ORDERS_PRODUCTS . " op
                                        WHERE op.orders_id='" . (int)$oID . "'
                                        and opd.orders_products_id = op.orders_products_id";
                $chk_downloads = $db->Execute($chk_downloads_query);
    
                while (!$chk_downloads->EOF) {
                  $chk_products_download_time_query = "SELECT pa.products_attributes_id, pa.products_id, pad.products_attributes_filename, pad.products_attributes_maxdays, pad.products_attributes_maxcount
                                                        from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_ATTRIBUTES_DOWNLOAD . " pad
                                                        WHERE pa.products_attributes_id = pad.products_attributes_id
                                                        and pad.products_attributes_filename = '" . $db->prepare_input($chk_downloads->fields['orders_products_filename']) . "'
                                                        and pa.products_id = '" . $chk_downloads->fields['products_id'] . "'";
    
                  $chk_products_download_time = $db->Execute($chk_products_download_time_query);
    
                  if ($chk_products_download_time->EOF) {
                    $zc_max_days = (DOWNLOAD_MAX_DAYS == 0 ? 0 : zen_date_diff($check_status->fields['date_purchased'], date('Y-m-d H:i:s', time())) + DOWNLOAD_MAX_DAYS);
                    $update_downloads_query = "update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_maxdays='" . $zc_max_days . "', download_count='" . DOWNLOAD_MAX_COUNT . "' where orders_id='" . (int)$oID . "' and orders_products_download_id='" . $_GET['download_reset_on'] . "'";
                  } else {
                    $zc_max_days = ($chk_products_download_time->fields['products_attributes_maxdays'] == 0 ? 0 : zen_date_diff($check_status->fields['date_purchased'], date('Y-m-d H:i:s', time())) + $chk_products_download_time->fields['products_attributes_maxdays']);
                    $update_downloads_query = "update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_maxdays='" . $zc_max_days . "', download_count='" . $chk_products_download_time->fields['products_attributes_maxcount'] . "' where orders_id='" . (int)$oID . "' and orders_products_download_id='" . $chk_downloads->fields['orders_products_download_id'] . "'";
                  }
    
                  $db->Execute($update_downloads_query);
    
                  $chk_downloads->MoveNext();
                }
              }
              $messageStack->add_session(SUCCESS_ORDER_UPDATED, 'success');
              zen_record_admin_activity('Order ' . $oID . ' updated.', 'info');
            } else {
              $messageStack->add_session(WARNING_ORDER_NOT_UPDATED, 'warning');
            }
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            break;
          case 'deleteconfirm':
            // demo active test
            if (zen_admin_demo()) {
              $_GET['action']= '';
              $messageStack->add_session(ERROR_ADMIN_DEMO, 'caution');
              zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')), 'NONSSL'));
            }
            $oID = zen_db_prepare_input($_POST['oID']);
    
            zen_remove_order($oID, $_POST['restock']);
    
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')), 'NONSSL'));
            break;
          case 'delete_cvv':
            $delete_cvv = $db->Execute("update " . TABLE_ORDERS . " set cc_cvv = '" . TEXT_DELETE_CVV_REPLACEMENT . "' where orders_id = '" . (int)$_GET['oID'] . "'");
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            break;
          case 'mask_cc':
            $result  = $db->Execute("select cc_number from " . TABLE_ORDERS . " where orders_id = '" . (int)$_GET['oID'] . "'");
            $old_num = $result->fields['cc_number'];
            $new_num = substr($old_num, 0, 4) . str_repeat('*', (strlen($old_num) - 8)) . substr($old_num, -4);
            $mask_cc = $db->Execute("update " . TABLE_ORDERS . " set cc_number = '" . $new_num . "' where orders_id = '" . (int)$_GET['oID'] . "'");
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            break;
    
          case 'doRefund':
            $order = new order($oID);
            if ($order->info['payment_module_code']) {
              if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
                require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
                require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
                $module = new $order->info['payment_module_code'];
                if (method_exists($module, '_doRefund')) {
                  $module->_doRefund($oID);
                }
              }
            }
            zen_record_admin_activity('Order ' . $oID . ' refund processed. See order comments for details.', 'info');
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            break;
          case 'doAuth':
            $order = new order($oID);
            if ($order->info['payment_module_code']) {
              if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
                require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
                require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
                $module = new $order->info['payment_module_code'];
                if (method_exists($module, '_doAuth')) {
                  $module->_doAuth($oID, $order->info['total'], $order->info['currency']);
                }
              }
            }
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            break;
          case 'doCapture':
            $order = new order($oID);
            if ($order->info['payment_module_code']) {
              if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
                require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
                require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
                $module = new $order->info['payment_module_code'];
                if (method_exists($module, '_doCapt')) {
                  $module->_doCapt($oID, 'Complete', $order->info['total'], $order->info['currency']);
                }
              }
            }
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            break;
          case 'doVoid':
            $order = new order($oID);
            if ($order->info['payment_module_code']) {
              if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
                require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
                require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
                $module = new $order->info['payment_module_code'];
                if (method_exists($module, '_doVoid')) {
                  $module->_doVoid($oID);
                }
              }
            }
            zen_record_admin_activity('Order ' . $oID . ' void processed. See order comments for details.', 'info');
            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
            break;
        }
      }
    ?>
    <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html <?php echo HTML_PARAMS; ?>>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
    <title><?php echo TITLE; ?></title>
    <link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
    <link rel="stylesheet" type="text/css" media="print" href="includes/stylesheet_print.css">
    <link rel="stylesheet" type="text/css" href="includes/cssjsmenuhover.css" media="all" id="hoverJS">
    <script type="text/javascript" src="includes/menu.js"></script>
    <script type="text/javascript" src="includes/general.js"></script>
    <script type="text/javascript">
      <!--
      function init()
      {
        cssjsmenu('navbar');
        if (document.getElementById)
        {
          var kill = document.getElementById('hoverJS');
          kill.disabled = true;
        }
      }
      // -->
    </script>
    <script type="text/javascript"><!--
    function couponpopupWindow(url) {
      window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=450,height=280,screenX=150,screenY=150,top=150,left=150')
    }
    //--></script>
    </head>
    <body onLoad="init()">
    <!-- header //-->
    <?php
      require(DIR_WS_INCLUDES . 'header.php');
    ?>
    <!-- header_eof //-->
    
    <!-- body //-->
    <table class="container-fluid" border="0" width="100%" cellspacing="2" cellpadding="2">
    <!-- body_text //-->
      <tr>
        <td class="pageHeading"><?php echo ($action == 'edit' && $order_exists) ? HEADING_TITLE_DETAILS : HEADING_TITLE; ?></td>
      </tr>
    
    <?php $order_list_button = '<button type="button" class="btn btn-default" onclick="window.location.href=\'' . zen_href_link(FILENAME_ORDERS) . '\'"><i class="fa fa-th-list" aria-hidden="true"></i> ' . BUTTON_TO_LIST . '</button>'; ?>
    <?php if ($action == '') { ?>
    <!-- search -->
      <tr>
        <td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="0">
          <tr>
            <td class="row noprint">
              <div class="form-inline">
                <div class="form-group col-md-2 col-md-offset-1">
                  <?php echo zen_draw_form('search', FILENAME_ORDERS, '', 'get', '', true); ?>
                    <label for="allSearch" class="sr-only"><?php echo HEADING_TITLE_SEARCH_ALL; ?></label>
                    <div class="input-group">
                      <?php
                      $placeholder = zen_output_string_protected(isset($_GET['search']) && $_GET['search_orders_products'] != '' ? $_GET['search'] : HEADING_TITLE_SEARCH_ALL);
                      echo zen_draw_input_field('search', '', 'id="allSearch" class="form-control" placeholder="' . $placeholder . '"');
                      ?>
                    <?php if ((isset($_GET['search']) && zen_not_null($_GET['search'])) or $_GET['cID'] !='') { ?>
                      <div class="input-group-btn">
                        <a class="btn btn-danger" role="button" aria-label="<?php echo TEXT_RESET_FILTER; ?>" href="<?php echo zen_href_link(FILENAME_ORDERS); ?>"><span aria-hidden="true">&times;</span></a>
                      </div>
                    <?php } ?>
                    </div>
                  <?php echo '</form>'; ?>
                </div>
                <div class="form-group col-md-2">
                  <?php echo zen_draw_form('search_orders_products', FILENAME_ORDERS, '', 'get', '', true); ?>
                    <label for="productSearch" class="sr-only"><?php echo HEADING_TITLE_SEARCH_DETAIL_ORDERS_PRODUCTS; ?></label>
                    <div class="input-group">
                      <?php
                      $placeholder = zen_output_string_protected(isset($_GET['search_orders_products']) && $_GET['search_orders_products'] != '' ? $_GET['search_orders_products'] : HEADING_TITLE_SEARCH_PRODUCTS);
                      echo zen_draw_input_field('search_orders_products', '', 'id="productSearch" class="form-control" aria-describedby="helpBlock3" placeholder="' . $placeholder . '"');
                      ?>
                    <?php if ((isset($_GET['search_orders_products']) && zen_not_null($_GET['search_orders_products'])) or $_GET['cID'] !='') { ?>
                      <div class="input-group-btn">
                        <a class="btn btn-danger" role="button" aria-label="<?php echo TEXT_RESET_FILTER; ?>" href="<?php echo zen_href_link(FILENAME_ORDERS); ?>"><span aria-hidden="true">&times;</span></a>
                      </div>
                    <?php } ?>
                    </div>
                    <span id="helpBlock3" class="help-block"><?php echo HEADING_TITLE_SEARCH_DETAIL_ORDERS_PRODUCTS; ?></span>
                  <?php echo '</form>'; ?>
                </div>
                <div class="form-group col-md-2">
                  <?php echo zen_draw_form('orders', FILENAME_ORDERS, '', 'get', '', true);
                  ?>
                    <label for="orderSearch" class="sr-only"><?php echo HEADING_TITLE_SEARCH; ?></label>
                    <?php
                    echo zen_draw_input_field('oID', '', 'size="11" maxlength="11" id="orderSearch" class="form-control" placeholder="' . HEADING_TITLE_SEARCH . '"', '', 'number');
                    echo zen_draw_hidden_field('action', 'edit');
                    echo '</form>';
                  ?>
                </div>
                 <div class="form-group col-md-2">
                  <?php echo zen_draw_form('search_tracking', FILENAME_ORDERS, '', 'get', '', true); ?>
                    <label for="trackingSearch" class="sr-only">Tracking ID</label>
                    <div class="input-group">
                      <?php
                      $placeholder = zen_output_string_protected(isset($_GET['search_tracking']) && $_GET['search_tracking'] != '' ? $_GET['search_tracking'] : TrackingID);
                      echo zen_draw_input_field('search_tracking', '', 'id="trackingSearch" class="form-control" aria-describedby="helpBlock3" placeholder="' . $placeholder . '"');
                      ?>
                    <?php if ((isset($_GET['search_tracking']) && zen_not_null($_GET['search_tracking'])) or $_GET['cID'] !='') { ?>
                      <div class="input-group-btn">
                        <a class="btn btn-danger" role="button" aria-label="<?php echo TEXT_RESET_FILTER; ?>" href="<?php echo zen_href_link(FILENAME_ORDERS); ?>"><span aria-hidden="true">&times;</span></a>
                      </div>
                    <?php } ?>
                    </div>
                    <span id="helpBlock3" class="help-block"><?php echo TEXT_SEARCH_FOR_TRACKING_ID; ?></span>
                  <?php echo '</form>'; ?>
                </div>
                <div class="form-group col-md-2">
                  <?php echo zen_draw_form('status', FILENAME_ORDERS, '', 'get', '', true);
                    echo '<label for="selectstatus" class="sr-only">' . HEADING_TITLE_STATUS . '</label> ' . zen_draw_pull_down_menu('status', array_merge(array(array('id' => '', 'text' => TEXT_ALL_ORDERS)), $orders_statuses), (int)$_GET['status'], 'class="form-control" onChange="this.form.submit();" id="selectstatus"');
                    echo '</form>';
                  ?>
                </div>
             </div>
            </td>
    
          </tr>
    <!-- search -->
    <?php } ?>
    
    
    <?php
      if ($action == 'edit'&& $order_exists) {
        $order = new order($oID);
        $zco_notifier->notify('NOTIFY_ADMIN_ORDERS_EDIT_BEGIN', $oID, $order);
        if ($order->info['payment_module_code']) {
          if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
            require(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
            require(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
            $module = new $order->info['payment_module_code'];
    //        echo $module->admin_notification($oID);
          }
        }
    
    
        $prev_button = '';
        $result = $db->Execute("SELECT orders_id FROM " . TABLE_ORDERS . " WHERE orders_id < '" . $oID . "' ORDER BY orders_id DESC LIMIT 1");
        if ($result->RecordCount()) {
          $prev_button = '<button type="button" class="btn btn-default" onclick="window.location.href=\'' . zen_href_link(FILENAME_ORDERS, 'oID=' . $result->fields['orders_id'] . '&action=edit') . '\'">&laquo; ' . $result->fields['orders_id'] . '</button>';
        }
    
        $next_button = '';
        $result = $db->Execute("SELECT orders_id FROM " . TABLE_ORDERS . " WHERE orders_id > '" . $oID . "' ORDER BY orders_id ASC LIMIT 1");
        if ($result->RecordCount()) {
          $next_button = '<button type="button" class="btn btn-default" onclick="window.location.href=\'' . zen_href_link(FILENAME_ORDERS, 'oID=' . $result->fields['orders_id'] . '&action=edit') . '\'">' . $result->fields['orders_id'] . ' &raquo;</button>';
        }
    
    ?>
          <tr>
            <td width="100%" class="noprint"><table border="0" width="100%" cellspacing="0" cellpadding="0">
              <tr>
                <td class="row">
                  <div class="col-xs-10 col-xs-offset-1 col-sm-6 col-sm-offset-3 col-md-5 col-md-offset-3 col-lg-4 col-lg-offset-4">
                    <div class="input-group">
                      <div class="input-group-btn">
                        <?php echo $prev_button; ?>
                      </div>
                      <?php
                      echo zen_draw_form('input_oid', FILENAME_ORDERS, '', 'get', '', true);
                      echo zen_draw_input_field('oID', '', 'size="11" maxlength="11" class="form-control" placeholder="' . SELECT_ORDER_LIST . '"', '', 'number');
                      echo zen_draw_hidden_field('action', 'edit');
                      echo '</form>';
                      ?>
                      <div class="input-group-btn">
                        <?php echo ($next_button == '') ? $order_list_button : $next_button; ?>
                      </div>
                      <div class="input-group-btn">
                        <button type="button" class="btn btn-default" onclick="javascript:history.back()"><i class="fa fa-undo" aria-hidden="true"></i> <?php echo IMAGE_BACK; ?></button>
                      </div>
                  </div>
                </td>
              </tr>
            </table></td>
          </tr>
          <tr>
            <td><table width="100%" border="0" cellspacing="0" cellpadding="2">
              <tr>
                <td colspan="3"><?php echo zen_draw_separator(); ?></td>
              </tr>
              <tr>
                <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
                  <tr>
                    <td class="main" valign="top"><strong><?php echo ENTRY_CUSTOMER_ADDRESS; ?></strong><br/><br/>
                      <?php echo '<a href="' . zen_href_link(FILENAME_ADRESSKORREKTUR, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $orders->fields['orders_id'] . '&action=edit', 'NONSSL') . '">' . zen_image_button('button_adresskorrektur.gif', IMAGE_ADRESSKORREKTUR) . '</a>'; ?></td>
                    <td class="main"><?php echo zen_address_format($order->customer['format_id'], $order->customer, 1, '', '<br />'); ?></td>
                  </tr>
                  <tr>
                    <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '5'); ?></td>
                  </tr>
                  <tr>
                    <td class="main"><strong><?php echo ENTRY_TELEPHONE_NUMBER; ?></strong></td>
                    <td class="main"><a href="tel:<?php echo $order->customer['telephone']; ?>"><?php echo $order->customer['telephone']; ?></a></td>
                  </tr>
                  <tr>
                    <td class="main"><strong><?php echo ENTRY_EMAIL_ADDRESS; ?></strong></td>
                    <td class="main"><?php echo '<a href="mailto:' . $order->customer['email_address'] . '">' . $order->customer['email_address'] . '</a>'; ?></td>
                  </tr>
                 
                  <tr>
                    <td class="main"><strong>Versandunternehmen Zustimmung: </strong></td>
                   <td class="main"><?php echo $order->info['carrier']; ?></td>
                  </tr>
                  <tr>
                    <td class="main"><strong><?php echo ENTRY_CUSTOMER; ?></strong></td>
                    <td class="main"><?php echo '<a href="' . zen_href_link(FILENAME_CUSTOMERS, 'search=' . $order->customer['email_address'], 'SSL') . '" . >' . TEXT_CUSTOMER_LOOKUP . '</a>'; ?></td>
                  </tr>
                </table></td>
                <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
                  <tr>
                    <td class="main" valign="top"><strong><?php echo ENTRY_SHIPPING_ADDRESS; ?></strong></td>
                    <td class="main"><?php echo zen_address_format($order->delivery['format_id'], $order->delivery, 1, '', '<br />'); ?></td>
                  </tr>
                </table></td>
                <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
                  <tr>
                    <td class="main" valign="top"><strong><?php echo ENTRY_BILLING_ADDRESS; ?></strong></td>
                    <td class="main"><?php echo zen_address_format($order->billing['format_id'], $order->billing, 1, '', '<br />'); ?></td>
                  </tr>
                </table></td>
              </tr>
            </table></td>
          </tr>
          <tr>
            <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
          </tr>
          <tr>
            <td class="main"><strong><?php echo ENTRY_ORDER_ID . $oID; ?></strong></td>
          </tr>
          <tr>
         <td><table border="0" cellspacing="0" cellpadding="2">
            <tr>
               <td class="main"><strong><?php echo ENTRY_DATE_PURCHASED; ?></strong></td>
               <td class="main"><?php echo zen_date_long($order->info['date_purchased']); ?></td>
            </tr>
            <tr>
               <td class="main"><strong><?php echo ENTRY_PAYMENT_METHOD; ?></strong></td>
               <td class="main"><?php echo $order->info['payment_method']; ?></td>
            </tr>
         <tr>
               <td class="main"><strong>Device: </strong></td>
               <td class="main"><?php echo $order->info['order_device']; ?></td>
            </tr>
    <?php
        if (zen_not_null($order->info['cc_type']) || zen_not_null($order->info['cc_owner']) || zen_not_null($order->info['cc_number'])) {
    ?>
              <tr>
                <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
              </tr>
              <tr>
                <td class="main"><?php echo ENTRY_CREDIT_CARD_TYPE; ?></td>
                <td class="main"><?php echo $order->info['cc_type']; ?></td>
              </tr>
              <tr>
                <td class="main"><?php echo ENTRY_CREDIT_CARD_OWNER; ?></td>
                <td class="main"><?php echo $order->info['cc_owner']; ?></td>
              </tr>
              <tr>
                <td class="main"><?php echo ENTRY_CREDIT_CARD_NUMBER; ?></td>
                <td class="main"><?php echo $order->info['cc_number'] . (zen_not_null($order->info['cc_number']) && !strstr($order->info['cc_number'],'X') && !strstr($order->info['cc_number'],'********') ? '&nbsp;&nbsp;<a href="' . zen_href_link(FILENAME_ORDERS, '&action=mask_cc&oID=' . $oID, 'NONSSL') . '" class="noprint">' . TEXT_MASK_CC_NUMBER . '</a>' : ''); ?></td>
              </tr>
    <?php if (zen_not_null($order->info['cc_cvv'])) { ?>
              <tr>
                <td class="main"><?php echo ENTRY_CREDIT_CARD_CVV; ?></td>
                <td class="main"><?php echo $order->info['cc_cvv'] . (zen_not_null($order->info['cc_cvv']) && !strstr($order->info['cc_cvv'],TEXT_DELETE_CVV_REPLACEMENT) ? '&nbsp;&nbsp;<a href="' . zen_href_link(FILENAME_ORDERS, '&action=delete_cvv&oID=' . $oID, 'NONSSL') . '" class="noprint">' . TEXT_DELETE_CVV_FROM_DATABASE . '</a>' : ''); ?></td>
              </tr>
    <?php } ?>
              <tr>
                <td class="main"><?php echo ENTRY_CREDIT_CARD_EXPIRES; ?></td>
                <td class="main"><?php echo $order->info['cc_expires']; ?></td>
              </tr>
    <?php
        }
    ?>
            </table></td>
          </tr>
    <?php
          if (is_object($module) && method_exists($module, 'admin_notification')) {
    ?>
          <tr>
            <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
          </tr>
          <tr>
            <?php echo $module->admin_notification($oID); ?>
          </tr>
          <tr>
            <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
          </tr>
    <?php
    }
    ?>
          <tr>
            <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
              <tr class="dataTableHeadingRow">
                <td class="dataTableHeadingContent" colspan="2"><?php echo TABLE_HEADING_PRODUCTS; ?></td>
                <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_PRODUCTS_MODEL; ?></td>
                <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TAX; ?></td>
                <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_PRICE_EXCLUDING_TAX; ?></td>
                <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_PRICE_INCLUDING_TAX; ?></td>
                <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TOTAL_EXCLUDING_TAX; ?></td>
                <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TOTAL_INCLUDING_TAX; ?></td>
              </tr>
    <?php
        for ($i=0, $n=sizeof($order->products); $i<$n; $i++) {
          if (DISPLAY_PRICE_WITH_TAX_ADMIN == 'true')
          {
            $priceIncTax = $currencies->format(zen_round(zen_add_tax($order->products[$i]['final_price'], $order->products[$i]['tax']),$currencies->get_decimal_places($order->info['currency'])) * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']);
          } else
          {
            $priceIncTax = $currencies->format(zen_add_tax($order->products[$i]['final_price'], $order->products[$i]['tax']) * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']);
          }
          echo '          <tr class="dataTableRow">' . "\n" .
               '            <td class="dataTableContent" valign="top" align="right">' . $order->products[$i]['qty'] . '&nbsp;x</td>' . "\n" .
               '            <td class="dataTableContent" valign="top">' . $order->products[$i]['name'];
    
          if (isset($order->products[$i]['attributes']) && (sizeof($order->products[$i]['attributes']) > 0)) {
            for ($j = 0, $k = sizeof($order->products[$i]['attributes']); $j < $k; $j++) {
              echo '<br /><nobr><small>&nbsp;<i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . nl2br(zen_output_string_protected($order->products[$i]['attributes'][$j]['value']));
              if ($order->products[$i]['attributes'][$j]['price'] != '0') echo ' (' . $order->products[$i]['attributes'][$j]['prefix'] . $currencies->format($order->products[$i]['attributes'][$j]['price'] * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']) . ')';
              if ($order->products[$i]['attributes'][$j]['product_attribute_is_free'] == '1' and $order->products[$i]['product_is_free'] == '1') echo TEXT_INFO_ATTRIBUTE_FREE;
              echo '</i></small></nobr>';
            }
          }
    
          echo '            </td>' . "\n" .
               '            <td class="dataTableContent" valign="top">' . $order->products[$i]['model'] . '</td>' . "\n" .
               '            <td class="dataTableContent" align="right" valign="top">' . zen_display_tax_value($order->products[$i]['tax']) . '%</td>' . "\n" .
               '            <td class="dataTableContent" align="right" valign="top"><strong>' .
                              $currencies->format($order->products[$i]['final_price'], true, $order->info['currency'], $order->info['currency_value']) .
                              ($order->products[$i]['onetime_charges'] != 0 ? '<br />' . $currencies->format($order->products[$i]['onetime_charges'], true, $order->info['currency'], $order->info['currency_value']) : '') .
                            '</strong></td>' . "\n" .
               '            <td class="dataTableContent" align="right" valign="top"><strong>' .
                              $currencies->format(zen_add_tax($order->products[$i]['final_price'], $order->products[$i]['tax']), true, $order->info['currency'], $order->info['currency_value']) .
                              ($order->products[$i]['onetime_charges'] != 0 ? '<br />' . $currencies->format(zen_add_tax($order->products[$i]['onetime_charges'], $order->products[$i]['tax']), true, $order->info['currency'], $order->info['currency_value']) : '') .
                            '</strong></td>' . "\n" .
               '            <td class="dataTableContent" align="right" valign="top"><strong>' .
                              $currencies->format(zen_round($order->products[$i]['final_price'], $currencies->get_decimal_places($order->info['currency'])) * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']) .
                              ($order->products[$i]['onetime_charges'] != 0 ? '<br />' . $currencies->format($order->products[$i]['onetime_charges'], true, $order->info['currency'], $order->info['currency_value']) : '') .
                            '</strong></td>' . "\n" .
               '            <td class="dataTableContent" align="right" valign="top"><strong>' .
                              $priceIncTax .
                              ($order->products[$i]['onetime_charges'] != 0 ? '<br />' . $currencies->format(zen_add_tax($order->products[$i]['onetime_charges'], $order->products[$i]['tax']), true, $order->info['currency'], $order->info['currency_value']) : '') .
                            '</strong></td>' . "\n";
          echo '          </tr>' . "\n";
        }
    ?>
              <tr>
                <td align="right" colspan="8"><table border="0" cellspacing="0" cellpadding="2">
    <?php
        for ($i = 0, $n = sizeof($order->totals); $i < $n; $i++) {
          echo '              <tr>' . "\n" .
               '                <td align="right" class="'. str_replace('_', '-', $order->totals[$i]['class']) . '-Text">' . $order->totals[$i]['title'] . '</td>' . "\n" .
               '                <td align="right" class="'. str_replace('_', '-', $order->totals[$i]['class']) . '-Amount">' . $currencies->format($order->totals[$i]['value'], true, $order->info['currency'], $order->info['currency_value']) . '</td>' . "\n" .
               '              </tr>' . "\n";
        }
    ?>
                </table></td>
              </tr>
            </table></td>
          </tr>
    
    <?php
      // show downloads
      require(DIR_WS_MODULES . 'orders_download.php');
    ?>
    
          <tr>
            <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
          </tr>
          <tr>
            <td class="main"><table border="1" cellspacing="0" cellpadding="5">
              <tr>
                <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_DATE_ADDED; ?></strong></td>
                <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_CUSTOMER_NOTIFIED; ?></strong></td>
                <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_STATUS; ?></strong></td>
    <!-- Begin Paket Tracking  ------------------------------->
            <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_TRACKING_ID; ?></strong></td>
    <!-- End Paket Tracking  ------------------------------------------------------------>
                <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_COMMENTS; ?></strong></td>
              </tr>
    <?php
    // Begin Paket Tracking 
        $orders_history = $db->Execute("select orders_status_id, date_added, customer_notified, track_id1, track_id2, track_id3, track_id4, track_id5, track_id6, track_day, track_month, track_year, comments
                                        from " . TABLE_ORDERS_STATUS_HISTORY . "
                                        where orders_id = '" . zen_db_input($oID) . "'
                                        order by date_added");
    // End Paket Tracking 
    
        if ($orders_history->RecordCount() > 0) {
          while (!$orders_history->EOF) {
            echo '          <tr>' . "\n" .
                 '            <td class="smallText" align="center">' . zen_datetime_short($orders_history->fields['date_added']) . '</td>' . "\n" .
                 '            <td class="smallText" align="center">';
            if ($orders_history->fields['customer_notified'] == '1') {
              echo zen_image(DIR_WS_ICONS . 'tick.gif', TEXT_YES) . "</td>\n";
            } else if ($orders_history->fields['customer_notified'] == '-1') {
              echo zen_image(DIR_WS_ICONS . 'locked.gif', TEXT_HIDDEN) . "</td>\n";
            } else {
              echo zen_image(DIR_WS_ICONS . 'unlocked.gif', TEXT_VISIBLE) . "</td>\n";
            }
            echo '            <td class="smallText">' . $orders_status_array[$orders_history->fields['orders_status_id']] . '</td>' . "\n";
    // Begin Paket Tracking 
            $display_track_id = '&nbsp;';
        $display_track_id .= (empty($orders_history->fields['track_id1']) ? '' : CARRIER_NAME_1 . ": <a href=" . CARRIER_LINK_1 . nl2br(zen_output_string_protected($orders_history->fields['track_id1'])) . ' target="_blank">' . nl2br(zen_output_string_protected($orders_history->fields['track_id1'])) . "</a>&nbsp;" );
        $display_track_id .= (empty($orders_history->fields['track_id2']) ? '' : CARRIER_NAME_2 . ": <a href=" . CARRIER_LINK_2 . nl2br(zen_output_string_protected($orders_history->fields['track_id2'])) . ' target="_blank">' . nl2br(zen_output_string_protected($orders_history->fields['track_id2'])) . "</a>&nbsp;" );
        $display_track_id .= (empty($orders_history->fields['track_id3']) ? '' : CARRIER_NAME_3 . ": <a href=" . CARRIER_LINK_3 . nl2br(zen_output_string_protected($orders_history->fields['track_id3'])) . ' target="_blank">' . nl2br(zen_output_string_protected($orders_history->fields['track_id3'])) . "</a>&nbsp;" );
        $display_track_id .= (empty($orders_history->fields['track_id4']) ? '' : CARRIER_NAME_4 . ": <a href=" . CARRIER_LINK_4 . nl2br(zen_output_string_protected($orders_history->fields['track_id4'])) . ' target="_blank">' . nl2br(zen_output_string_protected($orders_history->fields['track_id4'])) . "</a>&nbsp;" );
        $display_track_id .= (empty($orders_history->fields['track_id5']) ? '' : CARRIER_NAME_5 . ": <a href=" . CARRIER_LINK_5 . nl2br(zen_output_string_protected($orders_history->fields['track_id5'])) . ' target="_blank">' . nl2br(zen_output_string_protected($orders_history->fields['track_id5'])) . "</a>&nbsp;" );
         $display_track_id .= (empty($orders_history->fields['track_id6']) ? '' : CARRIER_NAME_6 . ": <a href=" . CARRIER_LINK_6_PART1 . nl2br(zen_output_string_protected($orders_history->fields['track_id6'])) . CARRIER_LINK_6_PART2 . nl2br(zen_output_string_protected($orders_history->fields['track_day'])) . CARRIER_LINK_6_PART3 . nl2br(zen_output_string_protected($orders_history->fields['track_month'])) . CARRIER_LINK_6_PART4 . nl2br(zen_output_string_protected($orders_history->fields['track_year'])) . ' target="_blank">' . nl2br(zen_output_string_protected($orders_history->fields['track_id6'])) . "</a>&nbsp;" );
            echo '            <td class="smallText" align="left" valign="top">' . $display_track_id . '</td>' . "\n";
    // End Paket Tracking 
            echo '            <td class="smallText">' . nl2br(zen_db_output($orders_history->fields['comments'])) . '&nbsp;</td>' . "\n" .
                 '          </tr>' . "\n";
            $orders_history->MoveNext();
          }
        } else {
            echo '          <tr>' . "\n" .
                 '            <td class="smallText" colspan="5">' . TEXT_NO_ORDER_HISTORY . '</td>' . "\n" .
                 '          </tr>' . "\n";
        }
    ?>
            </table></td>
          </tr>
          <tr>
            <td class="main noprint"><br /><strong><?php echo TABLE_HEADING_COMMENTS; ?></strong></td>
          </tr>
          <tr>
            <td class="noprint"><?php echo zen_draw_separator('pixel_trans.gif', '1', '5'); ?></td>
          </tr>
          <tr><?php echo zen_draw_form('status', FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=update_order', 'post', '', true); ?>
            <td class="main noprint"><?php echo zen_draw_textarea_field('comments', 'soft', '60', '5'); ?></td>
          </tr>
          <tr>
            <td>
    <!-- Begin Paket Tracking  -->
        <table border="0" cellpadding="3" cellspacing="0">          
            <tr>
                <td class="main"><strong><?php echo ENTRY_ADD_TRACK; ?></strong>
                    <br/><?php echo ENTRY_ADD_TRACK_INFO; ?></td>
            </tr>
            <tr valign="top">
                <td width="600">
                    <table border="1" cellpadding="3" cellspacing="0" width="100%">
                        <tr class="dataTableHeadingRow">
                            <td class="dataTableHeadingContent smallText"><strong><?php echo TABLE_HEADING_CARRIER_NAME; ?></strong></td>
                            <td class="dataTableHeadingContent smallText"><strong><?php echo TABLE_HEADING_TRACKING_ID; ?></strong></td>
                            <td class="dataTableHeadingContent smallText"><strong><?php echo TABLE_HEADING_TRACKING_DAY; ?></strong></td>
                            <td class="dataTableHeadingContent smallText"><strong><?php echo TABLE_HEADING_TRACKING_MONTH; ?></strong></td>
                            <td class="dataTableHeadingContent smallText"><strong><?php echo TABLE_HEADING_TRACKING_YEAR; ?></strong></td>
                        </tr>
                        <?php if (CARRIER_STATUS_1 == 'True') { ?>
                        <tr>
                            <td><?php echo CARRIER_NAME_1; ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_id1', '', 'size="50"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_day', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_month', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_year', '', 'size="10"'); ?></td>
                        </tr>
                        <?php } ?>
                        <?php if (CARRIER_STATUS_2 == 'True') { ?>
                        <tr>
                            <td><?php echo CARRIER_NAME_2; ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_id2', '', 'size="50"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_day', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_month', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_year', '', 'size="10"'); ?></td>
                        </tr>
                        <?php } ?>
                        <?php if (CARRIER_STATUS_3 == 'True') { ?>
                        <tr>
                            <td><?php echo CARRIER_NAME_3; ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_id3', '', 'size="50"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_day', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_month', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_year', '', 'size="10"'); ?></td>
                        </tr>
                        <?php } ?>
                        <?php if (CARRIER_STATUS_4 == 'True') { ?>
                        <tr>
                            <td><?php echo CARRIER_NAME_4; ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_id4', '', 'size="50"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_day', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_month', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_year', '', 'size="10"'); ?></td>
                        </tr>
                        <?php } ?>
                        <?php if (CARRIER_STATUS_5 == 'True') { ?>
                        <tr>
                            <td><?php echo CARRIER_NAME_5; ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_id5', '', 'size="50"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_day', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_month', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_year', '', 'size="10"'); ?></td>
                        </tr>
                        <?php } ?>
                        <?php if (CARRIER_STATUS_6 == 'True') { ?>
                        <tr>
                            <td><?php echo CARRIER_NAME_6; ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_id6', '', 'size="50"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_day', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_month', '', 'size="5"'); ?></td>
                            <td valign="top"><?php echo zen_draw_input_field('track_year', '', 'size="10"'); ?></td>
                        </tr>
                        <?php } ?>
                    </table>
                </td>
            </tr>
        </table>      
    <!-- End Paket Tracking  -->
        </td>
          </tr>
          <tr>
            <td><table border="0" cellspacing="0" cellpadding="2" class="noprint">
              <tr>
                <td><table border="0" cellspacing="0" cellpadding="2">
                  <tr>
                    <td class="main"><strong><?php echo ENTRY_STATUS; ?></strong> <?php echo zen_draw_pull_down_menu('status', $orders_statuses, $order->info['orders_status']); ?></td>
                  </tr>
                  <tr>
                    <td class="main"><strong><?php echo ENTRY_NOTIFY_CUSTOMER; ?></strong> [<?php echo zen_draw_radio_field('notify', '1', true) . '-' . TEXT_EMAIL . ' ' . zen_draw_radio_field('notify', '0', FALSE) . '-' . TEXT_NOEMAIL . ' ' . zen_draw_radio_field('notify', '-1', FALSE) . '-' . TEXT_HIDE; ?>]&nbsp;&nbsp;&nbsp;</td>
                    <td class="main"><strong><?php echo ENTRY_NOTIFY_COMMENTS; ?></strong> <?php echo zen_draw_checkbox_field('notify_comments', '', true); ?></td>
                  </tr>
                  <tr><td><br /></td></tr>
                </table></td>
                <td valign="top"><?php echo zen_image_submit('button_update.gif', IMAGE_UPDATE); ?></td>
              </tr>
            </table></td>
          </form></tr>
          <tr>
            <td colspan="2" align="right" class="noprint"><?php echo '<a href="' . zen_href_link(FILENAME_ORDERS_INVOICE, 'oID=' . $_GET['oID']) . '" target="_blank">' . zen_image_button('button_invoice.gif', IMAGE_ORDERS_INVOICE) . '</a> <a href="' . zen_href_link(FILENAME_ORDERS_PACKINGSLIP, 'oID=' . $_GET['oID']) . '" target="_blank">' . zen_image_button('button_packingslip.gif', IMAGE_ORDERS_PACKINGSLIP) . '</a> <a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action'))) . '">' . zen_image_button('button_orders.gif', IMAGE_ORDERS) . '</a>'; ?></td>
          </tr>
    <?php
    // check if order has open gv
            $gv_check = $db->Execute("select order_id, unique_id
                                      from " . TABLE_COUPON_GV_QUEUE ."
                                      where order_id = '" . $_GET['oID'] . "' and release_flag='N' limit 1");
            if ($gv_check->RecordCount() > 0) {
              $goto_gv = '<a href="' . zen_href_link(FILENAME_GV_QUEUE, 'order=' . $_GET['oID']) . '">' . zen_image_button('button_gift_queue.gif',IMAGE_GIFT_QUEUE) . '</a>';
              echo '      <tr><td align="right"><table width="225"><tr>';
              echo '        <td align="center">';
              echo $goto_gv . '&nbsp;&nbsp;';
              echo '        </td>';
              echo '      </tr></table></td></tr>';
            }
    ?>
    <?php
      } else {
    ?>
          <tr>
            <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
              <tr>
                <td class="smallText"><?php echo TEXT_LEGEND . ' ' . zen_image(DIR_WS_IMAGES . 'icon_status_red.gif', TEXT_BILLING_SHIPPING_MISMATCH, 10, 10) . ' ' . TEXT_BILLING_SHIPPING_MISMATCH; ?>
              </td>
              <tr>
                <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
                  <tr class="dataTableHeadingRow">
    <?php
    // Sort Listing
              switch ($_GET['list_order']) {
                  case "id-asc":
                  $disp_order = "c.customers_id";
                  break;
                  case "firstname":
                  $disp_order = "c.customers_firstname";
                  break;
                  case "firstname-desc":
                  $disp_order = "c.customers_firstname DESC";
                  break;
                  case "lastname":
                  $disp_order = "c.customers_lastname, c.customers_firstname";
                  break;
                  case "lastname-desc":
                  $disp_order = "c.customers_lastname DESC, c.customers_firstname";
                  break;
                  case "company":
                  $disp_order = "a.entry_company";
                  break;
                  case "company-desc":
                  $disp_order = "a.entry_company DESC";
                  break;
                  default:
                  $disp_order = "c.customers_id DESC";
              }
    ?>
                    <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_ORDERS_ID; ?></td>
                    <td class="dataTableHeadingContent" align="left" width="50"><?php echo TABLE_HEADING_PAYMENT_METHOD; ?></td>
                    <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_CUSTOMERS; ?></td>
                    <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ORDER_TOTAL; ?></td>
                    <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_DATE_PURCHASED; ?></td>
                    <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_STATUS; ?></td>
                    <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_CUSTOMER_COMMENTS; ?></td>
                     <td class="dataTableHeadingContent" align="center">Device</td>
             <td class="dataTableHeadingContent" align="center">Zustimmung</td>
                    <td class="dataTableHeadingContent noprint" align="right"><?php echo TABLE_HEADING_ACTION; ?>&nbsp;</td>
                  </tr>
    
    <?php
    // Only one or the other search
    // create search_orders_products filter
      $search = '';
      $new_table = '';
      $new_fields = '';
      if (isset($_GET['search_orders_products']) && zen_not_null($_GET['search_orders_products'])) {
        $new_fields = '';
        $search_distinct = ' distinct ';
        $new_table = " left join " . TABLE_ORDERS_PRODUCTS . " op on (op.orders_id = o.orders_id) ";
        $keywords = zen_db_input(zen_db_prepare_input($_GET['search_orders_products']));
        $search = " and (op.products_model like '%" . $keywords . "%' or op.products_name like '" . $keywords . "%')";
        if (substr(strtoupper($_GET['search_orders_products']), 0, 3) == 'ID:') {
          $keywords = TRIM(substr($_GET['search_orders_products'], 3));
          $search = " and op.products_id ='" . (int)$keywords . "'";
        }
      } else if (isset($_GET['search_tracking']) && zen_not_null($_GET['search_tracking'])) { 
       $search_distinct = ' ';    
        $new_table = " left join " . TABLE_ORDERS_STATUS_HISTORY . " otrack on (otrack.orders_id = o.orders_id) ";
        $keywords = zen_db_input(zen_db_prepare_input($_GET['search_tracking']));
        $search = " and (otrack.track_id1 like '%" . $keywords . "%' or otrack.track_id2 like '" . $keywords . "%' or otrack.track_id3 like '" . $keywords . "%' or otrack.track_id4 like '" . $keywords . "%' or otrack.track_id5 like '" . $keywords . "%' or otrack.track_id6 like '" . $keywords . "%')";
        $new_fields = ", o.customers_company, o.customers_email_address, o.customers_street_address, o.delivery_company, o.delivery_name, o.delivery_street_address, o.billing_company, o.billing_name, o.billing_street_address, o.payment_module_code, o.shipping_module_code ";
      } else {
    ?>
    <?php
    // create search filter
      $search = '';
      if (isset($_GET['search']) && zen_not_null($_GET['search'])) {
        $search_distinct = ' ';
        $keywords = zen_db_input(zen_db_prepare_input($_GET['search']));
        $search = " and (o.customers_city like '%" . $keywords . "%' or o.customers_postcode like '%" . $keywords . "%' or o.date_purchased like '%" . $keywords . "%' or o.billing_name like '%" . $keywords . "%' or o.billing_company like '%" . $keywords . "%' or o.billing_street_address like '%" . $keywords . "%' or o.delivery_city like '%" . $keywords . "%' or o.delivery_postcode like '%" . $keywords . "%' or o.delivery_name like '%" . $keywords . "%' or o.delivery_company like '%" . $keywords . "%' or o.delivery_street_address like '%" . $keywords . "%' or o.billing_city like '%" . $keywords . "%' or o.billing_postcode like '%" . $keywords . "%' or o.customers_email_address like '%" . $keywords . "%' or o.customers_name like '%" . $keywords . "%' or o.customers_company like '%" . $keywords . "%' or o.customers_street_address  like '%" . $keywords . "%' or o.customers_telephone like '%" . $keywords . "%')";
        $new_table = '';
    //    $new_fields = ", o.customers_company, o.customers_email_address, o.customers_street_address, o.delivery_company, o.delivery_name, o.delivery_street_address, o.billing_company, o.billing_name, o.billing_street_address, o.payment_module_code, o.shipping_module_code ";
      }
    } // eof: search orders or orders_products
        $new_fields = ", o.customers_company, o.customers_email_address, o.customers_street_address, o.delivery_company, o.delivery_name, o.delivery_street_address, o.billing_company, o.billing_name, o.billing_street_address, o.payment_module_code, o.shipping_module_code, o.carrier ";
    ?>
    <?php
    
        $orders_query_raw = "select " . $search_distinct . " o.orders_id, o.customers_id, o.customers_name, o.payment_method, o.shipping_method, o.date_purchased, o.last_modified, o.currency, o.currency_value, o.order_device, s.orders_status_name, ot.text as order_total" .
    $new_fields . "
                              from (" . TABLE_ORDERS . " o " .
                              $new_table . ")
                              left join " . TABLE_ORDERS_STATUS . " s on (o.orders_status = s.orders_status_id and s.language_id = " . (int)$_SESSION['languages_id'] . ")
                              left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id and ot.class = 'ot_total') ";
    
    
        if (isset($_GET['cID'])) {
          $cID = (int)zen_db_prepare_input($_GET['cID']);
          $orders_query_raw .= " WHERE o.customers_id = " . (int)$cID;
    //echo '<BR><BR>I SEE A: ' . $orders_query_raw . '<BR><BR>';
    
        } elseif ($_GET['status'] != '') {
          $status = (int)zen_db_prepare_input($_GET['status']);
          $orders_query_raw .= " WHERE s.orders_status_id = " . (int)$status . $search;
    //echo '<BR><BR>I SEE B: ' . $orders_query_raw . '<BR><BR>';
    
        } else {
          $orders_query_raw .= (trim($search) != '') ? preg_replace('/ *AND /i', ' WHERE ', $search) : '';
    //echo '<BR><BR>I SEE C: ' . $orders_query_raw . '<BR><BR>';
        }
    
        $orders_query_raw .= " order by o.orders_id DESC";
    
    // Split Page
    // reset page when page is unknown
    if (($_GET['page'] == '' or $_GET['page'] <= 1) and $_GET['oID'] != '') {
      $check_page = $db->Execute($orders_query_raw);
      $check_count=1;
      if ($check_page->RecordCount() > MAX_DISPLAY_SEARCH_RESULTS_ORDERS) {
        while (!$check_page->EOF) {
          if ($check_page->fields['orders_id'] == $_GET['oID']) {
            break;
          }
          $check_count++;
          $check_page->MoveNext();
        }
        $_GET['page'] = round((($check_count/MAX_DISPLAY_SEARCH_RESULTS_ORDERS)+(fmod_round($check_count,MAX_DISPLAY_SEARCH_RESULTS_ORDERS) !=0 ? .5 : 0)),0);
      } else {
        $_GET['page'] = 1;
      }
    }
    
    //    $orders_query_numrows = '';
        $orders_split = new splitPageResults($_GET['page'], MAX_DISPLAY_SEARCH_RESULTS_ORDERS, $orders_query_raw, $orders_query_numrows);
        $orders = $db->Execute($orders_query_raw);
        while (!$orders->EOF) {
        if ((!isset($_GET['oID']) || (isset($_GET['oID']) && ($_GET['oID'] == $orders->fields['orders_id']))) && !isset($oInfo)) {
            $oInfo = new objectInfo($orders->fields);
          }
    
          if (isset($oInfo) && is_object($oInfo) && ($orders->fields['orders_id'] == $oInfo->orders_id)) {
            echo '              <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=edit', 'NONSSL') . '\'">' . "\n";
          } else {
            echo '              <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID')) . 'oID=' . $orders->fields['orders_id'], 'NONSSL') . '\'">' . "\n";
          }
    
          $show_difference = '';
          if ((strtoupper($orders->fields['delivery_name']) != strtoupper($orders->fields['billing_name']) and trim($orders->fields['delivery_name']) != '')) {
            $show_difference = zen_image(DIR_WS_IMAGES . 'icon_status_red.gif', TEXT_BILLING_SHIPPING_MISMATCH, 10, 10) . '&nbsp;';
          }
          if ((strtoupper($orders->fields['delivery_street_address']) != strtoupper($orders->fields['billing_street_address']) and trim($orders->fields['delivery_street_address']) != '')) {
            $show_difference = zen_image(DIR_WS_IMAGES . 'icon_status_red.gif', TEXT_BILLING_SHIPPING_MISMATCH, 10, 10) . '&nbsp;';
          }
          $show_payment_type = $orders->fields['payment_module_code'] . '<br />' . $orders->fields['shipping_module_code'];
    ?>
                    <td class="dataTableContent" align="right"><?php echo $show_difference . $orders->fields['orders_id']; ?></td>
                    <td class="dataTableContent" align="left" width="50"><?php echo $show_payment_type; ?></td>
                    <td class="dataTableContent"><?php echo '<a href="' . zen_href_link(FILENAME_CUSTOMERS, 'cID=' . $orders->fields['customers_id'], 'NONSSL') . '">' . zen_image(DIR_WS_ICONS . 'preview.gif', ICON_PREVIEW . ' ' . TABLE_HEADING_CUSTOMERS) . '</a>&nbsp;' . $orders->fields['customers_name'] . ($orders->fields['customers_company'] != '' ? '<br />' . $orders->fields['customers_company'] : ''); ?></td>
                    <td class="dataTableContent" align="right"><?php echo strip_tags($orders->fields['order_total']); ?></td>
                    <td class="dataTableContent" align="center"><?php echo zen_datetime_short($orders->fields['date_purchased']); ?></td>
                    <td class="dataTableContent" align="right"><?php echo ($orders->fields['orders_status_name'] != '' ? $orders->fields['orders_status_name'] : TEXT_INVALID_ORDER_STATUS); ?></td>
                    <td class="dataTableContent" align="center"><?php echo (zen_get_orders_comments($orders->fields['orders_id']) == '' ? '' : zen_image(DIR_WS_IMAGES . 'icon_yellow_on.gif', TEXT_COMMENTS_YES, 16, 16)); ?></td>
    <?php if ($orders->fields['order_device'] == 'Mobile') { 
         echo '<td class="dataTableContent" align="center"><img src="images/icon-mobile.png" alt="Mobile" title="Mobile"/></td>';
    
      } else if ($orders->fields['order_device'] == 'Tablet') { 
          
        echo '    <td class="dataTableContent" align="center"><img src="images/icon-tablet.png" alt="Tablet" title="Tablet"/></td>';
    
      } else {
      echo '    <td class="dataTableContent" align="center"><img src="images/icon-desktop.png" alt="Desktop" title="Desktop"/></td>';
      }
    ?>
    <td class="dataTableContent" align="center"><?php echo $orders->fields['carrier']; ?></td>
                    <td class="dataTableContent noprint" align="right"><?php echo '<a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $orders->fields['orders_id'] . '&action=edit', 'NONSSL') . '">' . zen_image(DIR_WS_IMAGES . 'icon_edit.gif', ICON_EDIT) . '</a>'; ?><?php if (isset($oInfo) && is_object($oInfo) && ($orders->fields['orders_id'] == $oInfo->orders_id)) { echo zen_image(DIR_WS_IMAGES . 'icon_arrow_right.gif', ''); } else { echo '<a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID')) . 'oID=' . $orders->fields['orders_id'], 'NONSSL') . '">' . zen_image(DIR_WS_IMAGES . 'icon_info.gif', IMAGE_ICON_INFO) . '</a>'; } ?>&nbsp;</td>
                  </tr>
    <?php
          $orders->MoveNext();
        }
    ?>
                  <tr>
                    <td colspan="5"><table border="0" width="100%" cellspacing="0" cellpadding="2">
                      <tr>
                        <td class="smallText" valign="top"><?php echo $orders_split->display_count($orders_query_numrows, MAX_DISPLAY_SEARCH_RESULTS_ORDERS, $_GET['page'], TEXT_DISPLAY_NUMBER_OF_ORDERS); ?></td>
                        <td class="smallText" align="right"><?php echo $orders_split->display_links($orders_query_numrows, MAX_DISPLAY_SEARCH_RESULTS_ORDERS, MAX_DISPLAY_PAGE_LINKS, $_GET['page'], zen_get_all_get_params(array('page', 'oID', 'action'))); ?></td>
                      </tr>
    <?php
      if (isset($_GET['search']) && zen_not_null($_GET['search'])) {
    ?>
                      <tr>
                        <td class="smallText" align="right" colspan="2">
                          <?php
                            echo '<a href="' . zen_href_link(FILENAME_ORDERS, '', 'NONSSL') . '">' . zen_image_button('button_reset.gif', IMAGE_RESET) . '</a>';
                            if (isset($_GET['search']) && zen_not_null($_GET['search'])) {
                              $keywords = zen_db_input(zen_db_prepare_input($_GET['search']));
                              echo '<br/ >' . TEXT_INFO_SEARCH_DETAIL_FILTER . $keywords;
                            }
                          ?>
                        </td>
                      </tr>
    <?php
      }
    ?>
                    </table></td>
                  </tr>
                </table></td>
    <?php
      $heading = array();
      $contents = array();
    
      switch ($action) {
        case 'delete':
          $heading[] = array('text' => '<strong>' . TEXT_INFO_HEADING_DELETE_ORDER . '</strong>');
    
          $contents = array('form' => zen_draw_form('orders', FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . '&action=deleteconfirm', 'post', '', true) . zen_draw_hidden_field('oID', $oInfo->orders_id));
    //      $contents[] = array('text' => TEXT_INFO_DELETE_INTRO . '<br /><br /><strong>' . $cInfo->customers_firstname . ' ' . $cInfo->customers_lastname . '</strong>');
          $contents[] = array('text' => TEXT_INFO_DELETE_INTRO . '<br /><br /><strong>' . ENTRY_ORDER_ID . $oInfo->orders_id . '<br />' . $oInfo->order_total . '<br />' . $oInfo->customers_name . ($oInfo->customers_company != '' ? '<br />' . $oInfo->customers_company : '') . '</strong>');
          $contents[] = array('text' => '<br />' . zen_draw_checkbox_field('restock') . ' ' . TEXT_INFO_RESTOCK_PRODUCT_QUANTITY);
          $contents[] = array('align' => 'center', 'text' => '<br />' . zen_image_submit('button_delete.gif', IMAGE_DELETE) . ' <a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id, 'NONSSL') . '">' . zen_image_button('button_cancel.gif', IMAGE_CANCEL) . '</a>');
          break;
        default:
          if (isset($oInfo) && is_object($oInfo)) {
            $heading[] = array('text' => '<strong>[' . $oInfo->orders_id . ']&nbsp;&nbsp;' . zen_datetime_short($oInfo->date_purchased) . '</strong>');
    
            $contents[] = array('align' => 'center', 'text' => '<a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=edit', 'NONSSL') . '">' . zen_image_button('button_edit.gif', IMAGE_EDIT) . '</a> <a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=delete', 'NONSSL') . '">' . zen_image_button('button_delete.gif', IMAGE_DELETE) . '</a>');
            $contents[] = array('align' => 'center', 'text' => '<a href="' . zen_href_link(FILENAME_ORDERS_INVOICE, 'oID=' . $oInfo->orders_id) . '" TARGET="_blank">' . zen_image_button('button_invoice.gif', IMAGE_ORDERS_INVOICE) . '</a> <a href="' . zen_href_link(FILENAME_ORDERS_PACKINGSLIP, 'oID=' . $oInfo->orders_id) . '" TARGET="_blank">' . zen_image_button('button_packingslip.gif', IMAGE_ORDERS_PACKINGSLIP) . '</a>');
            $contents[] = array('align' => 'center', 'text' => '<a href="' . zen_href_link(FILENAME_ADRESSKORREKTUR, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=edit', 'NONSSL') . '">' . zen_image_button('button_adresskorrektur.gif', IMAGE_ADRESSKORREKTUR)  . '</a>');
            $contents[] = array('align' => 'center', 'text' => '<a href="' . zen_href_link(FILENAME_RL_INVOICE3, 'oID=' . $oInfo -> orders_id) . '" TARGET="_blank">' . zen_image_button('button_rl_invoice3.gif', IMAGE_RL_INVOICE) );
              $zco_notifier->notify('NOTIFY_ADMIN_ORDERS_MENU_BUTTONS', $oInfo, $contents);
            $contents[] = array('text' => '<br />' . TEXT_DATE_ORDER_CREATED . ' ' . zen_date_short($oInfo->date_purchased));
            $contents[] = array('text' => '<br />' . $oInfo->customers_email_address);        
            if (zen_not_null($oInfo->last_modified)) $contents[] = array('text' => TEXT_DATE_ORDER_LAST_MODIFIED . ' ' . zen_date_short($oInfo->last_modified));
            $contents[] = array('text' => '<br />' . TEXT_INFO_PAYMENT_METHOD . ' '  . $oInfo->payment_method);
            $contents[] = array('text' => '<br />' . ENTRY_SHIPPING . ' '  . $oInfo->shipping_method);
            $contents[] = array('text' => 'Device: ' . $oInfo->order_device);
    
    // check if order has open gv
            $gv_check = $db->Execute("select order_id, unique_id
                                      from " . TABLE_COUPON_GV_QUEUE ."
                                      where order_id = '" . $oInfo->orders_id . "' and release_flag='N' limit 1");
            if ($gv_check->RecordCount() > 0) {
              $goto_gv = '<a href="' . zen_href_link(FILENAME_GV_QUEUE, 'order=' . $oInfo->orders_id) . '">' . zen_image_button('button_gift_queue.gif',IMAGE_GIFT_QUEUE) . '</a>';
              $contents[] = array('text' => '<br />' . zen_image(DIR_WS_IMAGES . 'pixel_black.gif','','100%','3'));
              $contents[] = array('align' => 'center', 'text' => $goto_gv);
            }
    
            // indicate if comments exist
            $orders_history_query = $db->Execute("select orders_status_id, date_added, customer_notified, comments from " . TABLE_ORDERS_STATUS_HISTORY . " where orders_id = '" . $oInfo->orders_id . "' and comments !='" . "'" );
    
            if ($orders_history_query->RecordCount() > 0) {
              $contents[] = array('align' => 'left', 'text' => '<br />' . TABLE_HEADING_COMMENTS);
            }
    
            $contents[] = array('text' => '<br />' . zen_image(DIR_WS_IMAGES . 'pixel_black.gif','','100%','3'));
            $order = new order($oInfo->orders_id);
            $contents[] = array('text' => TABLE_HEADING_PRODUCTS . ': ' . sizeof($order->products) );
            for ($i=0; $i<sizeof($order->products); $i++) {
              $contents[] = array('text' => $order->products[$i]['qty'] . '&nbsp;x&nbsp;' . $order->products[$i]['name']);
    
              if (sizeof($order->products[$i]['attributes']) > 0) {
                for ($j=0; $j<sizeof($order->products[$i]['attributes']); $j++) {
                  $contents[] = array('text' => '&nbsp;<i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . nl2br(zen_output_string_protected($order->products[$i]['attributes'][$j]['value'])) . '</i></nobr>' );
                }
              }
              if ($i > MAX_DISPLAY_RESULTS_ORDERS_DETAILS_LISTING and MAX_DISPLAY_RESULTS_ORDERS_DETAILS_LISTING != 0) {
                $contents[] = array('align' => 'left', 'text' => TEXT_MORE);
                break;
              }
            }
    
            if (sizeof($order->products) > 0) {
              $contents[] = array('align' => 'center', 'text' => '<a href="' . zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=edit', 'NONSSL') . '">' . zen_image_button('button_edit.gif', IMAGE_EDIT) . '</a>');
            }
          }
          break;
      }
      $zco_notifier->notify('NOTIFY_ADMIN_ORDERS_MENU_BUTTONS_END', (isset($oInfo) ? $oInfo : array()), $contents);
    
      if ( (zen_not_null($heading)) && (zen_not_null($contents)) ) {
        echo '            <td class="noprint" width="25%" valign="top">' . "\n";
    
        $box = new box;
        echo $box->infoBox($heading, $contents);
    
        echo '            </td>' . "\n";
      }
    ?>
              </tr>
            </table></td>
          </tr>
    <?php
      }
    ?>
        </table></td>
    <!-- body_text_eof //-->
      </tr>
    </table>
    <!-- body_eof //-->
    
    <!-- footer //-->
    <div class="footer-area">
    <?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
    </div>
    <!-- footer_eof //-->
    <br />
    </body>
    </html>
    <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
    Immer mit der Ruhe - ich komme noch früh genug zu spät!

Ähnliche Themen

  1. Antworten: 27
    Letzter Beitrag: 17.07.2014, 22:11
  2. kein Versand - nur Abholung
    Von aykatshop im Forum Archivierte Beiträge Zen-Cart Support
    Antworten: 4
    Letzter Beitrag: 15.05.2011, 12:58
  3. Wo Widerruf erstellen, damit Hack (Bestätigung Widerruf) funktioniert
    Von Periodenfee im Forum Archivierte Beiträge Zen-Cart Support
    Antworten: 6
    Letzter Beitrag: 19.08.2010, 19:56
  4. PDF Rechnung ohne agb und widerruf
    Von dzuberbu im Forum Archivierte Beiträge Zen-Cart Support
    Antworten: 2
    Letzter Beitrag: 15.09.2009, 21:09
  5. PDF Rechnung ohne agb und widerruf
    Von dzuberbu im Forum Archivierte Beiträge Zen-Cart Support
    Antworten: 0
    Letzter Beitrag: 14.09.2009, 23:15

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
zen-cart-pro.at
Zen Cart ist eine kostenlose unter der GPL-Lizenz veröffentlichte Open-Source Shopsoftware. Das System wird in den USA entwickelt, die amerikanische Website dazu ist www.zen-cart.com

Die deutsche Zen-Cart Version, um die es hier auf zen-cart-pro.at geht, ist eine Anpassung der amerikanischen Version an die Bedürfnisse von Onlineshopbetreibern im deutschsprachigen Raum.
Die amerikanische Zen-Cart Version berücksichtigt viele rechtliche Erfordernisse nicht, denen ein Onlineshop im deutschsprachigen Raum unterworfen ist. Daher wurde die deutsche Zen-Cart Version auf die Anforderungen, die an Onlineshops in Deutschland, Österreich und der Schweiz gestellt werden, angepasst.

Die deutsche Zen-Cart Version bietet außerdem einen multilingualen Adminbereich. Dadurch sind auch die in der Datenbank hinterlegten Konfigurationseinstellungen und -beschreibungen auf deutsch. Diese Funktionalität steht natürlich auch für später installierte Erweiterungen zur Verfügung. Die im Downloadbereich von zen-cart-pro.at angebotenen Module berücksichtigen diese Multilanguagefähigkeit und sind alle für die deutsche Zen-Cart Version ausgelegt. Zahlreiche häufig genutzte Erweiterungen sind bereits vorinstalliert.

Die deutsche Zen Cart Version wird von einem Team von Entwicklern in Österreich und Deutschland betreut, weiterentwickelt und supportet und steht kostenlos in unserem Downloadbereich zur Verfügung.

[mehr]
Follow Us
  • zen-cart-pro-at auf Twitter
  • zen-cart-pro-at auf Github
  • zen-cart-pro-at auf SourceForge
Aktuelle Version
Zen Cart 1.5.5f deutsch
Revision 1240 vom 01.07.2018
[Download]

unterstützen
Unterstütze die Weiterentwicklung der deutschen Zen Cart Version mit einer Spende!

Spende für die Weiterentwicklung der deutschen Zen Cart Version