korni Posted April 22, 2014 Share Posted April 22, 2014 (edited) Witam, mam problem z wyświetleniem wszystkich kategorii w module homecategory.Kategorie wyświetlają się poprawnie, problem pojawia się przy stworzeniu kategorii ukrytej dla nowej grupy klientów. Przed zalogowaniem jest ok, po zalogowaniu na konto klienta z możliwością przeglądania kategorii ukrytych, pojawia mu się tylko ta kategoria, reszta z podglądu znika. Chciałbym aby ten moduł działał podobnie jak blok kategorii, czyli po prostu po zalogowaniu dołącza się ta jedna kategoria do pozostałych. Tutaj jest cały plik php modułu: <?php class Homecategories extends Module { private $_html = ''; private $_postErrors = array(); function __construct() { $this->name = 'homecategories'; $this->tab = 'front_office_features'; $this->version = 1.3; $this->author = 'John Stocks'; $this->need_instance = 0; parent::__construct(); // The parent construct is required for translations $this->page = basename(__FILE__, '.php'); $this->displayName = $this->l('Homepage Categories for v1.5'); $this->description = $this->l('Displays categories on your homepage'); } function install() { return (parent::install() AND $this->registerHook('home') AND $this->registerHook('header')); } public function hookHeader() { Tools::addCSS(($this->_path).'homecategories.css', 'all'); } function hookHome($params) { global $smarty, $cookie, $link; $shop_id = (int)$this->context->shop->id; $id_customer = (int)$params['cookie']->id_customer; $id_group = $id_customer ? Customer::getDefaultGroupId($id_customer) : _PS_DEFAULT_CUSTOMER_GROUP_; $id_lang = (int)$params['cookie']->id_lang; $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS(' SELECT c.*, cl.* FROM `'._DB_PREFIX_.'category` c LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.$id_lang.') LEFT JOIN `'._DB_PREFIX_.'category_group` cg ON (cg.`id_category` = c.`id_category`) WHERE level_depth > 1 And level_depth < 3 AND c.`active` = 1 AND cg.`id_group` = '.$id_group.' AND cl.`id_shop` = '.$shop_id.' ORDER BY `level_depth` ASC, cl.`name` ASC'); $category = new Category(1); $nb = intval(Configuration::get('HOME_categories_NBR')); global $link; $this->context->smarty->assign(array( 'categories' => $result, Category::getRootCategories(intval($params['cookie']->id_lang), true), 'link' => $link)); $this->context->smarty->assign(array( 'category' => $category, 'lang' => Language::getIsoById(intval($params['cookie']->id_lang)), )); return $this->display(__FILE__, 'homecategories.tpl'); } } Podejrzewam, że wystarczy zmienić zapytanie do bazy, ale nie wiem jak :/ Edited April 22, 2014 by korni (see edit history) Link to comment Share on other sites More sharing options...
karolwild Posted April 22, 2014 Share Posted April 22, 2014 Zobacz czy to pomoże. Klienci > edytuj klienta > dostęp grupowy : Zaznacz wszystkie opcje. Link to comment Share on other sites More sharing options...
korni Posted April 22, 2014 Author Share Posted April 22, 2014 Niestety, ale to nie to. Mam w lewej kolumnie blok kategorii i tam się poprawnie wyświetla, błąd musi znajdować się w module: Link to comment Share on other sites More sharing options...
elvispl Posted April 25, 2014 Share Posted April 25, 2014 Jaka wersja PS ? Link to comment Share on other sites More sharing options...
korni Posted April 28, 2014 Author Share Posted April 28, 2014 (edited) PrestaShop™ 1.5.4.1 Edited April 28, 2014 by korni (see edit history) Link to comment Share on other sites More sharing options...
korni Posted May 21, 2014 Author Share Posted May 21, 2014 Podbijam temat, ponieważ jednak samemu ciężko jest mi z tym sobie poradzić. musiałbym znać wyśmienicie wszystkie zapytania do bazy :/ Link to comment Share on other sites More sharing options...
Recommended Posts