Jump to content

wyświetlanie kategorii ukrytej w module


Recommended Posts

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 by korni (see edit history)
Link to comment
Share on other sites

  • 4 weeks later...
×
×
  • Create New...