Example #1
0
 public function testClearExcludesForwarding()
 {
     $this->facet->addExclude('fq1');
     $this->facet->addExclude('fq2');
     $facetQuery = new Query();
     $facetQuery->setKey('k1');
     $facetQuery->setQuery('category:1');
     $this->facet->addQuery($facetQuery);
     $this->assertEquals(array('fq1', 'fq2'), $facetQuery->getExcludes());
     $this->facet->clearExcludes();
     $this->assertEquals(array(), $facetQuery->getExcludes());
 }
Example #2
0
 /**
  * Add a facet result for a multiquery facet
  *
  * @param  QueryFacetMultiQuery  $facet
  * @param  array                 $data
  * @return ResultFacetMultiQuery
  */
 protected function facetMultiQuery($facet, $data)
 {
     $values = array();
     foreach ($facet->getQueries() as $query) {
         $key = $query->getKey();
         if (isset($data['facet_counts']['facet_queries'][$key])) {
             $count = $data['facet_counts']['facet_queries'][$key];
             $values[$key] = $count;
         }
     }
     if (count($values) > 0) {
         return new ResultFacetMultiQuery($values);
     }
 }
Example #3
0
 /**
  * Add params for a multiquery facet to request
  *
  * @param  Request         $request
  * @param  FacetMultiQuery $facet
  * @return void
  */
 public function addFacetMultiQuery($request, $facet)
 {
     foreach ($facet->getQueries() as $facetQuery) {
         $this->addFacetQuery($request, $facetQuery);
     }
 }