You are here

public function views_handler_filter::operator_form in Views (for Drupal 7) 7.3

Same name and namespace in other branches
  1. 6.3 handlers/views_handler_filter.inc \views_handler_filter::operator_form()
  2. 6.2 handlers/views_handler_filter.inc \views_handler_filter::operator_form()

Options form subform for setting the operator.

This may be overridden by child classes, and it must define $form['operator'].

See also

options_form()

3 calls to views_handler_filter::operator_form()
views_handler_filter::build_group_form in handlers/views_handler_filter.inc
Build the form to let users create the group of exposed filters.
views_handler_filter::exposed_form in handlers/views_handler_filter.inc
Render our chunk of the exposed filter form when selecting.
views_handler_filter::show_operator_form in handlers/views_handler_filter.inc
Shortcut to display the operator form.
6 methods override views_handler_filter::operator_form()
views_handler_filter_boolean_operator::operator_form in handlers/views_handler_filter_boolean_operator.inc
Options form subform for setting the operator.
views_handler_filter_node_access::operator_form in modules/node/views_handler_filter_node_access.inc
Options form subform for setting the operator.
views_handler_filter_node_status::operator_form in modules/node/views_handler_filter_node_status.inc
Options form subform for setting the operator.
views_handler_filter_node_tnid::operator_form in modules/translation/views_handler_filter_node_tnid.inc
Provide simple boolean operator.
views_handler_filter_node_tnid_child::operator_form in modules/translation/views_handler_filter_node_tnid_child.inc
Options form subform for setting the operator.

... See full list

File

handlers/views_handler_filter.inc, line 307
Definitions of views_handler_filter and views_handler_filter_broken.

Class

views_handler_filter
Base class for filters.

Code

public function operator_form(&$form, &$form_state) {
  $options = $this
    ->operator_options();
  if (!empty($options)) {
    $available = $this->options['expose']['available_operators'];
    if ($this->options['expose']['limit_operators'] && count($available)) {
      foreach ($options as $key => $value) {
        if (!isset($available[$key])) {
          unset($options[$key]);
        }
      }

      // Make sure we have a valid default value if the current one is
      // excluded.
      if (!isset($options[$this->operator])) {

        // Just choose the first.
        $this->operator = key($options);
      }
    }
    $form['operator'] = array(
      '#type' => count($options) < 10 ? 'radios' : 'select',
      '#title' => t('Operator'),
      '#default_value' => $this->operator,
      '#options' => $options,
    );
  }
}