public function testSetFields() { $this->facet->clearFields(); $this->facet->addFields(array('field1', 'field2')); $this->facet->setFields(array('field3', 'field4')); $this->assertEquals(array('field3', 'field4'), $this->facet->getFields()); }
/** * Add a facet result for a range facet * * @param Query $query * @param QueryFacetPivot $facet * @param array $data * @return ResultFacetPivot */ protected function facetPivot($query, $facet, $data) { $key = implode(',', $facet->getFields()); if (isset($data['facet_counts']['facet_pivot'][$key])) { $data = $data['facet_counts']['facet_pivot'][$key]; return new ResultFacetPivot($data); } }
/** * Add params for a range facet to request * * @param Request $request * @param FacetPivot $facet * @return void */ public function addFacetPivot($request, $facet) { $request->addParam('facet.pivot', $this->renderLocalParams(implode(',', $facet->getFields()), array('key' => $facet->getKey(), 'ex' => $facet->getExcludes()))); $request->addParam('facet.pivot.mincount', $facet->getMinCount(), true); }
/** * Add params for a range facet to request * * @param Request $request * @param FacetPivot $facet * @return void */ public function addFacetPivot($request, $facet) { $stats = $facet->getStats(); if (count($stats) > 0) { $key = array('stats' => implode('', $stats)); // when specifying stats, solr sets the field as key $facet->setKey(implode(',', $facet->getFields())); } else { $key = array('key' => $facet->getKey()); } $request->addParam('facet.pivot', $this->renderLocalParams(implode(',', $facet->getFields()), array_merge($key, array('ex' => $facet->getExcludes())))); $request->addParam('facet.pivot.mincount', $facet->getMinCount(), true); }
/** * Add params for a range facet to request * * @param Request $request * @param FacetPivot $facet * @return void */ public function addFacetPivot($request, $facet) { $request->addParam('facet.pivot', implode(',', $facet->getFields())); $request->addParam('facet.pivot.mincount', $facet->getMinCount(), true); }