From 0b7d689bf9b1f4d8c67af03f71e17caaa42f3164 Mon Sep 17 00:00:00 2001 From: rGaillard Date: Wed, 3 Oct 2012 09:42:30 +0000 Subject: [PATCH] // Fix #PSCFV-4380 --- classes/Combination.php | 19 ++++++++++++++++++- classes/Product.php | 5 ----- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/classes/Combination.php b/classes/Combination.php index 586ccab32..02a754c3f 100644 --- a/classes/Combination.php +++ b/classes/Combination.php @@ -108,6 +108,20 @@ class CombinationCore extends ObjectModel return false; return true; } + + public function add($autodate = true, $null_values = false) + { + if (!parent::add($autodate, $null_values)) + return false; + + $product = new Product((int)$this->id_product); + if ($product->getType() == Product::PTYPE_VIRTUAL) + StockAvailable::setProductOutOfStock((int)$this->id_product, 1, null, (int)$this->id); + else + StockAvailable::setProductOutOfStock((int)$this->id_product, StockAvailable::outOfStock((int)$this->id_product), null, $this->id); + + SpecificPriceRule::applyAllRules(array((int)$this->id_product)); + } public function deleteAssociations() { @@ -185,7 +199,10 @@ class CombinationCore extends ObjectModel public function setWsImages($values) { - return $this->setImages($values); + $ids_images = array(); + foreach ($values as $value) + $ids_images[] = (int)$value['id']; + return $this->setImages($ids_images); } public function getAttributesName($id_lang) diff --git a/classes/Product.php b/classes/Product.php index 0fb2de462..5eb3366d9 100644 --- a/classes/Product.php +++ b/classes/Product.php @@ -1133,11 +1133,6 @@ class ProductCore extends ObjectModel if (!$id_product_attribute || !$result) return false; - if ($this->getType() == Product::PTYPE_VIRTUAL) - StockAvailable::setProductOutOfStock((int)$this->id, 1, null, $id_product_attribute); - else - StockAvailable::setProductOutOfStock((int)$this->id, StockAvailable::outOfStock($this->id), null, $id_product_attribute); - SpecificPriceRule::applyAllRules(array((int)$this->id)); return $id_product_attribute; }