function bef_replace_query_string_arg in Better Exposed Filters 6.3
Same name and namespace in other branches
- 8.3 better_exposed_filters.theme \bef_replace_query_string_arg()
- 6 better_exposed_filters.theme \bef_replace_query_string_arg()
- 6.2 better_exposed_filters.theme \bef_replace_query_string_arg()
- 7.3 better_exposed_filters.theme \bef_replace_query_string_arg()
- 7 better_exposed_filters.theme \bef_replace_query_string_arg()
Replaces/adds a given query string argument to the current URL
Parameters
string $key query string key (argument):
string $value query string value:
bool $multiple TRUE if this key/value pair allows multiple values:
1 call to bef_replace_query_string_arg()
- theme_select_as_links in ./
better_exposed_filters.theme - Themes a select drop-down as a collection of links
File
- ./
better_exposed_filters.theme, line 428
Code
function bef_replace_query_string_arg($key, $value, $multiple = FALSE) {
$path = arg();
$urllist = parse_url(request_uri());
$fragment = urldecode($urllist['fragment']);
$query = array();
parse_str(urldecode($urllist['query']), $query);
if (is_array($query[$key])) {
// multiple values allowed for this key
$query[$key][] = $value;
}
else {
if ($multiple) {
$query[$key] = array(
$value,
);
}
else {
$query[$key] = $value;
}
}
return url(implode('/', $path), array(
'query' => drupal_query_string_encode($query),
'fragment' => $fragment,
'absolute' => TRUE,
));
}