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()); }
/** * 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); } }
/** * 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); } }