/** * Get filter values * * @return array */ protected function getFilterValues() { $filterValues = array(); if ('category_filter' == $this->getTarget()) { $cellName = \XLite\Module\XC\ProductFilter\View\ItemsList\Product\Customer\Category\CategoryFilter::getSessionCellName(); $filterValues = \XLite\Core\Session::getInstance()->{$cellName}; $filterValues = is_array($filterValues) && isset($filterValues['filter']) && is_array($filterValues['filter']) ? $filterValues['filter'] : array(); } return $filterValues; }
/** * Do action filter * * @return void */ protected function doActionFilter() { $sessionCell = $this->isAJAX() ? \XLite\Module\XC\ProductFilter\View\ItemsList\Product\Customer\Category\CategoryFilter::getSessionCellName() : \XLite\View\ItemsList\Product\Customer\Category\Main::getSessionCellName(); $data = \XLite\Core\Session::getInstance()->{$sessionCell}; if (!is_array($data)) { $data = array(); } $data['filter'] = \XLite\Core\Request::getInstance()->filter; if (!$this->isAJAX()) { $sessionCell = \XLite\Module\XC\ProductFilter\View\ItemsList\Product\Customer\Category\CategoryFilter::getSessionCellName(); } \XLite\Core\Session::getInstance()->{$sessionCell} = $data; $this->setReturnURL($this->buildURL('category_filter', '', array('category_id' => \XLite\Core\Request::getInstance()->category_id))); }
/** * Define data for getDataString() method * * @return array */ protected function defineDataForDataString() { $list = parent::defineDataForDataString(); $list['parameters']['category_id'] = \XLite\Core\Request::getInstance()->category_id; return $list; }