// minor notice fix when new order, related to OrderHistory::getLastOrderState() returning false instead of an object
This commit is contained in:
@@ -80,12 +80,16 @@ class OrderHistoryCore extends ObjectModel
|
|||||||
foreach ($order->getProductsDetail() as $product)
|
foreach ($order->getProductsDetail() as $product)
|
||||||
{
|
{
|
||||||
/* If becoming logable => adding sale */
|
/* If becoming logable => adding sale */
|
||||||
if ($newOS->logable AND (!$oldOrderStatus OR !$oldOrderStatus->logable))
|
if ($newOS->logable
|
||||||
|
&& $oldOrderStatus instanceof OrderHistory
|
||||||
|
&& $oldOrderStatus->logable)
|
||||||
{
|
{
|
||||||
ProductSale::addProductSale($product['product_id'], $product['product_quantity']);
|
ProductSale::addProductSale($product['product_id'], $product['product_quantity']);
|
||||||
}
|
}
|
||||||
/* If becoming unlogable => removing sale */
|
/* If becoming unlogable => removing sale */
|
||||||
else if (!$newOS->logable AND ($oldOrderStatus AND $oldOrderStatus->logable))
|
else if (!$newOS->logable
|
||||||
|
&& $oldOrderStatus instanceof OrderHistory
|
||||||
|
&& $oldOrderStatus->logable)
|
||||||
{
|
{
|
||||||
ProductSale::removeProductSale($product['product_id'], $product['product_quantity']);
|
ProductSale::removeProductSale($product['product_id'], $product['product_quantity']);
|
||||||
// @since 1.5.0
|
// @since 1.5.0
|
||||||
@@ -95,8 +99,7 @@ class OrderHistoryCore extends ObjectModel
|
|||||||
if ((!Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT') || (int)$product['advanced_stock_management'] != 1)
|
if ((!Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT') || (int)$product['advanced_stock_management'] != 1)
|
||||||
&& !$isValidated
|
&& !$isValidated
|
||||||
&& $newOS->logable
|
&& $newOS->logable
|
||||||
&& isset($oldOrderStatus)
|
&& $oldOrderStatus instanceof OrderHistory
|
||||||
&& $oldOrderStatus
|
|
||||||
&& $oldOrderStatus->id == Configuration::get('PS_OS_ERROR')
|
&& $oldOrderStatus->id == Configuration::get('PS_OS_ERROR')
|
||||||
)
|
)
|
||||||
StockAvailable::updateQuantity($product['product_id'], $product['product_attribute_id'], (int)$product['product_quantity'], $order->id_shop);
|
StockAvailable::updateQuantity($product['product_id'], $product['product_attribute_id'], (int)$product['product_quantity'], $order->id_shop);
|
||||||
@@ -105,6 +108,7 @@ class OrderHistoryCore extends ObjectModel
|
|||||||
// The product is removed from the physical stock. $id_warehouse is needed
|
// The product is removed from the physical stock. $id_warehouse is needed
|
||||||
// @TODO Checks $id_warehouse
|
// @TODO Checks $id_warehouse
|
||||||
else if ($newOS->shipped == 1
|
else if ($newOS->shipped == 1
|
||||||
|
&& $oldOrderStatus instanceof OrderHistory
|
||||||
&& $oldOrderStatus->shipped == 0
|
&& $oldOrderStatus->shipped == 0
|
||||||
&& Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT')
|
&& Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT')
|
||||||
&& (int)$product['advanced_stock_management'] == 1
|
&& (int)$product['advanced_stock_management'] == 1
|
||||||
@@ -129,6 +133,7 @@ class OrderHistoryCore extends ObjectModel
|
|||||||
StockAvailable::updateQuantity($product['product_id'], $product['product_attribute_id'], -(int)$product['product_quantity'], $order->id_shop);
|
StockAvailable::updateQuantity($product['product_id'], $product['product_attribute_id'], -(int)$product['product_quantity'], $order->id_shop);
|
||||||
}
|
}
|
||||||
else if ($newOS->shipped == 0
|
else if ($newOS->shipped == 0
|
||||||
|
&& $oldOrderStatus instanceof OrderHistory
|
||||||
&& $oldOrderStatus->shipped == 1
|
&& $oldOrderStatus->shipped == 1
|
||||||
&& Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT')
|
&& Configuration::get('PS_ADVANCED_STOCK_MANAGEMENT')
|
||||||
&& (int)$product['advanced_stock_management'] == 1
|
&& (int)$product['advanced_stock_management'] == 1
|
||||||
|
|||||||
Reference in New Issue
Block a user