function views_fieldsets_hierarchy_info in Views fieldsets 7
Same name and namespace in other branches
- 7.2 views_fieldsets.module \views_fieldsets_hierarchy_info()
Helper to ...
4 calls to views_fieldsets_hierarchy_info()
- views_fieldsets_form_views_ui_rearrange_form_alter in ./
views_fieldsets.module - Implements hook_form_FORM_ID_alter() for views_ui_rearrange_form().
- views_fieldsets_preprocess_views_view_fields__2 in ./
views_fieldsets.module - Implements template_preprocess_views_view_fields().
- views_fieldsets_rearrange_form_submit in ./
views_fieldsets.module - Submit handler for views_ui_rearrange_form().
- views_fieldsets_views_ui_display_tab_alter in ./
views_fieldsets.module - Implements hook_views_ui_display_tab_alter().
File
- ./
views_fieldsets.module, line 310 - Hooks, helpers and theming for the Views Fieldsets module.
Code
function views_fieldsets_hierarchy_info($display_handler, $fieldsets, $get_parent = '', $depth = 0) {
$hierarchy = array();
foreach ($fieldsets as $field_name => $parent) {
if ($get_parent == $parent) {
$hierarchy[$field_name] = (object) array(
'info' => (object) array(
'fieldset_weight' => count($hierarchy),
'total_weight' => 0,
'depth' => $depth,
'parent' => $parent ? $parent : '',
),
);
if (views_fieldsets_field_is_fieldset($field_name, $display_handler)) {
$hierarchy[$field_name]->children = views_fieldsets_hierarchy_info($display_handler, $fieldsets, $field_name, $depth + 1);
}
}
}
if (!$depth) {
$fields = array();
$weight = 0;
views_fieldsets_hierarchy_total_weights($hierarchy, $fields, $weight);
return array(
'total_weights' => array_keys($fields),
'fields' => $fields,
'tree' => $hierarchy,
);
}
return $hierarchy;
}