function geolocation_proximity_views_handler_field_distance::query in Geolocation Proximity 7.2
Called to add the field to a query.
Overrides views_handler_field::query
File
- handlers/
geolocation_proximity_views_handler_field_distance.inc, line 230 - Definition of geolocation_proximity_views_handler_field_distance.
Class
- geolocation_proximity_views_handler_field_distance
- Distance field handler for views.
Code
function query() {
if (!$this->options['use_filter']) {
$this
->ensure_my_table();
$this
->add_additional_fields();
$table = $this->table_alias;
$field_id = $this->geolocation_proximity_field_id;
// Prepare filter values.
$filter_lat = $this->options['location']['latitude'];
$filter_lng = $this->options['location']['longitude'];
// Prepare field values.
$field_latsin = "{$table}.{$field_id}_lat_sin";
$field_latcos = "{$table}.{$field_id}_lat_cos";
$field_lng = "{$table}.{$field_id}_lng_rad";
// Build the query.
$sql = _proximity_sql_fragment($filter_lat, $filter_lng, $field_latsin, $field_latcos, $field_lng);
$this->query
->add_field(NULL, $sql, $this->field_alias);
}
}