// Code cleaning and small fixes
This commit is contained in:
+3
-7
@@ -1459,7 +1459,7 @@ class CartCore extends ObjectModel
|
||||
$in_order = true;
|
||||
else
|
||||
foreach ($products as $product)
|
||||
if ($cart_rule['obj']->gift_product == $product['id_product'] && $cart_rule['obj']->gift_product_attribute = $product['id_product_attribute'])
|
||||
if ($cart_rule['obj']->gift_product == $product['id_product'] && $cart_rule['obj']->gift_product_attribute == $product['id_product_attribute'])
|
||||
$in_order = true;
|
||||
|
||||
if ($in_order)
|
||||
@@ -1469,12 +1469,8 @@ class CartCore extends ObjectModel
|
||||
// If the cart rule offers a reduction, the amount is prorated (with the products in the package)
|
||||
if ($cart_rule['obj']->reduction_percent > 0 || $cart_rule['obj']->reduction_amount > 0)
|
||||
{
|
||||
$package = null;
|
||||
if (!is_null($products))
|
||||
{
|
||||
$id_address_delivery = (is_null($products) ? $this->id_address_delivery : $products[0]['id_address_delivery']);
|
||||
$package = array('id_address' => $id_address_delivery, 'products' => $products);
|
||||
}
|
||||
$id_address_delivery = (is_null($products) ? $this->id_address_delivery : $products[0]['id_address_delivery']);
|
||||
$package = array('id_address' => $id_address_delivery, 'products' => $products);
|
||||
$order_total_discount += Tools::ps_round($cart_rule['obj']->getContextualValue($with_taxes, $virtual_context, CartRule::FILTER_ACTION_REDUCTION, $package), 2);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -882,10 +882,14 @@ class CartRuleCore extends ObjectModel
|
||||
if ($product['id_product'] == $this->gift_product && $product['id_product_attribute'] == $this->gift_product_attribute)
|
||||
{
|
||||
// The free gift coupon must be applied to one product only (needed for multi-shipping which manage multiple product lists)
|
||||
if (!isset(CartRule::$only_one_gift[$this->id.'-'.$this->gift_product]) || CartRule::$only_one_gift[$this->id.'-'.$this->gift_product] == $id_address)
|
||||
if (!isset(CartRule::$only_one_gift[$this->id.'-'.$this->gift_product])
|
||||
|| CartRule::$only_one_gift[$this->id.'-'.$this->gift_product] == $id_address
|
||||
|| CartRule::$only_one_gift[$this->id.'-'.$this->gift_product] == 0
|
||||
|| $id_address == 0)
|
||||
{
|
||||
$reduction_value += ($useTax ? $product['price_wt'] : $product['price']);
|
||||
CartRule::$only_one_gift[$this->id.'-'.$this->gift_product] = $id_address;
|
||||
if (!isset(CartRule::$only_one_gift[$this->id.'-'.$this->gift_product]) || CartRule::$only_one_gift[$this->id.'-'.$this->gift_product] == 0)
|
||||
CartRule::$only_one_gift[$this->id.'-'.$this->gift_product] = $id_address;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user