// Fix on discounts with multishop + index?controller=index fixed to be only index.php
This commit is contained in:
+1
-1
@@ -1322,7 +1322,7 @@ class CartCore extends ObjectModel
|
|||||||
return Tools::displayError('This voucher is not yet valid');
|
return Tools::displayError('This voucher is not yet valid');
|
||||||
if (strtotime($discountObj->date_to) < time())
|
if (strtotime($discountObj->date_to) < time())
|
||||||
return Tools::displayError('This voucher has expired.');
|
return Tools::displayError('This voucher has expired.');
|
||||||
if (!$discountObj->availableWithShop($shop))
|
if (!$discountObj->isAssociatedToShop($shop))
|
||||||
return Tools::displayError('This voucher is not available with this shop.');
|
return Tools::displayError('This voucher is not available with this shop.');
|
||||||
if (sizeof($discounts) >= 1 AND $checkCartDiscount)
|
if (sizeof($discounts) >= 1 AND $checkCartDiscount)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -483,18 +483,4 @@ class DiscountCore extends ObjectModel
|
|||||||
{
|
{
|
||||||
return Db::getInstance()->getRow('SELECT * FROM `'._DB_PREFIX_.'discount` WHERE `id_discount` = '.(int)$id_discount);
|
return Db::getInstance()->getRow('SELECT * FROM `'._DB_PREFIX_.'discount` WHERE `id_discount` = '.(int)$id_discount);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function availableWithShop(Shop $shop = null)
|
|
||||||
{
|
|
||||||
if (!$shop)
|
|
||||||
$shop = Context::getContext()->shop;
|
|
||||||
|
|
||||||
// @todo share datas on discount ? Utility of this function ?
|
|
||||||
$sql = 'SELECT id_discount
|
|
||||||
FROM '._DB_PREFIX_.'discount
|
|
||||||
WHERE id_discount = '.(int)$this->id
|
|
||||||
.$shop->sqlRestriction(false);
|
|
||||||
return Db::getInstance()->getValue($sql);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -190,6 +190,8 @@ class DispatcherCore
|
|||||||
// Get and instantiate controller
|
// Get and instantiate controller
|
||||||
$this->getController();
|
$this->getController();
|
||||||
$controllers = Dispatcher::getControllers();
|
$controllers = Dispatcher::getControllers();
|
||||||
|
if (!$this->controller)
|
||||||
|
$this->controller = 'index';
|
||||||
if (!isset($controllers[$this->controller]))
|
if (!isset($controllers[$this->controller]))
|
||||||
$this->controller = 'pagenotfound';
|
$this->controller = 'pagenotfound';
|
||||||
ControllerFactory::getController($controllers[$this->controller])->run();
|
ControllerFactory::getController($controllers[$this->controller])->run();
|
||||||
@@ -323,7 +325,7 @@ class DispatcherCore
|
|||||||
if (!isset($this->routes[$routeID]))
|
if (!isset($this->routes[$routeID]))
|
||||||
{
|
{
|
||||||
$query = http_build_query($params);
|
$query = http_build_query($params);
|
||||||
return 'index.php?controller='.$routeID.(($query) ? '&'.$query : '');
|
return ($routeID == 'index') ? 'index.php'.(($query) ? '?'.$query : '') : 'index.php?controller='.$routeID.(($query) ? '&'.$query : '');
|
||||||
}
|
}
|
||||||
$route = $this->routes[$routeID];
|
$route = $this->routes[$routeID];
|
||||||
|
|
||||||
@@ -408,7 +410,7 @@ class DispatcherCore
|
|||||||
}
|
}
|
||||||
// Default mode, take controller from url
|
// Default mode, take controller from url
|
||||||
else
|
else
|
||||||
$this->controller = (!empty($controller)) ? $controller : 'index';
|
$this->controller = $controller;
|
||||||
|
|
||||||
$this->controller = str_replace('-', '', strtolower($this->controller));
|
$this->controller = str_replace('-', '', strtolower($this->controller));
|
||||||
return $this->controller;
|
return $this->controller;
|
||||||
|
|||||||
Reference in New Issue
Block a user