diff --git a/admin/skins/default/templates/orders.index.php b/admin/skins/default/templates/orders.index.php index b5cd15ef1..e8b595776 100755 --- a/admin/skins/default/templates/orders.index.php +++ b/admin/skins/default/templates/orders.index.php @@ -35,6 +35,7 @@ {$THEAD.customer} {$THEAD.status} {$THEAD.date} + {$THEAD.updated} {$THEAD.total}   @@ -58,6 +59,7 @@ {$order.status} {$order.date} + {$order.updated} {$order.prod_total} diff --git a/admin/sources/orders.index.inc.php b/admin/sources/orders.index.inc.php index b17dcce90..a16e99e32 100755 --- a/admin/sources/orders.index.inc.php +++ b/admin/sources/orders.index.inc.php @@ -469,7 +469,7 @@ $GLOBALS['main']->addTabControl($lang['orders']['title_card_details'], 'credit_card'); $decrypt = Encryption::getInstance(); $decrypt->setup(false, $summary[0]['cart_order_id']); - $card = unserialize($decrypt->decrypt(stripslashes($summary[0]['offline_capture']))); + $card = unserialize((string)$decrypt->decrypt(stripslashes($summary[0]['offline_capture']))); $card = (!empty($card)) ? $card : array('card_type' => '', 'card_number' => '', 'card_expire' => '', 'card_valid' => '', 'card_issue' => '', 'card_cvv' => ''); foreach ($card as $key => $value) { @@ -831,6 +831,7 @@ 'customer' => $GLOBALS['db']->column_sort('customer', $lang['orders']['title_customer'], 'sort', $current_page, $_GET['sort']), 'status' => $GLOBALS['db']->column_sort('status', $lang['common']['status'], 'sort', $current_page, $_GET['sort']), 'date' => $GLOBALS['db']->column_sort('order_date', $lang['common']['date'], 'sort', $current_page, $_GET['sort']), + 'updated' => $GLOBALS['db']->column_sort('updated', $lang['common']['updated'], 'sort', $current_page, $_GET['sort']), 'total' => $GLOBALS['db']->column_sort('total', $lang['basket']['total'], 'sort', $current_page, $_GET['sort']) ); @@ -885,6 +886,7 @@ $order['status_class'] = 'order_status_'.$order['status']; $order['status'] = $lang['order_state']['name_'.$order['status']]; $order['date'] = formatTime($order['order_date']); + $order['updated'] = formatTime(strtotime($order['updated'])); $order['prod_total'] = Tax::getInstance()->priceFormat($order['total']); $smarty_data['list_orders'][] = $order; diff --git a/admin/sources/settings.logs.inc.php b/admin/sources/settings.logs.inc.php index 486a99b88..eb2395bbd 100755 --- a/admin/sources/settings.logs.inc.php +++ b/admin/sources/settings.logs.inc.php @@ -82,6 +82,13 @@ $log['item_link'] = ''; if(!empty($log['item_id']) && !empty($log['item_type'])) { switch($log['item_type']) { + case 'oid': + $item = $GLOBALS['db']->select('CubeCart_order_summary', array('cart_order_id'), array('cart_order_id' => $log['item_id'])); + if($item && !empty($item[0]['cart_order_id'])) { + $log['item_name'] = $item[0]['cart_order_id']; + $log['item_link'] = '?_g=orders&action=edit&order_id='.$log['item_id']; + } + break; case 'prod': $item = $GLOBALS['db']->select('CubeCart_inventory', array('name'), array('product_id' => $log['item_id'])); if($item && !empty($item[0]['name'])) { diff --git a/classes/acp.class.php b/classes/acp.class.php index 8490686a7..e9ccb3ede 100755 --- a/classes/acp.class.php +++ b/classes/acp.class.php @@ -162,6 +162,10 @@ public function adminLog($message) { $item_id = null; $item_type = null; + if(isset($_REQUEST['order_id'])) { + $item_id = $_REQUEST['order_id']; + $item_type = 'oid'; + } if(isset($_REQUEST['product_id'])) { $item_id = $_REQUEST['product_id']; $item_type = 'prod'; diff --git a/setup/db/install/structure.sql b/setup/db/install/structure.sql index 8ce35373f..c1b72bf19 100755 --- a/setup/db/install/structure.sql +++ b/setup/db/install/structure.sql @@ -60,7 +60,7 @@ CREATE TABLE IF NOT EXISTS `CubeCart_admin_log` ( `time` INT UNSIGNED NOT NULL, `ip_address` VARCHAR(45) NOT NULL, `description` TEXT NOT NULL, - `item_id` INT UNSIGNED NULL, + `item_id` VARCHAR(255) UNSIGNED NULL, `item_type` VARCHAR(4) NULL, PRIMARY KEY (`log_id`), KEY `admin_id` (`admin_id`), @@ -794,6 +794,7 @@ CREATE TABLE IF NOT EXISTS `CubeCart_order_summary` ( `note_to_customer` TEXT, `custom_oid` varchar(50) DEFAULT NULL, `currency` varchar(3) DEFAULT '', + `updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`), UNIQUE KEY `cart_order_id` (`cart_order_id`), UNIQUE KEY `custom_oid` (`custom_oid`), diff --git a/setup/db/upgrade/6.5.4.sql b/setup/db/upgrade/6.5.4.sql index d3b9e3159..923cb7f3c 100644 --- a/setup/db/upgrade/6.5.4.sql +++ b/setup/db/upgrade/6.5.4.sql @@ -18,4 +18,6 @@ ALTER TABLE `CubeCart_reviews` CHANGE `email` `email` VARCHAR(96); #EOQ ALTER TABLE `CubeCart_customer_coupon` CHANGE `email` `email` VARCHAR(96); #EOQ ALTER TABLE `CubeCart_admin_users` CHANGE `email` `email` VARCHAR(96); #EOQ ALTER TABLE `CubeCart_category_language` CHANGE `cat_desc` `cat_desc` TEXT NULL DEFAULT NULL; #EOQ -ALTER TABLE `CubeCart_inventory` CHANGE `maximum_quantity` `maximum_quantity` INT NULL DEFAULT '0'; #EOQ \ No newline at end of file +ALTER TABLE `CubeCart_inventory` CHANGE `maximum_quantity` `maximum_quantity` INT NULL DEFAULT '0'; #EOQ +ALTER TABLE `CubeCart_order_summary` ADD `updated` TIMESTAMP on update CURRENT_TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP; #EOQ +ALTER TABLE `CubeCart_admin_log` CHANGE `item_id` `item_id` VARCHAR(255) NULL DEFAULT NULL; #EOQ \ No newline at end of file