Exemple #1
0
 public function getCount($filter, $range)
 {
     if (!Mage::helper('searchanise/ApiSe')->checkSearchaniseResult(true)) {
         return parent::getCount($filter, $range);
     }
     $collection = $filter->getLayer()->getProductCollection();
     if (!method_exists($collection, 'checkSearchaniseResult') || !$collection->checkSearchaniseResult()) {
         return parent::getCount($filter, $range);
     }
     return $collection->getSearchaniseRequest()->getCountAttributePrice($filter, $range);
 }
Exemple #2
0
 public function getCount($filter, $range)
 {
     if (method_exists($this, '_getFullPriceExpression')) {
         $select = $this->_getSelect($filter);
         $priceExpression = $this->_getFullPriceExpression($filter, $select);
         /**
          * Check and set correct variable values to prevent SQL-injections
          */
         $range = floatval($range);
         if ($range == 0) {
             $range = 1;
         }
         $countExpr = new Zend_Db_Expr('COUNT(distinct e.entity_id)');
         $rangeExpr = new Zend_Db_Expr("FLOOR(({$priceExpression}) / {$range}) + 1");
         $select->columns(array('range' => $rangeExpr, 'count' => $countExpr));
         $select->group($rangeExpr)->order("{$rangeExpr} ASC");
         return $this->_getReadAdapter()->fetchPairs($select);
     } else {
         return parent::getCount($filter, $range);
     }
 }