You are here

protected function WebformSubmissionListBuilder::buildEntityList in Webform 8.5

Same name and namespace in other branches
  1. 6.x src/WebformSubmissionListBuilder.php \Drupal\webform\WebformSubmissionListBuilder::buildEntityList()

Build the webform submission entity list.

Return value

array A renderable array containing the entity list.

1 call to WebformSubmissionListBuilder::buildEntityList()
WebformSubmissionListBuilder::render in src/WebformSubmissionListBuilder.php
Builds the entity listing as renderable array for table.html.twig.

File

src/WebformSubmissionListBuilder.php, line 544

Class

WebformSubmissionListBuilder
Provides a list controller for webform submission entity.

Namespace

Drupal\webform

Code

protected function buildEntityList() {
  $build = [];

  // Filter form.
  if (empty($this->account)) {
    $build['filter_form'] = $this
      ->buildFilterForm();
  }

  // Customize buttons.
  if ($this->customize) {
    $build['customize'] = $this
      ->buildCustomizeButton();
  }

  // Display info.
  if ($this->total) {
    $build['info'] = $this
      ->buildInfo();
  }

  // Table.
  $build += parent::render();
  $build['table']['#sticky'] = TRUE;
  $build['table']['#attributes']['class'][] = 'webform-results-table';

  // Bulk operations only visible on webform submissions pages.
  $webform_submission_bulk_form = $this->configFactory
    ->get('webform.settings')
    ->get('settings.webform_submission_bulk_form');
  if ($webform_submission_bulk_form && !$this->account && $this->webform && $this->webform
    ->access('submission_update_any')) {
    $build['table'] = \Drupal::formBuilder()
      ->getForm('\\Drupal\\webform\\Form\\WebformSubmissionBulkForm', $build['table'], $this->webform
      ->access('submission_delete_any'));
  }

  // Must preload libraries required by (modal) dialogs.
  // Must preload libraries required by (modal) dialogs.
  WebformDialogHelper::attachLibraries($build);
  return $build;
}