[ Index ]
 

Code source de Zen Cart E-Commerce Shopping Cart 1.3.7.1

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/admin/ -> orders.php (source)

   1  <?php
   2  /**

   3   * @package admin

   4   * @copyright Copyright 2003-2007 Zen Cart Development Team

   5   * @copyright Portions Copyright 2003 osCommerce

   6   * @license http://www.zen-cart.com/license/2_0.txt GNU Public License V2.0

   7   * @version $Id: orders.php 6524 2007-06-25 21:27:46Z drbyte $

   8   */
   9  
  10    require ('includes/application_top.php');
  11  
  12    require (DIR_WS_CLASSES . 'currencies.php');
  13    $currencies = new currencies();
  14  
  15    include(DIR_WS_CLASSES . 'order.php');
  16  
  17    // prepare order-status pulldown list

  18    $orders_statuses = array();
  19    $orders_status_array = array();
  20    $orders_status = $db->Execute("select orders_status_id, orders_status_name
  21                                   from " . TABLE_ORDERS_STATUS . "
  22                                   where language_id = '" . (int)$_SESSION['languages_id'] . "'");
  23    while (!$orders_status->EOF) {
  24      $orders_statuses[] = array('id' => $orders_status->fields['orders_status_id'],
  25                                 'text' => $orders_status->fields['orders_status_name'] . ' [' . $orders_status->fields['orders_status_id'] . ']');
  26      $orders_status_array[$orders_status->fields['orders_status_id']] = $orders_status->fields['orders_status_name'];
  27      $orders_status->MoveNext();
  28    }
  29  
  30    $action = (isset($_GET['action']) ? $_GET['action'] : '');
  31  
  32    if (isset($_GET['oID'])) {
  33      $oID = zen_db_prepare_input($_GET['oID']);
  34  
  35      $orders = $db->Execute("select orders_id from " . TABLE_ORDERS . "
  36                              where orders_id = '" . (int)$oID . "'");
  37      $order_exists = true;
  38      if ($orders->RecordCount() <= 0) {
  39        $order_exists = false;
  40        if ($action != '') $messageStack->add(sprintf(ERROR_ORDER_DOES_NOT_EXIST, $oID), 'error');
  41      }
  42    }
  43  
  44    if (zen_not_null($action) && $order_exists == true) {
  45      switch ($action) {
  46        case 'edit':
  47        // reset single download to on

  48          if ($_GET['download_reset_on'] > 0) {
  49            // adjust download_maxdays based on current date

  50            $check_status = $db->Execute("select customers_name, customers_email_address, orders_status,
  51                                        date_purchased from " . TABLE_ORDERS . "
  52                                        where orders_id = '" . $_GET['oID'] . "'");
  53            $zc_max_days = date_diff($check_status->fields['date_purchased'], date('Y-m-d H:i:s', time())) + DOWNLOAD_MAX_DAYS;
  54  
  55            $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'] . "'";
  56            $db->Execute($update_downloads_query);
  57            unset($_GET['download_reset_on']);
  58  
  59            $messageStack->add_session(SUCCESS_ORDER_UPDATED_DOWNLOAD_ON, 'success');
  60            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
  61          }
  62        // reset single download to off

  63          if ($_GET['download_reset_off'] > 0) {
  64            // adjust download_maxdays based on current date

  65  //          $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'] . "'";

  66            $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'] . "'";
  67            unset($_GET['download_reset_off']);
  68            $db->Execute($update_downloads_query);
  69  
  70            $messageStack->add_session(SUCCESS_ORDER_UPDATED_DOWNLOAD_OFF, 'success');
  71            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
  72          }
  73        break;
  74        case 'update_order':
  75          // demo active test

  76          if (zen_admin_demo()) {
  77            $_GET['action']= '';
  78            $messageStack->add_session(ERROR_ADMIN_DEMO, 'caution');
  79            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
  80          }
  81          $oID = zen_db_prepare_input($_GET['oID']);
  82          $status = zen_db_prepare_input($_POST['status']);
  83          $comments = zen_db_prepare_input($_POST['comments']);
  84  
  85          $order_updated = false;
  86          $check_status = $db->Execute("select customers_name, customers_email_address, orders_status,
  87                                        date_purchased from " . TABLE_ORDERS . "
  88                                        where orders_id = '" . (int)$oID . "'");
  89  
  90          if ( ($check_status->fields['orders_status'] != $status) || zen_not_null($comments)) {
  91            $db->Execute("update " . TABLE_ORDERS . "
  92                          set orders_status = '" . zen_db_input($status) . "', last_modified = now()
  93                          where orders_id = '" . (int)$oID . "'");
  94  
  95            $customer_notified = '0';
  96            if (isset($_POST['notify']) && ($_POST['notify'] == 'on')) {
  97              $notify_comments = '';
  98              if (isset($_POST['notify_comments']) && ($_POST['notify_comments'] == 'on') && zen_not_null($comments)) {
  99                $notify_comments = EMAIL_TEXT_COMMENTS_UPDATE . $comments . "\n\n";
 100              }
 101  
 102  
 103  //send emails

 104        $message = STORE_NAME . "\n" . EMAIL_SEPARATOR . "\n" .
 105        EMAIL_TEXT_ORDER_NUMBER . ' ' . $oID . "\n\n" .
 106        EMAIL_TEXT_INVOICE_URL . ' ' . zen_catalog_href_link(FILENAME_CATALOG_ACCOUNT_HISTORY_INFO, 'order_id=' . $oID, 'SSL') . "\n\n" .
 107        EMAIL_TEXT_DATE_ORDERED . ' ' . zen_date_long($check_status->fields['date_purchased']) . "\n\n" .
 108        strip_tags($notify_comments) .
 109        EMAIL_TEXT_STATUS_UPDATED . sprintf(EMAIL_TEXT_STATUS_LABEL, $orders_status_array[$status] ) .
 110        EMAIL_TEXT_STATUS_PLEASE_REPLY;
 111  
 112        $html_msg['EMAIL_CUSTOMERS_NAME']    = $check_status->fields['customers_name'];
 113        $html_msg['EMAIL_TEXT_ORDER_NUMBER'] = EMAIL_TEXT_ORDER_NUMBER . ' ' . $oID;
 114        $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>';
 115        $html_msg['EMAIL_TEXT_DATE_ORDERED'] = EMAIL_TEXT_DATE_ORDERED . ' ' . zen_date_long($check_status->fields['date_purchased']);
 116        $html_msg['EMAIL_TEXT_STATUS_COMMENTS'] = nl2br($notify_comments);
 117        $html_msg['EMAIL_TEXT_STATUS_UPDATED'] = str_replace('\n','', EMAIL_TEXT_STATUS_UPDATED);
 118        $html_msg['EMAIL_TEXT_STATUS_LABEL'] = str_replace('\n','', sprintf(EMAIL_TEXT_STATUS_LABEL, $orders_status_array[$status] ));
 119        $html_msg['EMAIL_TEXT_NEW_STATUS'] = $orders_status_array[$status];
 120        $html_msg['EMAIL_TEXT_STATUS_PLEASE_REPLY'] = str_replace('\n','', EMAIL_TEXT_STATUS_PLEASE_REPLY);
 121  
 122              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');
 123  
 124              $customer_notified = '1';
 125  //send extra emails

 126              if (SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO_STATUS == '1' and SEND_EXTRA_ORDERS_STATUS_ADMIN_EMAILS_TO != '') {
 127                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');
 128              }
 129            }
 130  
 131            $db->Execute("insert into " . TABLE_ORDERS_STATUS_HISTORY . "
 132                        (orders_id, orders_status_id, date_added, customer_notified, comments)
 133                        values ('" . (int)$oID . "',
 134                        '" . zen_db_input($status) . "',
 135                        now(),
 136                        '" . zen_db_input($customer_notified) . "',
 137                        '" . zen_db_input($comments)  . "')");
 138  
 139            $order_updated = true;
 140          }
 141  
 142          if ($order_updated == true) {
 143           if ($status == DOWNLOADS_ORDERS_STATUS_UPDATED_VALUE) {
 144              // adjust download_maxdays based on current date

 145              $zc_max_days = date_diff($check_status->fields['date_purchased'], date('Y-m-d H:i:s', time())) + DOWNLOAD_MAX_DAYS;
 146  
 147              $update_downloads_query = "update " . TABLE_ORDERS_PRODUCTS_DOWNLOAD . " set download_maxdays='" . $zc_max_days . "', download_count='" . DOWNLOAD_MAX_COUNT . "' where orders_id='" . (int)$oID . "'";
 148              $db->Execute($update_downloads_query);
 149            }
 150            $messageStack->add_session(SUCCESS_ORDER_UPDATED, 'success');
 151          } else {
 152            $messageStack->add_session(WARNING_ORDER_NOT_UPDATED, 'warning');
 153          }
 154  
 155          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
 156          break;
 157        case 'deleteconfirm':
 158          // demo active test

 159          if (zen_admin_demo()) {
 160            $_GET['action']= '';
 161            $messageStack->add_session(ERROR_ADMIN_DEMO, 'caution');
 162            zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')), 'NONSSL'));
 163          }
 164          $oID = zen_db_prepare_input($_GET['oID']);
 165  
 166          zen_remove_order($oID, $_POST['restock']);
 167  
 168          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')), 'NONSSL'));
 169          break;
 170        case 'delete_cvv':
 171          $delete_cvv = $db->Execute("update " . TABLE_ORDERS . " set cc_cvv = '" . TEXT_DELETE_CVV_REPLACEMENT . "' where orders_id = '" . (int)$_GET['oID'] . "'");
 172          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
 173          break;
 174        case 'mask_cc':
 175          $result  = $db->Execute("select cc_number from " . TABLE_ORDERS . " where orders_id = '" . (int)$_GET['oID'] . "'");
 176          $old_num = $result->fields['cc_number'];
 177          $new_num = substr($old_num, 0, 4) . str_repeat('*', (strlen($old_num) - 8)) . substr($old_num, -4);
 178          $mask_cc = $db->Execute("update " . TABLE_ORDERS . " set cc_number = '" . $new_num . "' where orders_id = '" . (int)$_GET['oID'] . "'");
 179          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
 180          break;
 181  
 182        case 'doRefund':
 183          $order = new order($oID);
 184          if ($order->info['payment_module_code']) {
 185            if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
 186              require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
 187              require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
 188              $module = new $order->info['payment_module_code'];
 189              if (method_exists($module, '_doRefund')) {
 190                $module->_doRefund($oID);
 191              }
 192            }
 193          }
 194          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
 195          break;
 196        case 'doAuth':
 197          $order = new order($oID);
 198          if ($order->info['payment_module_code']) {
 199            if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
 200              require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
 201              require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
 202              $module = new $order->info['payment_module_code'];
 203              if (method_exists($module, '_doAuth')) {
 204                $module->_doAuth($oID, $order->info['total'], $order->info['currency']);
 205              }
 206            }
 207          }
 208          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
 209          break;
 210        case 'doCapture':
 211          $order = new order($oID);
 212          if ($order->info['payment_module_code']) {
 213            if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
 214              require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
 215              require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
 216              $module = new $order->info['payment_module_code'];
 217              if (method_exists($module, '_doCapt')) {
 218                $module->_doCapt($oID, 'Complete', $order->info['total'], $order->info['currency']);
 219              }
 220            }
 221          }
 222          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
 223          break;
 224        case 'doVoid':
 225          $order = new order($oID);
 226          if ($order->info['payment_module_code']) {
 227            if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
 228              require_once(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
 229              require_once(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
 230              $module = new $order->info['payment_module_code'];
 231              if (method_exists($module, '_doVoid')) {
 232                $module->_doVoid($oID);
 233              }
 234            }
 235          }
 236          zen_redirect(zen_href_link(FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=edit', 'NONSSL'));
 237          break;
 238      }
 239    }
 240  ?>
 241  <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
 242  <html <?php echo HTML_PARAMS; ?>>
 243  <head>
 244  <meta http-equiv="Content-Type" content="text/html; charset=<?php echo CHARSET; ?>">
 245  <title><?php echo TITLE; ?></title>
 246  <link rel="stylesheet" type="text/css" href="includes/stylesheet.css">
 247  <link rel="stylesheet" type="text/css" media="print" href="includes/stylesheet_print.css">
 248  <link rel="stylesheet" type="text/css" href="includes/cssjsmenuhover.css" media="all" id="hoverJS">
 249  <script language="javascript" src="includes/menu.js"></script>
 250  <script language="javascript" src="includes/general.js"></script>
 251  <script type="text/javascript">
 252    <!--
 253    function init()
 254    {
 255      cssjsmenu('navbar');
 256      if (document.getElementById)
 257      {
 258        var kill = document.getElementById('hoverJS');
 259        kill.disabled = true;
 260      }
 261    }
 262    // -->

 263  </script>
 264  <script language="javascript" type="text/javascript"><!--
 265  function couponpopupWindow(url) {
 266    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')
 267  }
 268  //--></script>

 269  </head>
 270  <body onLoad="init()">
 271  <!-- header //-->
 272  <div class="header-area">
 273  <?php
 274    require(DIR_WS_INCLUDES . 'header.php');
 275  ?>
 276  </div>
 277  <!-- header_eof //-->
 278  
 279  <!-- body //-->
 280  <table border="0" width="100%" cellspacing="2" cellpadding="2">
 281    <tr>
 282  <!-- body_text //-->
 283  
 284  <?php if (empty($action)) { ?>
 285  <!-- search -->
 286      <td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
 287        <tr>
 288          <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
 289           <tr><?php echo zen_draw_form('search', FILENAME_ORDERS, '', 'get', '', true); ?>
 290              <td class="pageHeading" align="right"><?php echo zen_draw_separator('pixel_trans.gif', 1, HEADING_IMAGE_HEIGHT); ?></td>
 291              <td colspan="2" class="smallText" align="right">
 292  <?php
 293  // show reset search

 294    if ((isset($_GET['search']) && zen_not_null($_GET['search'])) or $_GET['cID'] !='') {
 295      echo '<a href="' . zen_href_link(FILENAME_ORDERS, '', 'NONSSL') . '">' . zen_image_button('button_reset.gif', IMAGE_RESET) . '</a><br />';
 296    }
 297  ?>
 298  <?php
 299    echo HEADING_TITLE_SEARCH_DETAIL . ' ' . zen_draw_input_field('search') . zen_hide_session_id();
 300    if (isset($_GET['search']) && zen_not_null($_GET['search'])) {
 301      $keywords = zen_db_input(zen_db_prepare_input($_GET['search']));
 302      echo '<br/ >' . TEXT_INFO_SEARCH_DETAIL_FILTER . $keywords;
 303    }
 304  ?>
 305              </td>
 306            </form></tr>
 307          </table></td>
 308        </tr>
 309  <!-- search -->
 310  <?php } ?>
 311  
 312  
 313  <?php
 314    if (($action == 'edit') && ($order_exists == true)) {
 315      $order = new order($oID);
 316      if ($order->info['payment_module_code']) {
 317        if (file_exists(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php')) {
 318          require(DIR_FS_CATALOG_MODULES . 'payment/' . $order->info['payment_module_code'] . '.php');
 319          require(DIR_FS_CATALOG_LANGUAGES . $_SESSION['language'] . '/modules/payment/' . $order->info['payment_module_code'] . '.php');
 320          $module = new $order->info['payment_module_code'];
 321  //        echo $module->admin_notification($oID);

 322        }
 323      }
 324  ?>
 325        <tr>
 326          <td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="0">
 327            <tr>
 328              <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
 329              <td class="pageHeading" align="right"><?php echo zen_draw_separator('pixel_trans.gif', 1, HEADING_IMAGE_HEIGHT); ?></td>
 330              <td class="pageHeading" align="right"><?php echo '<a href="javascript:history.back()">' . zen_image_button('button_back.gif', IMAGE_BACK) . '</a>'; ?></td>
 331            </tr>
 332          </table></td>
 333        </tr>
 334        <tr>
 335          <td><table width="100%" border="0" cellspacing="0" cellpadding="2">
 336            <tr>
 337              <td colspan="3"><?php echo zen_draw_separator(); ?></td>
 338            </tr>
 339            <tr>
 340              <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
 341                <tr>
 342                  <td class="main" valign="top"><strong><?php echo ENTRY_CUSTOMER; ?></strong></td>
 343                  <td class="main"><?php echo zen_address_format($order->customer['format_id'], $order->customer, 1, '', '<br />'); ?></td>
 344                </tr>
 345                <tr>
 346                  <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '5'); ?></td>
 347                </tr>
 348                <tr>
 349                  <td class="main"><strong><?php echo ENTRY_TELEPHONE_NUMBER; ?></strong></td>
 350                  <td class="main"><?php echo $order->customer['telephone']; ?></td>
 351                </tr>
 352                <tr>
 353                  <td class="main"><strong><?php echo ENTRY_EMAIL_ADDRESS; ?></strong></td>
 354                  <td class="main"><?php echo '<a href="mailto:' . $order->customer['email_address'] . '">' . $order->customer['email_address'] . '</a>'; ?></td>
 355                </tr>
 356                <tr>
 357                  <td class="main"><strong><?php echo TEXT_INFO_IP_ADDRESS; ?></strong></td>
 358                  <td class="main"><?php echo $order->info['ip_address']; ?></td>
 359                </tr>
 360              </table></td>
 361              <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
 362                <tr>
 363                  <td class="main" valign="top"><strong><?php echo ENTRY_SHIPPING_ADDRESS; ?></strong></td>
 364                  <td class="main"><?php echo zen_address_format($order->delivery['format_id'], $order->delivery, 1, '', '<br />'); ?></td>
 365                </tr>
 366              </table></td>
 367              <td valign="top"><table width="100%" border="0" cellspacing="0" cellpadding="2">
 368                <tr>
 369                  <td class="main" valign="top"><strong><?php echo ENTRY_BILLING_ADDRESS; ?></strong></td>
 370                  <td class="main"><?php echo zen_address_format($order->billing['format_id'], $order->billing, 1, '', '<br />'); ?></td>
 371                </tr>
 372              </table></td>
 373            </tr>
 374          </table></td>
 375        </tr>
 376        <tr>
 377          <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
 378        </tr>
 379        <tr>
 380          <td class="main"><strong><?php echo ENTRY_ORDER_ID . $oID; ?></strong></td>
 381        </tr>
 382        <tr>
 383       <td><table border="0" cellspacing="0" cellpadding="2">
 384          <tr>
 385             <td class="main"><strong><?php echo ENTRY_DATE_PURCHASED; ?></strong></td>
 386             <td class="main"><?php echo zen_date_long($order->info['date_purchased']); ?></td>
 387          </tr>
 388          <tr>
 389             <td class="main"><strong><?php echo ENTRY_PAYMENT_METHOD; ?></strong></td>
 390             <td class="main"><?php echo $order->info['payment_method']; ?></td>
 391          </tr>
 392  <?php
 393      if (zen_not_null($order->info['cc_type']) || zen_not_null($order->info['cc_owner']) || zen_not_null($order->info['cc_number'])) {
 394  ?>
 395            <tr>
 396              <td colspan="2"><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
 397            </tr>
 398            <tr>
 399              <td class="main"><?php echo ENTRY_CREDIT_CARD_TYPE; ?></td>
 400              <td class="main"><?php echo $order->info['cc_type']; ?></td>
 401            </tr>
 402            <tr>
 403              <td class="main"><?php echo ENTRY_CREDIT_CARD_OWNER; ?></td>
 404              <td class="main"><?php echo $order->info['cc_owner']; ?></td>
 405            </tr>
 406            <tr>
 407              <td class="main"><?php echo ENTRY_CREDIT_CARD_NUMBER; ?></td>
 408              <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>
 409            </tr>
 410            <tr>
 411              <td class="main"><?php echo ENTRY_CREDIT_CARD_CVV; ?></td>
 412              <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>
 413            </tr>
 414            <tr>
 415              <td class="main"><?php echo ENTRY_CREDIT_CARD_EXPIRES; ?></td>
 416              <td class="main"><?php echo $order->info['cc_expires']; ?></td>
 417            </tr>
 418  <?php
 419      }
 420  ?>
 421          </table></td>
 422        </tr>
 423  <?php
 424        if (method_exists($module, 'admin_notification')) {
 425  ?>
 426        <tr>
 427          <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
 428        </tr>
 429        <tr>
 430          <?php echo $module->admin_notification($oID); ?>
 431        </tr>
 432        <tr>
 433          <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
 434        </tr>
 435  <?php
 436  }
 437  ?>
 438        <tr>
 439          <td><table border="0" width="100%" cellspacing="0" cellpadding="2">
 440            <tr class="dataTableHeadingRow">
 441              <td class="dataTableHeadingContent" colspan="2"><?php echo TABLE_HEADING_PRODUCTS; ?></td>
 442              <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_PRODUCTS_MODEL; ?></td>
 443              <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TAX; ?></td>
 444              <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_PRICE_EXCLUDING_TAX; ?></td>
 445              <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_PRICE_INCLUDING_TAX; ?></td>
 446              <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TOTAL_EXCLUDING_TAX; ?></td>
 447              <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_TOTAL_INCLUDING_TAX; ?></td>
 448            </tr>
 449  <?php
 450      for ($i=0, $n=sizeof($order->products); $i<$n; $i++) {
 451        echo '          <tr class="dataTableRow">' . "\n" .
 452             '            <td class="dataTableContent" valign="top" align="right">' . $order->products[$i]['qty'] . '&nbsp;x</td>' . "\n" .
 453             '            <td class="dataTableContent" valign="top">' . $order->products[$i]['name'];
 454  
 455        if (isset($order->products[$i]['attributes']) && (sizeof($order->products[$i]['attributes']) > 0)) {
 456          for ($j = 0, $k = sizeof($order->products[$i]['attributes']); $j < $k; $j++) {
 457            echo '<br /><nobr><small>&nbsp;<i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . nl2br(zen_output_string_protected($order->products[$i]['attributes'][$j]['value']));
 458            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']) . ')';
 459            if ($order->products[$i]['attributes'][$j]['product_attribute_is_free'] == '1' and $order->products[$i]['product_is_free'] == '1') echo TEXT_INFO_ATTRIBUTE_FREE;
 460            echo '</i></small></nobr>';
 461          }
 462        }
 463  
 464        echo '            </td>' . "\n" .
 465             '            <td class="dataTableContent" valign="top">' . $order->products[$i]['model'] . '</td>' . "\n" .
 466             '            <td class="dataTableContent" align="right" valign="top">' . zen_display_tax_value($order->products[$i]['tax']) . '%</td>' . "\n" .
 467             '            <td class="dataTableContent" align="right" valign="top"><strong>' .
 468                            $currencies->format($order->products[$i]['final_price'], true, $order->info['currency'], $order->info['currency_value']) .
 469                            ($order->products[$i]['onetime_charges'] != 0 ? '<br />' . $currencies->format($order->products[$i]['onetime_charges'], true, $order->info['currency'], $order->info['currency_value']) : '') .
 470                          '</strong></td>' . "\n" .
 471             '            <td class="dataTableContent" align="right" valign="top"><strong>' .
 472                            $currencies->format(zen_add_tax($order->products[$i]['final_price'], $order->products[$i]['tax']), true, $order->info['currency'], $order->info['currency_value']) .
 473                            ($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']) : '') .
 474                          '</strong></td>' . "\n" .
 475             '            <td class="dataTableContent" align="right" valign="top"><strong>' .
 476                            $currencies->format($order->products[$i]['final_price'] * $order->products[$i]['qty'], true, $order->info['currency'], $order->info['currency_value']) .
 477                            ($order->products[$i]['onetime_charges'] != 0 ? '<br />' . $currencies->format($order->products[$i]['onetime_charges'], true, $order->info['currency'], $order->info['currency_value']) : '') .
 478                          '</strong></td>' . "\n" .
 479             '            <td class="dataTableContent" align="right" valign="top"><strong>' .
 480                            $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']) .
 481                            ($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']) : '') .
 482                          '</strong></td>' . "\n";
 483        echo '          </tr>' . "\n";
 484      }
 485  ?>
 486            <tr>
 487              <td align="right" colspan="8"><table border="0" cellspacing="0" cellpadding="2">
 488  <?php
 489      for ($i = 0, $n = sizeof($order->totals); $i < $n; $i++) {
 490        echo '              <tr>' . "\n" .
 491             '                <td align="right" class="'. str_replace('_', '-', $order->totals[$i]['class']) . '-Text">' . $order->totals[$i]['title'] . '</td>' . "\n" .
 492             '                <td align="right" class="'. str_replace('_', '-', $order->totals[$i]['class']) . '-Amount">' . $order->totals[$i]['text'] . '</td>' . "\n" .
 493             '              </tr>' . "\n";
 494      }
 495  ?>
 496              </table></td>
 497            </tr>
 498          </table></td>
 499        </tr>
 500  
 501  <?php
 502    // show downloads

 503    require(DIR_WS_MODULES . 'orders_download.php');
 504  ?>
 505  
 506        <tr>
 507          <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
 508        </tr>
 509        <tr>
 510          <td class="main"><table border="1" cellspacing="0" cellpadding="5">
 511            <tr>
 512              <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_DATE_ADDED; ?></strong></td>
 513              <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_CUSTOMER_NOTIFIED; ?></strong></td>
 514              <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_STATUS; ?></strong></td>
 515              <td class="smallText" align="center"><strong><?php echo TABLE_HEADING_COMMENTS; ?></strong></td>
 516            </tr>
 517  <?php
 518      $orders_history = $db->Execute("select orders_status_id, date_added, customer_notified, comments
 519                                      from " . TABLE_ORDERS_STATUS_HISTORY . "
 520                                      where orders_id = '" . zen_db_input($oID) . "'
 521                                      order by date_added");
 522  
 523      if ($orders_history->RecordCount() > 0) {
 524        while (!$orders_history->EOF) {
 525          echo '          <tr>' . "\n" .
 526               '            <td class="smallText" align="center">' . zen_datetime_short($orders_history->fields['date_added']) . '</td>' . "\n" .
 527               '            <td class="smallText" align="center">';
 528          if ($orders_history->fields['customer_notified'] == '1') {
 529            echo zen_image(DIR_WS_ICONS . 'tick.gif', ICON_TICK) . "</td>\n";
 530          } else {
 531            echo zen_image(DIR_WS_ICONS . 'cross.gif', ICON_CROSS) . "</td>\n";
 532          }
 533          echo '            <td class="smallText">' . $orders_status_array[$orders_history->fields['orders_status_id']] . '</td>' . "\n";
 534          echo '            <td class="smallText">' . nl2br(zen_db_output($orders_history->fields['comments'])) . '&nbsp;</td>' . "\n" .
 535               '          </tr>' . "\n";
 536          $orders_history->MoveNext();
 537        }
 538      } else {
 539          echo '          <tr>' . "\n" .
 540               '            <td class="smallText" colspan="5">' . TEXT_NO_ORDER_HISTORY . '</td>' . "\n" .
 541               '          </tr>' . "\n";
 542      }
 543  ?>
 544          </table></td>
 545        </tr>
 546        <tr>
 547          <td class="main noprint"><br /><strong><?php echo TABLE_HEADING_COMMENTS; ?></strong></td>
 548        </tr>
 549        <tr>
 550          <td class="noprint"><?php echo zen_draw_separator('pixel_trans.gif', '1', '5'); ?></td>
 551        </tr>
 552        <tr><?php echo zen_draw_form('status', FILENAME_ORDERS, zen_get_all_get_params(array('action')) . 'action=update_order', 'post', '', true); ?>
 553          <td class="main noprint"><?php echo zen_draw_textarea_field('comments', 'soft', '60', '5'); ?></td>
 554        </tr>
 555        <tr>
 556          <td><?php echo zen_draw_separator('pixel_trans.gif', '1', '10'); ?></td>
 557        </tr>
 558        <tr>
 559          <td><table border="0" cellspacing="0" cellpadding="2" class="noprint">
 560            <tr>
 561              <td><table border="0" cellspacing="0" cellpadding="2">
 562                <tr>
 563                  <td class="main"><strong><?php echo ENTRY_STATUS; ?></strong> <?php echo zen_draw_pull_down_menu('status', $orders_statuses, $order->info['orders_status']); ?></td>
 564                </tr>
 565                <tr>
 566                  <td class="main"><strong><?php echo ENTRY_NOTIFY_CUSTOMER; ?></strong> <?php echo zen_draw_checkbox_field('notify', '', true); ?></td>
 567                  <td class="main"><strong><?php echo ENTRY_NOTIFY_COMMENTS; ?></strong> <?php echo zen_draw_checkbox_field('notify_comments', '', true); ?></td>
 568                </tr>
 569              </table></td>
 570              <td valign="top"><?php echo zen_image_submit('button_update.gif', IMAGE_UPDATE); ?></td>
 571            </tr>
 572          </table></td>
 573        </form></tr>
 574        <tr>
 575          <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>
 576        </tr>
 577  <?php
 578  // check if order has open gv

 579          $gv_check = $db->Execute("select order_id, unique_id
 580                                    from " . TABLE_COUPON_GV_QUEUE ."
 581                                    where order_id = '" . $_GET['oID'] . "' and release_flag='N' limit 1");
 582          if ($gv_check->RecordCount() > 0) {
 583            $goto_gv = '<a href="' . zen_href_link(FILENAME_GV_QUEUE, 'order=' . $_GET['oID']) . '">' . zen_image_button('button_gift_queue.gif',IMAGE_GIFT_QUEUE) . '</a>';
 584            echo '      <tr><td align="right"><table width="225"><tr>';
 585            echo '        <td align="center">';
 586            echo $goto_gv . '&nbsp;&nbsp;';
 587            echo '        </td>';
 588            echo '      </tr></table></td></tr>';
 589          }
 590  ?>
 591  <?php
 592    } else {
 593  ?>
 594        <tr>
 595          <td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="0">
 596            <tr>
 597              <td class="pageHeading"><?php echo HEADING_TITLE; ?></td>
 598              <td class="pageHeading" align="right"><?php echo zen_draw_separator('pixel_trans.gif', 1, HEADING_IMAGE_HEIGHT); ?></td>
 599              <td align="right"><table border="0" width="100%" cellspacing="0" cellpadding="0">
 600                <tr><?php echo zen_draw_form('orders', FILENAME_ORDERS, '', 'get', '', true); ?>
 601                  <td class="smallText" align="right"><?php echo HEADING_TITLE_SEARCH . ' ' . zen_draw_input_field('oID', '', 'size="12"') . zen_draw_hidden_field('action', 'edit') . zen_hide_session_id(); ?></td>
 602                </form></tr>
 603                <tr><?php echo zen_draw_form('status', FILENAME_ORDERS, '', 'get', '', true); ?>
 604                  <td class="smallText" align="right">
 605                    <?php
 606                      echo HEADING_TITLE_STATUS . ' ' . zen_draw_pull_down_menu('status', array_merge(array(array('id' => '', 'text' => TEXT_ALL_ORDERS)), $orders_statuses), $_GET['status'], 'onChange="this.form.submit();"');
 607                      echo zen_hide_session_id();
 608                    ?>
 609                  </td>
 610                </form></tr>
 611              </table></td>
 612            </tr>
 613          </table></td>
 614        </tr>
 615        <tr>
 616          <td><table border="0" width="100%" cellspacing="0" cellpadding="0">
 617            <tr>
 618              <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; ?>
 619            </td>
 620            <tr>
 621              <td valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="2">
 622                <tr class="dataTableHeadingRow">
 623  <?php
 624  // Sort Listing

 625            switch ($_GET['list_order']) {
 626                case "id-asc":
 627                $disp_order = "c.customers_id";
 628                break;
 629                case "firstname":
 630                $disp_order = "c.customers_firstname";
 631                break;
 632                case "firstname-desc":
 633                $disp_order = "c.customers_firstname DESC";
 634                break;
 635                case "lastname":
 636                $disp_order = "c.customers_lastname, c.customers_firstname";
 637                break;
 638                case "lastname-desc":
 639                $disp_order = "c.customers_lastname DESC, c.customers_firstname";
 640                break;
 641                case "company":
 642                $disp_order = "a.entry_company";
 643                break;
 644                case "company-desc":
 645                $disp_order = "a.entry_company DESC";
 646                break;
 647                default:
 648                $disp_order = "c.customers_id DESC";
 649            }
 650  ?>
 651                  <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_ORDERS_ID; ?></td>
 652                  <td class="dataTableHeadingContent" align="left" width="50"><?php echo TABLE_HEADING_PAYMENT_METHOD; ?></td>
 653                  <td class="dataTableHeadingContent"><?php echo TABLE_HEADING_CUSTOMERS; ?></td>
 654                  <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ORDER_TOTAL; ?></td>
 655                  <td class="dataTableHeadingContent" align="center"><?php echo TABLE_HEADING_DATE_PURCHASED; ?></td>
 656                  <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_STATUS; ?></td>
 657                  <td class="dataTableHeadingContent" align="right"><?php echo TABLE_HEADING_ACTION; ?>&nbsp;</td>
 658                </tr>
 659  
 660  <?php
 661  // create search filter

 662    $search = '';
 663    if (isset($_GET['search']) && zen_not_null($_GET['search'])) {
 664      $keywords = zen_db_input(zen_db_prepare_input($_GET['search']));
 665      $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 . "%' or o.ip_address  like '%" . $keywords . "%')";
 666    }
 667  ?>
 668  <?php
 669      $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.ip_address ";
 670      if (isset($_GET['cID'])) {
 671        $cID = zen_db_prepare_input($_GET['cID']);
 672        $orders_query_raw = "select 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, s.orders_status_name, ot.text as order_total" . $new_fields . " from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . (int)$cID . "' and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$_SESSION['languages_id'] . "' and ot.class = 'ot_total' order by orders_id DESC";
 673      } elseif ($_GET['status'] != '') {
 674        $status = zen_db_prepare_input($_GET['status']);
 675        $orders_query_raw = "select 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, s.orders_status_name, ot.text as order_total" . $new_fields . " from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.orders_status = s.orders_status_id and s.language_id = '" . (int)$_SESSION['languages_id'] . "' and s.orders_status_id = '" . (int)$status . "' and ot.class = 'ot_total'  " . $search . " order by o.orders_id DESC";
 676      } else {
 677        $orders_query_raw = "select 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, s.orders_status_name, ot.text as order_total" . $new_fields . " from " . TABLE_ORDERS . " o left join " . TABLE_ORDERS_TOTAL . " ot on (o.orders_id = ot.orders_id), " . TABLE_ORDERS_STATUS . " s where o.orders_status = s.orders_status_id and s.language_id = '" . (int)$_SESSION['languages_id'] . "' and ot.class = 'ot_total'  " . $search . " order by o.orders_id DESC";
 678      }
 679  
 680  // Split Page

 681  // reset page when page is unknown

 682  if (($_GET['page'] == '' or $_GET['page'] <= 1) and $_GET['oID'] != '') {
 683    $check_page = $db->Execute($orders_query_raw);
 684    $check_count=1;
 685    if ($check_page->RecordCount() > MAX_DISPLAY_SEARCH_RESULTS_ORDERS) {
 686      while (!$check_page->EOF) {
 687        if ($check_page->fields['orders_id'] == $_GET['oID']) {
 688          break;
 689        }
 690        $check_count++;
 691        $check_page->MoveNext();
 692      }
 693      $_GET['page'] = round((($check_count/MAX_DISPLAY_SEARCH_RESULTS_ORDERS)+(fmod_round($check_count,MAX_DISPLAY_SEARCH_RESULTS_ORDERS) !=0 ? .5 : 0)),0);
 694    } else {
 695      $_GET['page'] = 1;
 696    }
 697  }
 698  
 699  //    $orders_query_numrows = '';

 700      $orders_split = new splitPageResults($_GET['page'], MAX_DISPLAY_SEARCH_RESULTS_ORDERS, $orders_query_raw, $orders_query_numrows);
 701      $orders = $db->Execute($orders_query_raw);
 702      while (!$orders->EOF) {
 703      if ((!isset($_GET['oID']) || (isset($_GET['oID']) && ($_GET['oID'] == $orders->fields['orders_id']))) && !isset($oInfo)) {
 704          $oInfo = new objectInfo($orders->fields);
 705        }
 706  
 707        if (isset($oInfo) && is_object($oInfo) && ($orders->fields['orders_id'] == $oInfo->orders_id)) {
 708          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";
 709        } else {
 710          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";
 711        }
 712  
 713        $show_difference = '';
 714        if (($orders->fields['delivery_name'] != $orders->fields['billing_name'] and $orders->fields['delivery_name'] != '')) {
 715          $show_difference = zen_image(DIR_WS_IMAGES . 'icon_status_red.gif', TEXT_BILLING_SHIPPING_MISMATCH, 10, 10) . '&nbsp;';
 716        }
 717        if (($orders->fields['delivery_street_address'] != $orders->fields['billing_street_address'] and $orders->fields['delivery_street_address'] != '')) {
 718          $show_difference = zen_image(DIR_WS_IMAGES . 'icon_status_red.gif', TEXT_BILLING_SHIPPING_MISMATCH, 10, 10) . '&nbsp;';
 719        }
 720        $show_payment_type = $orders->fields['payment_module_code'] . '<br />' . $orders->fields['shipping_module_code'];
 721  ?>
 722                  <td class="dataTableContent" align="right"><?php echo $show_difference . $orders->fields['orders_id']; ?></td>
 723                  <td class="dataTableContent" align="left" width="50"><?php echo $show_payment_type; ?></td>
 724                  <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>
 725                  <td class="dataTableContent" align="right"><?php echo strip_tags($orders->fields['order_total']); ?></td>
 726                  <td class="dataTableContent" align="center"><?php echo zen_datetime_short($orders->fields['date_purchased']); ?></td>
 727                  <td class="dataTableContent" align="right"><?php echo $orders->fields['orders_status_name']; ?></td>
 728  
 729                  <td class="dataTableContent" 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>
 730                </tr>
 731  <?php
 732        $orders->MoveNext();
 733      }
 734  ?>
 735                <tr>
 736                  <td colspan="5"><table border="0" width="100%" cellspacing="0" cellpadding="2">
 737                    <tr>
 738                      <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>
 739                      <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>
 740                    </tr>
 741  <?php
 742    if (isset($_GET['search']) && zen_not_null($_GET['search'])) {
 743  ?>
 744                    <tr>
 745                      <td class="smallText" align="right" colspan="2">
 746                        <?php
 747                          echo '<a href="' . zen_href_link(FILENAME_ORDERS, '', 'NONSSL') . '">' . zen_image_button('button_reset.gif', IMAGE_RESET) . '</a>';
 748                          if (isset($_GET['search']) && zen_not_null($_GET['search'])) {
 749                            $keywords = zen_db_input(zen_db_prepare_input($_GET['search']));
 750                            echo '<br/ >' . TEXT_INFO_SEARCH_DETAIL_FILTER . $keywords;
 751                          }
 752                        ?>
 753                      </td>
 754                    </tr>
 755  <?php
 756    }
 757  ?>
 758                  </table></td>
 759                </tr>
 760              </table></td>
 761  <?php
 762    $heading = array();
 763    $contents = array();
 764  
 765    switch ($action) {
 766      case 'delete':
 767        $heading[] = array('text' => '<strong>' . TEXT_INFO_HEADING_DELETE_ORDER . '</strong>');
 768  
 769        $contents = array('form' => zen_draw_form('orders', FILENAME_ORDERS, zen_get_all_get_params(array('oID', 'action')) . 'oID=' . $oInfo->orders_id . '&action=deleteconfirm', 'post', '', true));
 770  //      $contents[] = array('text' => TEXT_INFO_DELETE_INTRO . '<br /><br /><strong>' . $cInfo->customers_firstname . ' ' . $cInfo->customers_lastname . '</strong>');

 771        $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>');
 772        $contents[] = array('text' => '<br />' . zen_draw_checkbox_field('restock') . ' ' . TEXT_INFO_RESTOCK_PRODUCT_QUANTITY);
 773        $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>');
 774        break;
 775      default:
 776        if (isset($oInfo) && is_object($oInfo)) {
 777          $heading[] = array('text' => '<strong>[' . $oInfo->orders_id . ']&nbsp;&nbsp;' . zen_datetime_short($oInfo->date_purchased) . '</strong>');
 778  
 779          $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>');
 780          $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>');
 781          $contents[] = array('text' => '<br />' . TEXT_DATE_ORDER_CREATED . ' ' . zen_date_short($oInfo->date_purchased));
 782          $contents[] = array('text' => '<br />' . $oInfo->customers_email_address);
 783          $contents[] = array('text' => TEXT_INFO_IP_ADDRESS . ' ' . $oInfo->ip_address);
 784          if (zen_not_null($oInfo->last_modified)) $contents[] = array('text' => TEXT_DATE_ORDER_LAST_MODIFIED . ' ' . zen_date_short($oInfo->last_modified));
 785          $contents[] = array('text' => '<br />' . TEXT_INFO_PAYMENT_METHOD . ' '  . $oInfo->payment_method);
 786          $contents[] = array('text' => '<br />' . ENTRY_SHIPPING . ' '  . $oInfo->shipping_method);
 787  
 788  // check if order has open gv

 789          $gv_check = $db->Execute("select order_id, unique_id
 790                                    from " . TABLE_COUPON_GV_QUEUE ."
 791                                    where order_id = '" . $oInfo->orders_id . "' and release_flag='N' limit 1");
 792          if ($gv_check->RecordCount() > 0) {
 793            $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>';
 794            $contents[] = array('text' => '<br />' . zen_image(DIR_WS_IMAGES . 'pixel_black.gif','','100%','3'));
 795            $contents[] = array('align' => 'center', 'text' => $goto_gv);
 796          }
 797        }
 798  
 799  // indicate if comments exist

 800        $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 !='" . "'" );
 801        if ($orders_history_query->RecordCount() > 0) {
 802          $contents[] = array('align' => 'left', 'text' => '<br />' . TABLE_HEADING_COMMENTS);
 803        }
 804  
 805        $contents[] = array('text' => '<br />' . zen_image(DIR_WS_IMAGES . 'pixel_black.gif','','100%','3'));
 806        $order = new order($oInfo->orders_id);
 807        $contents[] = array('text' => 'Products Ordered: ' . sizeof($order->products) );
 808        for ($i=0; $i<sizeof($order->products); $i++) {
 809          $contents[] = array('text' => $order->products[$i]['qty'] . '&nbsp;x&nbsp;' . $order->products[$i]['name']);
 810  
 811          if (sizeof($order->products[$i]['attributes']) > 0) {
 812            for ($j=0; $j<sizeof($order->products[$i]['attributes']); $j++) {
 813              $contents[] = array('text' => '&nbsp;<i> - ' . $order->products[$i]['attributes'][$j]['option'] . ': ' . nl2br(zen_output_string_protected($order->products[$i]['attributes'][$j]['value'])) . '</i></nobr>' );
 814            }
 815          }
 816          if ($i > MAX_DISPLAY_RESULTS_ORDERS_DETAILS_LISTING and MAX_DISPLAY_RESULTS_ORDERS_DETAILS_LISTING != 0) {
 817            $contents[] = array('align' => 'left', 'text' => TEXT_MORE);
 818            break;
 819          }
 820        }
 821  
 822        if (sizeof($order->products) > 0) {
 823          $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>');
 824        }
 825        break;
 826    }
 827  
 828    if ( (zen_not_null($heading)) && (zen_not_null($contents)) ) {
 829      echo '            <td width="25%" valign="top">' . "\n";
 830  
 831      $box = new box;
 832      echo $box->infoBox($heading, $contents);
 833  
 834      echo '            </td>' . "\n";
 835    }
 836  ?>
 837            </tr>
 838          </table></td>
 839        </tr>
 840  <?php
 841    }
 842  ?>
 843      </table></td>
 844  <!-- body_text_eof //-->
 845    </tr>
 846  </table>
 847  <!-- body_eof //-->
 848  
 849  <!-- footer //-->
 850  <div class="footer-area">
 851  <?php require(DIR_WS_INCLUDES . 'footer.php'); ?>
 852  </div>
 853  <!-- footer_eof //-->
 854  <br />
 855  </body>
 856  </html>
 857  <?php require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>


Généré le : Mon Nov 26 16:45:43 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics