diff --git a/classes/Hook.php b/classes/Hook.php index 6f5c10bc3..9fd96dece 100644 --- a/classes/Hook.php +++ b/classes/Hook.php @@ -257,6 +257,10 @@ class HookCore extends ObjectModel $shop_list = Shop::getContextListShopID(); if (isset($context->customer) && $context->customer->isLogged()) $groups = $context->customer->getGroups(); + elseif (isset($context->customer) && $context->customer->isLogged(true)) + $groups = array((int)Configuration::get('PS_GUEST_GROUP')); + else + $groups = array((int)Configuration::get('PS_UNIDENTIFIED_GROUP')); } // SQL Request @@ -274,7 +278,7 @@ class HookCore extends ObjectModel if (Validate::isLoadedObject($context->shop)) $sql->where('hm.id_shop = '.(int)$context->shop->id); - if (isset($context->customer) && $context->customer->isLogged()) + if ($frontend) { $sql->leftJoin('module_group', 'mg', 'mg.`id_module` = m.`id_module`'); $sql->where('mg.`id_group` IN ('.implode(', ', $groups).')'); diff --git a/classes/module/Module.php b/classes/module/Module.php index 68372f7c3..24a3d32c4 100644 --- a/classes/module/Module.php +++ b/classes/module/Module.php @@ -589,7 +589,7 @@ abstract class ModuleCore public function disable($forceAll = false) { // Disable module for all shops - $sql = 'DELETE FROM `'._DB_PREFIX_.'module_shop` WHERE `id_module` = '.$this->id.' '.((!$forceAll) ? ' AND `id_shop` IN('.implode(', ', Shop::getContextListShopID()).')' : ''); + $sql = 'DELETE FROM `'._DB_PREFIX_.'module_shop` WHERE `id_module` = '.(int)$this->id.' '.((!$forceAll) ? ' AND `id_shop` IN('.implode(', ', Shop::getContextListShopID()).')' : ''); Db::getInstance()->execute($sql); }