function _datex_date_views_argument_handler_simple::init in Datex 7.3
Get granularity.
Use it to create the formula and a format for the results.
Overrides views_handler_argument::init
File
- ./
datex.views.inc, line 529 - Datex views integration.
Class
- _datex_date_views_argument_handler_simple
- Copied from date_views module. So we have no hard dependency on it.
Code
function init(&$view, &$options) {
parent::init($view, $options);
// Add a date handler.
module_load_include('inc', 'date_api', 'date_api_sql');
$this->date_handler = new date_sql_handler(DATE_UNIX);
if (!empty($this->definition['field_name'])) {
$field = field_info_field($this->definition['field_name']);
if (!empty($field) && !empty($field['type'])) {
$this->date_handler->date_type = $field['type'];
$this->original_table = $this->definition['table'];
}
$this->date_handler->db_timezone = date_get_timezone_db($field['settings']['tz_handling']);
$this->date_handler->local_timezone = date_get_timezone($field['settings']['tz_handling']);
}
$this->date_handler->granularity = $this->options['granularity'];
// This value needs to be initialized so
// it exists even if the query doesn't run.
$this->date_handler->placeholders = [];
$this->format = $this->date_handler
->views_formats($this->date_handler->granularity, 'display');
$this->sql_format = $this->date_handler
->views_formats($this->date_handler->granularity, 'sql');
// $this->arg_format is the format the parent date
// handler will use to create a default argument.
$this->arg_format = $this
->format();
// Identify the base table for this field.
// It will be used to call for the right query field options.
$this->base_table = $this->table;
}