You are here

public function BlockContentViewsData::getViewsData in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/block_content/src/BlockContentViewsData.php \Drupal\block_content\BlockContentViewsData::getViewsData()

Returns views data for the entity type.

Return value

array Views data in the format of hook_views_data().

Overrides EntityViewsData::getViewsData

File

core/modules/block_content/src/BlockContentViewsData.php, line 15

Class

BlockContentViewsData
Provides the views data for the block_content entity type.

Namespace

Drupal\block_content

Code

public function getViewsData() {
  $data = parent::getViewsData();
  $data['block_content_field_data']['id']['field']['id'] = 'field';
  $data['block_content_field_data']['info']['field']['id'] = 'field';
  $data['block_content_field_data']['info']['field']['link_to_entity default'] = TRUE;
  $data['block_content_field_data']['type']['field']['id'] = 'field';
  $data['block_content_field_data']['table']['wizard_id'] = 'block_content';
  $data['block_content']['block_content_listing_empty'] = [
    'title' => $this
      ->t('Empty block library behavior'),
    'help' => $this
      ->t('Provides a link to add a new block.'),
    'area' => [
      'id' => 'block_content_listing_empty',
    ],
  ];

  // Advertise this table as a possible base table.
  $data['block_content_field_revision']['table']['base']['help'] = $this
    ->t('Block Content revision is a history of changes to block content.');
  $data['block_content_field_revision']['table']['base']['defaults']['title'] = 'info';

  // @todo EntityViewsData should add these relationships by default.
  //   https://www.drupal.org/node/2410275
  $data['block_content_field_revision']['id']['relationship']['id'] = 'standard';
  $data['block_content_field_revision']['id']['relationship']['base'] = 'block_content_field_data';
  $data['block_content_field_revision']['id']['relationship']['base field'] = 'id';
  $data['block_content_field_revision']['id']['relationship']['title'] = $this
    ->t('Block Content');
  $data['block_content_field_revision']['id']['relationship']['label'] = $this
    ->t('Get the actual block content from a block content revision.');
  $data['block_content_field_revision']['revision_id']['relationship']['id'] = 'standard';
  $data['block_content_field_revision']['revision_id']['relationship']['base'] = 'block_content_field_data';
  $data['block_content_field_revision']['revision_id']['relationship']['base field'] = 'revision_id';
  $data['block_content_field_revision']['revision_id']['relationship']['title'] = $this
    ->t('Block Content');
  $data['block_content_field_revision']['revision_id']['relationship']['label'] = $this
    ->t('Get the actual block content from a block content revision.');
  $data['block_content_revision']['revision_user']['help'] = $this
    ->t('The user who created the revision.');
  $data['block_content_revision']['revision_user']['relationship']['label'] = $this
    ->t('revision user');
  $data['block_content_revision']['revision_user']['filter']['id'] = 'user_name';
  $data['block_content_revision']['table']['join']['block_content_field_data']['left_field'] = 'revision_id';
  $data['block_content_revision']['table']['join']['block_content_field_data']['field'] = 'revision_id';
  return $data;
}