You are here

function views_fieldsets_views_ui_display_tab_alter in Views fieldsets 8.3

Same name and namespace in other branches
  1. 7.2 views_fieldsets.module \views_fieldsets_views_ui_display_tab_alter()
  2. 7 views_fieldsets.module \views_fieldsets_views_ui_display_tab_alter()

Implements hook_views_ui_display_tab_alter().

File

./views_fieldsets.module, line 66
Provides an module functionality.

Code

function views_fieldsets_views_ui_display_tab_alter(&$build, ViewUI $ui_view, $display_id) {
  $view = $ui_view
    ->getExecutable();

  // Re-init handlers.
  $view->inited = FALSE;
  $view
    ->build($display_id);
  $ui_view
    ->set('executable', $view);
  if (Fieldset::isFieldsetView($view)) {
    $fieldsets = Fieldset::getAllFieldsets($view);
    foreach ($build['details']['columns']['first']['fields']['fields'] as $field_name => &$renderable) {

      // Noticable fieldsets.
      if (isset($fieldsets[$field_name])) {
        $renderable['#class'][] = 'views-fieldsets-fieldset';
      }

      // Indentation for all fields.
      $renderable['#class'][] = 'views-fieldsets-level-' . count(Fieldset::getFieldParents($view, $field_name));
      unset($renderable);
    }
    $build['details']['#attached']['library'][] = 'views_fieldsets/admin';
  }
}