You are here

function search_api_facetapi_date_get_granularity in Search API 7

Computes the granularity of a date facet filter.

Parameters

$filter: The filter value to examine.

Return value

string|null Either one of the FACETAPI_DATE_* constants corresponding to the granularity of the filter, or NULL if it couldn't be computed.

2 calls to search_api_facetapi_date_get_granularity()
SearchApiFacetapiDate::build in contrib/search_api_facetapi/plugins/facetapi/query_type_date.inc
Initializes the facet's build array.
search_api_facetapi_map_date in contrib/search_api_facetapi/search_api_facetapi.module
Constructs labels for date facet filter values.

File

contrib/search_api_facetapi/search_api_facetapi.module, line 606
Integrates the Search API with the Facet API.

Code

function search_api_facetapi_date_get_granularity($filter) {

  // Granularity corresponds to number of dashes in filter value.
  $units = array(
    FACETAPI_DATE_YEAR,
    FACETAPI_DATE_MONTH,
    FACETAPI_DATE_DAY,
    FACETAPI_DATE_HOUR,
    FACETAPI_DATE_MINUTE,
    FACETAPI_DATE_SECOND,
  );
  $count = substr_count($filter, '-');
  return isset($units[$count]) ? $units[$count] : NULL;
}