function views_plugin_display::get_field_labels
3.x views_plugin_display.inc | views_plugin_display::get_field_labels() |
2.x views_plugin_display.inc | views_plugin_display::get_field_labels() |
Retrieve a list of fields for the current display with the relationship associated if it exists.
Parameters
$groupable_only: Return only an array of field labels from handler that return TRUE from use_string_group_by method.
File
- plugins/
views_plugin_display.inc, line 987 - Contains the base display plugin.
Class
- views_plugin_display
- The default display plugin handler. Display plugins handle options and basic mechanisms for different output methods.
Code
function get_field_labels() {
// Use func_get_arg so the function signature isn't amended
// but we can still pass TRUE into the function to filter
// by groupable handlers.
$args = func_get_args();
$groupable_only = isset($args[0]) ? $args[0] : FALSE;
$options = array();
foreach ($this->get_handlers('relationship') as $relationship => $handler) {
if ($label = $handler->label()) {
$relationships[$relationship] = $label;
}
else {
$relationships[$relationship] = $handler->ui_name();
}
}
foreach ($this->get_handlers('field') as $id => $handler) {
if ($groupable_only && !$handler->use_string_group_by()) {
// Continue to next handler if it's not groupable.
continue;
}
if ($label = $handler->label()) {
$options[$id] = $label;
}
else {
$options[$id] = $handler->ui_name();
}
if (!empty($handler->options['relationship']) && !empty($relationships[$handler->options['relationship']])) {
$options[$id] = '(' . $relationships[$handler->options['relationship']] . ') ' . $options[$id];
}
}
return $options;
}