function facetapi_token_values in Facet API 6.3
Implements hook_token_values().
File
- ./
facetapi.tokens.inc, line 57 - Builds placeholder replacement tokens for searches.
Code
function facetapi_token_values($type, $object = NULL, $options = array()) {
$values = array();
if ('facetapi_results' == $type && !empty($object)) {
$adapter = $object;
$values['keys'] = check_plain($adapter
->getSearchKeys());
$values['result-count'] = (int) $adapter
->getResultCount();
$values['page-number'] = (int) $adapter
->getPageNumber();
$values['page-limit'] = (int) $adapter
->getPageLimit();
$values['page-total'] = (int) $adapter
->getPageTotal();
$offset = ($adapter
->getPageNumber() - 1) * $adapter
->getPageLimit();
$values['offset'] = $offset;
$offset = ($adapter
->getPageNumber() - 1) * $adapter
->getPageLimit() + 1;
$values['start-count'] = $offset;
$page_max = $adapter
->getPageNumber() * $adapter
->getPageLimit();
$total_max = (int) $adapter
->getResultCount();
$values['end-count'] = min($page_max, $total_max);
}
elseif ('facetapi_active' == $type && !empty($object)) {
$item = $object;
$adapter = $item['adapter'];
$markup = $adapter
->getMappedValue($item['facets'][0], $item['value']);
$text = empty($markup['#html']) ? check_plain($markup['#value']) : $markup['#value'];
$values['active-value'] = $text;
$values['active-value-raw'] = check_plain($item['value']);
$values['active-pos'] = $item['pos'];
if ($facet = facetapi_facet_load($item['facets'][0], $adapter
->getSearcher())) {
$values['facet-label'] = check_plain($facet['label']);
}
$values['facet-name'] = check_plain($item['facets'][0]);
}
elseif ('facetapi_facet' == $type && !empty($object)) {
$facet = $object;
$values['facet-label'] = check_plain($facet['label']);
$values['facet-name'] = check_plain($facet['name']);
}
return $values;
}