diff --git a/web/override/controllers/admin/AdminOrdersController.php b/web/override/controllers/admin/AdminOrdersController.php index 8ecd04ba..4d9fd8ed 100644 --- a/web/override/controllers/admin/AdminOrdersController.php +++ b/web/override/controllers/admin/AdminOrdersController.php @@ -37,15 +37,21 @@ class AdminOrdersController extends AdminOrdersControllerCore } if (Tools::isSubmit('submitShippingNumber') && isset($order)) { if ($this->tabAccess['edit'] == '1') { + $tracking_number = Tools::getValue('shipping_tracking_number'); $order_carrier = new OrderCarrier(Tools::getValue('id_order_carrier')); + if (!Validate::isLoadedObject($order_carrier)) { $this->errors[] = Tools::displayError('The order carrier ID is invalid.'); - } elseif (!Validate::isTrackingNumber(Tools::getValue('tracking_number'))) { + } elseif (!Validate::isTrackingNumber($tracking_number) && !empty($tracking_number)) { $this->errors[] = Tools::displayError('The tracking number is incorrect.'); } else { - $order->shipping_number = Tools::getValue('tracking_number'); + // update shipping number + // Keep these two following lines for backward compatibility, remove on 1.6 version + $order->shipping_number = $tracking_number; $order->update(); - $order_carrier->tracking_number = pSQL(Tools::getValue('tracking_number')); + + // Update order_carrier + $order_carrier->tracking_number = pSQL($tracking_number); if ($order_carrier->update()) { $customer = new Customer((int) $order->id_customer); $carrier = new Carrier((int) $order->id_carrier, $order->id_lang);