public function handleRequest(Request $request, Criteria $criteria, ShopContextInterface $context)
 {
     $minSales = $request->getParam('minSales', null);
     $maxSales = $request->getParam('maxSales', null);
     if ($minSales || $maxSales) {
         $criteria->addCondition(new SalesCondition($minSales, $maxSales));
     }
     $criteria->addFacet(new SalesFacet());
     if ($request->getParams('sSort') == 'sales') {
         $criteria->resetSorting();
         $criteria->addSorting(new SalesSorting());
     }
 }
 /**
  * @inheritdoc
  */
 public function handleRequest(Request $request, Criteria $criteria, ShopContextInterface $context)
 {
     /*
      * Checks if the filter is active
      */
     if ($request->has('productAttributesForm')) {
         $params = $request->getParams();
         $searchParams = explode('|', $params['productAttributesForm']);
         $criteria->addCondition(new ProductAttributeCondition('attr1', ProductAttributeCondition::OPERATOR_IN, $searchParams));
     }
     /**
      * adds the attributes facet
      */
     $criteria->addFacet(new ProductAttributeFacet('attr1', ProductAttributeFacet::MODE_VALUE_LIST_RESULT, 'productAttributesForm', 'attributes'));
 }
Example #3
0
 /**
  * @param $categoryId
  * @param Enlight_Controller_Request_RequestHttp $request
  * @return string
  */
 private function buildCategoryLink($categoryId, Enlight_Controller_Request_RequestHttp $request)
 {
     $params = $this->queryAliasMapper->replaceLongParams($request->getParams());
     unset($params['ordernumber']);
     unset($params['categoryId']);
     unset($params['module']);
     unset($params['controller']);
     unset($params['action']);
     $params = array_merge($params, ['sViewport' => 'cat', 'sCategory' => $categoryId]);
     $queryPrams = http_build_query($params, null, '&');
     $listingLink = $this->config->get('sBASEFILE') . "?" . $queryPrams;
     return $listingLink;
 }