You are here

protected function SearchApiSolrService::formatFilterValue in Search API Solr 7

Format a value for filtering on a field of a specific type.

1 call to SearchApiSolrService::formatFilterValue()
SearchApiSolrService::createFilterQuery in includes/service.inc
Create a single search query string according to the given field, value and operator.

File

includes/service.inc, line 1939

Class

SearchApiSolrService
Search service class using Solr server.

Code

protected function formatFilterValue($value, $type) {
  switch ($type) {
    case 'boolean':
      $value = $value ? 'true' : 'false';
      break;
    case 'date':
      $value = is_numeric($value) ? (int) $value : strtotime($value);
      if ($value === FALSE) {
        return 0;
      }
      $value = format_date($value, 'custom', self::SOLR_DATE_FORMAT, 'UTC');
      break;
    case 'text':
      return '(' . call_user_func(array(
        $this
          ->getConnectionClass(),
        'escape',
      ), $value) . ')';
  }
  return call_user_func(array(
    $this
      ->getConnectionClass(),
    'phrase',
  ), $value);
}