You are here

views_handler_field_group_by_numeric.inc in Views (for Drupal 7) 6.3

File

handlers/views_handler_field_group_by_numeric.inc
View source
<?php

/**
 * Handler for GROUP BY on simple numeric fields.
 */
class views_handler_field_group_by_numeric extends views_handler_field_numeric {
  function init(&$view, $options) {
    parent::init($view, $options);

    // Initialize the original handler.
    $this->handler = views_get_handler($options['table'], $options['field'], 'field');
    $this->handler
      ->init($view, $options);
  }

  /**
   * Called to add the field to a query.
   */
  function query() {
    $this
      ->ensure_my_table();

    // Add the field, taking care of any aggregation that may affect it.
    $params = array(
      'function' => $this->options['group_type'],
    );
    $this->field_alias = $this->query
      ->add_field($this->table_alias, $this->real_field, NULL, $params);
    $this
      ->add_additional_fields();
  }

  /**
   * Called to determine what to tell the clicksorter.
   */
  function click_sort($order) {
    $params = array(
      'function' => $this->options['group_type'],
    );
    $this->query
      ->add_orderby($this->table, $this->field, $order, $this->field_alias, $params);
  }
  function ui_name($short = FALSE) {
    return $this
      ->get_field(parent::ui_name($short));
  }

}

Classes

Namesort descending Description
views_handler_field_group_by_numeric Handler for GROUP BY on simple numeric fields.