hasStarted() === FALSE ) $session->start(); if (!isset($_SESSION['customer_id'])) { // navigation history if (!isset($_SESSION['navigation'])) { $_SESSION['navigation'] = new navigationHistory(); } $_SESSION['navigation']->set_snapshot(); oos_redirect(oos_href_link($aContents['login'])); } $nPage = isset($_GET['page']) ? intval( $_GET['page'] ) : 1; // split-page-results require_once MYOOS_INCLUDE_PATH . '/includes/classes/class_split_page_results.php'; require_once MYOOS_INCLUDE_PATH . '/includes/languages/' . $sLanguage . '/account_order_history.php'; $aTemplate['page'] = $sTheme . '/page/account_order_history.html'; $aTemplate['pagination'] = $sTheme . '/system/_pagination.html'; $nPageType = OOS_PAGE_TYPE_CATALOG; $sPagetitle = $aLang['heading_title'] . ' ' . OOS_META_TITLE; require_once MYOOS_INCLUDE_PATH . '/includes/system.php'; if (!isset($option)) { require_once MYOOS_INCLUDE_PATH . '/includes/message.php'; require_once MYOOS_INCLUDE_PATH . '/includes/blocks.php'; } $orderstable = $oostable['orders']; $orders_productstable = $oostable['orders_products']; $productstable = $oostable['products']; $query = "SELECT DISTINCT op.products_id FROM $orderstable o, $orders_productstable op, $productstable p WHERE o.customers_id = '" . intval($_SESSION['customer_id']) . "' AND o.orders_id = op.orders_id AND op.products_id = p.products_id AND p.products_setting = '2' GROUP BY products_id ORDER BY o.date_purchased DESC"; $orders_result = $dbconn->Execute($query); if ($orders_result->RecordCount()) { $product_ids = ''; while ($orders = $orders_result->fields) { $product_ids .= $orders['products_id'] . ','; // Move that ADOdb pointer! $orders_result->MoveNext(); } $product_ids = substr($product_ids, 0, -1); $productstable = $oostable['products']; $products_descriptiontable = $oostable['products_description']; $manufacturerstable = $oostable['manufacturers']; $historytable = $oostable['specials']; $order_history_raw = "SELECT pd.products_name, p.products_id, p.products_quantity, p.products_image, p.products_price, p.products_base_price, p.products_tax_class_id, p.products_product_quantity, p.products_base_unit, p.products_quantity_order_min, p.products_quantity_order_max, p.products_quantity_order_units, products_units_id, IF(s.status, s.specials_new_products_price, NULL) AS specials_new_products_price, IF(s.status, s.specials_new_products_price, p.products_price) AS final_price FROM $products_descriptiontable pd, $productstable p LEFT JOIN $manufacturerstable m ON p.manufacturers_id = m.manufacturers_id LEFT JOIN $historytable s ON p.products_id = s.products_id WHERE p.products_setting = '2' AND p.products_id = pd.products_id AND pd.products_id IN ($product_ids) AND pd.products_languages_id = '" . intval($nLanguageID) . "'"; $order_history_split = new splitPageResults($order_history_raw, MAX_DISPLAY_PRODUCTS_NEW); $order_history_result = $dbconn->Execute($order_history_split->sql_query); $aOrderHistory = array(); while ($order_history = $order_history_result->fields) { $new_product_price = NULL; $new_product_special_price = NULL; $new_base_product_price = NULL; $base_product_price = $order_history['products_price']; $new_product_price = $oCurrencies->display_price($order_history['products_price'], oos_get_tax_rate($order_history['products_tax_class_id'])); if (isset($order_history['specials_new_products_price'])) { $base_product_price = $order_history['specials_new_products_price']; $new_product_special_price = $oCurrencies->display_price($base_product_price, oos_get_tax_rate($order_history['products_tax_class_id'])); } if ($order_history['products_base_price'] != 1) { $new_base_product_price = $oCurrencies->display_price($base_product_price * $order_history['products_base_price'], oos_get_tax_rate($order_history['products_tax_class_id'])); } $order_min = number_format($order_history['products_quantity_order_min']); $order_max = number_format($order_history['products_quantity_order_max']); $aOrderHistory[] = array('id' => $order_history['products_id'], 'name' => $order_history['products_name'], 'image' => $order_history['products_image'], 'order_min' => $order_min, 'order_max' => $order_max, 'product_quantity' => $order_history['products_product_quantity'], 'new_product_price' => $new_product_price, 'new_product_special_price' => $new_product_special_price, 'new_base_product_price' => $new_base_product_price, 'products_base_price' => $order_history['products_base_price'], 'new_products_base_unit' => $order_history['products_base_unit'], 'products_units' => $order_history['products_units_id'], 'date_added' => $order_history['products_date_added'], 'manufacturer' => $order_history['manufacturers_name']); $order_history_result->MoveNext(); } // assign Smarty variables; $smarty->assign( array( 'page_split' => $order_history_split->display_count($aLang['text_display_number_of_products']), 'display_links' => $order_history_split->display_links(MAX_DISPLAY_PAGE_LINKS, oos_get_all_get_parameters(array('page', 'info'))), 'numrows' => $order_history_split->number_of_rows, 'numpages' => $order_history_split->number_of_pages, 'order_history' => $aOrderHistory ) ); } // links breadcrumb $oBreadcrumb->add($aLang['navbar_title'], oos_href_link($aContents['account_order_history'])); // assign Smarty variables; $smarty->assign( array( 'breadcrumb' => $oBreadcrumb->trail(), 'heading_title' => $aLang['heading_title'], 'robots' => 'noindex,nofollow,noodp,noydir', 'account_active' => 1, 'page' => $nPage ) ); $smarty->assign('pagination', $smarty->fetch($aTemplate['pagination'])); // display the template $smarty->display($aTemplate['page']);