You are here

function views_between_dates_filter_handler::get_query_fields in Views between dates filter 7

1 call to views_between_dates_filter_handler::get_query_fields()
views_between_dates_filter_handler::op_between_dates in includes/views_between_dates_filter_handler.inc

File

includes/views_between_dates_filter_handler.inc, line 153
A filter similar to separate filters for start and end date, but exposed in a single field.

Class

views_between_dates_filter_handler
@file A filter similar to separate filters for start and end date, but exposed in a single field.

Code

function get_query_fields() {
  $fields = date_views_fields($this->base_table);
  $fields = $fields['name'];
  $this->query_fields = array();
  $date_fields = array(
    $this->options['start_date_field'],
    $this->options['end_date_field'],
  );
  foreach ($date_fields as $delta => $name) {
    if (array_key_exists($name, $fields) && ($field = $fields[$name])) {
      $date_handler = new date_sql_handler($field['sql_type'], date_default_timezone());
      $date_handler->granularity = $this->options['granularity'];
      $date_handler->db_timezone = date_get_timezone_db($field['tz_handling']);
      $date_handler->local_timezone = date_get_timezone($field['tz_handling']);
      $operator = $delta == 0 ? '<=' : '>=';
      $this->query_fields[] = array(
        'field' => $field,
        'date_handler' => $date_handler,
      );
    }
  }
}