private function getBxFacets() { if ($this->bxFacets == null) { $this->bxFacets = $this->p13nHelper->getFacets(); } return $this->bxFacets; }
/** * Get applied to layer filter items * * @return Item[] */ public function getFilters() { try { if ($this->bxHelperData->isFilterLayoutEnabled($this->_layer)) { $category = $this->_categoryViewBlock->getCurrentCategory(); if ($category != null && $category->getDisplayMode() == \Magento\Catalog\Model\Category::DM_PAGE) { return parent::getFilters(); } $filters = array(); $facets = $this->p13nHelper->getFacets(); if ($facets) { foreach ($this->bxHelperData->getAllFacetFieldNames() as $fieldName) { if ($facets->isSelected($fieldName)) { $filter = $this->objectManager->create("Boxalino\\Intelligence\\Model\\LayerFilterItem"); $filter->setFacets($facets); $filter->setFieldName($fieldName); $filters[] = $filter; } } } return $filters; } return parent::getFilters(); } catch (\Exception $e) { $this->bxHelperData->setFallback(true); $this->_logger->critical($e); return parent::getFilters(); } }
/** * @return array|null */ public function getSliderValues() { $facets = $this->p13nHelper->getFacets(); if (empty($facets) || empty($facets->getFacetValues($facets->getPriceFieldName()))) { return null; } $priceRange = $this->explodePrice($facets->getPriceRanges()[0]); $selectedPrice = $this->getRequest()->getParam('bx_discountedPrice') !== null ? $this->explodePrice($this->getRequest()->getParam('bx_discountedPrice')) : $priceRange; if ($priceRange[0] == $priceRange[1]) { $priceRange[1]++; } return array_merge($selectedPrice, $priceRange); }
/** * @return array */ public function getTopFilters() { try { if ($this->bxHelperData->isFilterLayoutEnabled($this->layer) && $this->isTopFilterEnabled()) { $facets = $this->p13nHelper->getFacets(); if ($facets) { $fieldName = $this->bxHelperData->getTopFacetFieldName(); $attribute = $this->objectManager->create("Magento\\Catalog\\Model\\ResourceModel\\Eav\\Attribute"); $filter = $this->objectManager->create("Boxalino\\Intelligence\\Model\\Attribute", ['data' => ['attribute_model' => $attribute], 'layer' => $this->layer]); $filter->setFacets($facets); $filter->setFieldName($fieldName); return $filter->getItems(); } } } catch (\Exception $e) { $this->bxHelperData->setFallback(true); $this->_logger->critical($e); } return array(); }