Пример #1
0
 public function testClearExcludesForwarding()
 {
     $this->_facet->addExclude('fq1');
     $this->_facet->addExclude('fq2');
     $facetQuery = new Solarium_Query_Select_Component_Facet_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());
 }
Пример #2
0
 /**
  * Add a facet result for a multiquery facet
  *
  * @param Solarium_Query_Select_Component_Facet_MultiQuery $facet
  * @param array $data
  * @return void
  */
 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 Solarium_Result_Select_Facet_MultiQuery($values);
     }
 }
Пример #3
0
 /**
  * Add params for a multiquery facet to request
  *
  * @param Solarium_Client_Request $request
  * @param Solarium_Query_Select_Component_Facet_MultiQuery $facet
  * @return void
  */
 public function addFacetMultiQuery($request, $facet)
 {
     foreach ($facet->getQueries() as $facetQuery) {
         $this->addFacetQuery($request, $facetQuery);
     }
 }