function global_filter_create_proximity_widget in Views Global Filter 8
Same name and namespace in other branches
- 7 widgets/global_filter.proximitywidget.inc \global_filter_create_proximity_widget()
Create the proximity widget.
1 call to global_filter_create_proximity_widget()
- global_filter_create_widget in ./
global_filter.widgets.inc - Based on the requested or field-implied widget.
File
- widgets/
global_filter.proximitywidget.inc, line 11 - global_filter.proximitywidget.inc
Code
function global_filter_create_proximity_widget($filter_key, &$form, &$form_state) {
$name = $form_state['global_filters'][$filter_key]['name'];
$proximity = global_filter_get_session_value($name);
if (!empty($proximity) && is_object($proximity)) {
$location = $proximity->location;
$distance = $proximity->distance;
}
else {
$location = $distance = '';
}
if (isset($form_state['input']['distance'])) {
$distance = $form_state['input']['distance'];
}
if (isset($form_state['input']['location'])) {
$location = $form_state['input']['location'];
}
$form[$name] = array(
'#type' => 'fieldset',
'#element_validate' => array(
'global_filter_proximity_widget_validate',
),
);
$form[$name]['distance'] = array(
'#title' => t('Within '),
'#type' => 'textfield',
'#size' => 6,
'#maxlength' => 16,
'#default_value' => $distance,
);
$form[$name]['location'] = array(
'#title' => t('from'),
'#type' => 'textfield',
'#size' => 22,
'#maxlength' => 127,
'#default_value' => $location,
'#description' => t('Enter city or partial address'),
);
}