class views_handler_sort_term_edge_hierarchy in Taxonomy Edge 8
Same name and namespace in other branches
- 6 views_taxonomy_edge/handlers/views_handler_sort_term_edge_hierarchy.inc \views_handler_sort_term_edge_hierarchy
- 7 views_taxonomy_edge/handlers/views_handler_sort_term_edge_hierarchy.inc \views_handler_sort_term_edge_hierarchy
Views sort handler to sort by taxonomy terms' hierarchy order.
Hierarchy
- class \views_handler_sort_term_edge_hierarchy extends \views_handler_sort
Expanded class hierarchy of views_handler_sort_term_edge_hierarchy
1 string reference to 'views_handler_sort_term_edge_hierarchy'
- views_taxonomy_edge_views_data_alter in views_taxonomy_edge/
views_taxonomy_edge.module - Implements hook_views_data_alter().
File
- views_taxonomy_edge/
handlers/ views_handler_sort_term_edge_hierarchy.inc, line 9
View source
class views_handler_sort_term_edge_hierarchy extends views_handler_sort {
/**
* Overridden to add the ORDER BY clause and join required tables.
*/
function query() {
$edge = $this->query
->ensure_table('taxonomy_term_edge');
if (taxonomy_edge_is_order_invalid()) {
$sort_path = _taxonomy_edge_generate_term_path_query("{$edge}.tid");
$alias = $this->query
->add_field(NULL, $sort_path, 'sort_path');
$this->query
->add_orderby(NULL, NULL, $this->options['order'], 'sort_path');
}
else {
$sort_path = "(SELECT o.oid FROM taxonomy_term_edge_order o WHERE o.eid = {$edge}.eid)";
$alias = $this->query
->add_field(NULL, $sort_path, 'oid');
$this->query
->add_orderby(NULL, NULL, $this->options['order'], 'oid');
}
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
views_handler_sort_term_edge_hierarchy:: |
function | Overridden to add the ORDER BY clause and join required tables. |