예제 #1
0
 /**
  * Get geo field values for all search results
  *
  * @return array
  */
 public function getSearchResultCoordinates()
 {
     $result = [];
     $params = $this->searchFilters;
     // Check to makes sure we have a geographic search
     if (strpos($params->get('fq')[0], $this->geoField) !== false) {
         $params->mergeWith($this->queryBuilder->build($this->searchQuery));
         $params->set('fl', 'id, ' . $this->geoField . ', title');
         $params->set('wt', 'json');
         $params->set('rows', '10000000');
         // set to return all results
         $response = json_decode($this->solrConnector->search($params));
         foreach ($response->response->docs as $current) {
             $result[] = [$current->id, $current->{$this->geoField}, $current->title];
         }
     }
     return $result;
 }