entity_browser-8.x-2.x-dev/entity_browser.views.inc
entity_browser.views.inc
<?php /** * @file * Provide views data for entity_browser.module. */ use Drupal\search_api\Entity\Index; /** * Implements hook_views_data_alter(). */ function entity_browser_views_data_alter(&$data) { foreach (\Drupal::entityTypeManager()->getDefinitions() as $entity_type_name => $entity_type) { if ($base_table = $entity_type->getBaseTable()) { $entity_keys = $entity_type->get('entity_keys'); $data[$base_table]['entity_browser_select'] = [ 'title' => t('Entity browser bulk select form'), 'help' => t('Add a form element that lets you use a view as a base to select entities in entity browser.'), 'field' => [ 'id' => 'entity_browser_select', 'real field' => $entity_keys['id'], ], ]; if (!empty($entity_keys['bundle'])) { $data[$base_table]['entity_browser_bundle'] = [ 'title' => t('Entity Browser Target Bundles'), 'filter' => [ 'id' => 'entity_browser_bundle', 'real field' => $entity_keys['bundle'], ], ]; } } } if (\Drupal::moduleHandler()->moduleExists('search_api')) { /** @var \Drupal\search_api\IndexInterface $index */ foreach (Index::loadMultiple() as $index) { $key = 'search_api_index_' . $index->id(); $data[$key]['entity_browser_select'] = [ 'title' => t('Entity browser bulk select form for Search API views'), 'help' => t('Add a form element that lets you use a view as a base to select entities in entity browser.'), 'field' => [ 'id' => 'entity_browser_search_api_select', 'real field' => 'id', ], ]; } } }