function flexiform_handler_filter_tags::value_form in Flexiform 7
Options form subform for setting options.
This should be overridden by all child classes and it must define $form['value'].
Overrides views_handler_filter_many_to_one::value_form
See also
options_form()
File
- includes/
views/ handlers/ flexiform_handler_filter_tags.inc, line 31 - Contains handler for tags filter on flexiform views.
Class
- flexiform_handler_filter_tags
- @file Contains handler for tags filter on flexiform views.
Code
function value_form(&$form, &$form_state) {
if ($this->options['type'] == 'textfield') {
$default = '';
if ($this->value) {
$default = drupal_implode_tags($this->value);
}
$form['value'] = array(
'#title' => t('Select tags'),
'#type' => 'textfield',
'#default_value' => $default,
'#autocomplete_path' => 'admin/structure/flexiforms/autocomplete_tags',
);
}
else {
$options = array();
$query = db_select('flexiform_tags', 'ft');
$query
->distinct()
->addField('ft', 'tag', 'tag');
$result = $query
->execute()
->fetchCol();
$options = drupal_map_assoc($result);
$default_value = (array) $this->value;
$form['value'] = array(
'#type' => 'select',
'#title' => t('Select tags'),
'#multiple' => TRUE,
'#options' => $options,
'#size' => min(4, count($options)),
'#default_value' => $default_value,
);
}
}