From 489fd28012b62c27cabdb5ebb4cf11e95b656fd0 Mon Sep 17 00:00:00 2001 From: "(d)oekia" Date: Mon, 26 Nov 2012 14:11:35 +0100 Subject: [PATCH] [-] FO: PSCFV-4181: pruneoff unavailable products --- controllers/front/CompareController.php | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/controllers/front/CompareController.php b/controllers/front/CompareController.php index 16aae6a1b..e655d42f3 100644 --- a/controllers/front/CompareController.php +++ b/controllers/front/CompareController.php @@ -106,21 +106,24 @@ class CompareControllerCore extends FrontController if (!$curProduct->active || !$curProduct->isAssociatedToShop()) { unset($ids[$k]); - continue; - } - - if (!$curProduct->active || !$curProduct->isAssociatedToShop()) - { - unset($ids[$k]); + if (isset($this->context->cookie->id_compare)) + CompareProduct::removeCompareProduct($this->context->cookie->id_compare, $id); continue; } if (!Validate::isLoadedObject($curProduct)) + { + unset($ids[$k]); + if (isset($this->context->cookie->id_compare)) + CompareProduct::removeCompareProduct($this->context->cookie->id_compare, $id); continue; + } if (!$curProduct->active) { unset($ids[$k]); + if (isset($this->context->cookie->id_compare)) + CompareProduct::removeCompareProduct($this->context->cookie->id_compare, $id); continue; } @@ -149,11 +152,17 @@ class CompareControllerCore extends FrontController )); $this->context->smarty->assign('HOOK_EXTRA_PRODUCT_COMPARISON', Hook::exec('displayProductComparison', array('list_ids_product' => $ids))); } + else if (isset($this->context->cookie->id_compare)) + { + $object = new CompareProduct((int)$this->context->cookie->id_compare); + if (Validate::isLoadedObject($object)) + $object->delete(); + } } } $this->context->smarty->assign('hasProduct', $hasProduct); $this->setTemplate(_PS_THEME_DIR_.'products-comparison.tpl'); } -} - + +} \ No newline at end of file