From 674a8a554e1fc3e785b3bcd1c67fe947fd0dcfa6 Mon Sep 17 00:00:00 2001 From: dMetzger Date: Wed, 23 Nov 2011 08:39:49 +0000 Subject: [PATCH] // Avoid some crashes --- classes/AdminController.php | 2 +- classes/Cart.php | 44 ++++++++++++++++++------------------- classes/CartRule.php | 6 ++--- 3 files changed, 26 insertions(+), 26 deletions(-) diff --git a/classes/AdminController.php b/classes/AdminController.php index ea633297a..a54765d67 100644 --- a/classes/AdminController.php +++ b/classes/AdminController.php @@ -1716,7 +1716,7 @@ class AdminControllerCore extends Controller } else if ($submitted_action = Tools::getValue('submitAction'.$this->table)) $this->action = $submitted_action; - else if (Tools::getValue('submitAdd'.$this->table)) + else if (Tools::getValue('submitAdd'.$this->table) || Tools::getValue('submitAdd'.$this->table.'AndStay')) { // case 1: updating existing entry if ((int)(Tools::getValue('id_'.$this->table))) diff --git a/classes/Cart.php b/classes/Cart.php index 4ff5ee1b4..12d12804f 100644 --- a/classes/Cart.php +++ b/classes/Cart.php @@ -1629,30 +1629,30 @@ class CartCore extends ObjectModel $products = $product_list; // Checking discounts in cart - if (Discount::isFeatureActive()) - $discounts = $this->getDiscounts(true); - else - $discounts = null; - if ($discounts) - foreach ($discounts AS $id_discount) - if ($id_discount['id_discount_type'] == Discount::FREE_SHIPPING) - { - if ($id_discount['minimal'] > 0) - { - $total_cart = 0; + // if (Discount::isFeatureActive()) + // $discounts = $this->getDiscounts(true); + // else + // $discounts = null; + // if ($discounts) + // foreach ($discounts AS $id_discount) + // if ($id_discount['id_discount_type'] == Discount::FREE_SHIPPING) + // { + // if ($id_discount['minimal'] > 0) + // { + // $total_cart = 0; - $categories = Discount::getCategories((int)($id_discount['id_discount'])); - if (sizeof($categories)) - foreach($complete_product_list AS $product) - if (Product::idIsOnCategoryId((int)($product['id_product']), $categories)) - $total_cart += $product['total_wt']; + // $categories = Discount::getCategories((int)($id_discount['id_discount'])); + // if (sizeof($categories)) + // foreach($complete_product_list AS $product) + // if (Product::idIsOnCategoryId((int)($product['id_product']), $categories)) + // $total_cart += $product['total_wt']; - if ($total_cart >= $id_discount['minimal']) - return 0; - } - else - return 0; - } + // if ($total_cart >= $id_discount['minimal']) + // return 0; + // } + // else + // return 0; + // } // Order total in default currency without fees $order_total = $this->getOrderTotal(true, Cart::ONLY_PRODUCTS_WITHOUT_SHIPPING, $product_list); diff --git a/classes/CartRule.php b/classes/CartRule.php index 002b7a820..0672d9d2a 100644 --- a/classes/CartRule.php +++ b/classes/CartRule.php @@ -154,7 +154,7 @@ class CartRuleCore extends ObjectModel Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'cart_rule_carrier` WHERE `id_cart_rule` = '.(int)$this->id); Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'cart_rule_group` WHERE `id_cart_rule` = '.(int)$this->id); Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'cart_rule_country` WHERE `id_cart_rule` = '.(int)$this->id); - Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'cart_rule_cart_rule` WHERE `id_cart_rule_1` = '.(int)$this->id.' OR `id_cart_rule_2` = '.(int)$this->id); + Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'cart_rule_combination` WHERE `id_cart_rule_1` = '.(int)$this->id.' OR `id_cart_rule_2` = '.(int)$this->id); Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'cart_rule_product_rule` WHERE `id_cart_rule` = '.(int)$this->id); Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'cart_rule_product_rule_value` WHERE `id_product_rule` NOT IN (SELECT `id_product_rule` FROM `'._DB_PREFIX_.'cart_rule_product_rule`)'); } @@ -171,8 +171,8 @@ class CartRuleCore extends ObjectModel INSERT INTO `'._DB_PREFIX_.'cart_rule_country` (`id_cart_rule`, `id_country`) (SELECT '.(int)$id_cart_rule_destination.', id_country FROM `'._DB_PREFIX_.'cart_rule_country` WHERE `id_cart_rule` = '.(int)$id_cart_rule_source.')'); Db::getInstance()->Execute(' - INSERT INTO `'._DB_PREFIX_.'cart_rule_cart_rule` (`id_cart_rule_1`, `id_cart_rule_2`) - (SELECT '.(int)$id_cart_rule_destination.', IF(id_cart_rule_1 != '.(int)$id_cart_rule_source.', id_cart_rule_1, id_cart_rule_2) FROM `'._DB_PREFIX_.'cart_rule_cart_rule` + INSERT INTO `'._DB_PREFIX_.'cart_rule_combination` (`id_cart_rule_1`, `id_cart_rule_2`) + (SELECT '.(int)$id_cart_rule_destination.', IF(id_cart_rule_1 != '.(int)$id_cart_rule_source.', id_cart_rule_1, id_cart_rule_2) FROM `'._DB_PREFIX_.'cart_rule_combination` WHERE `id_cart_rule_1` = '.(int)$id_cart_rule_source.' OR `id_cart_rule_2` = '.(int)$id_cart_rule_source.')'); // Todo : should be changed soon, be must be copied too