You are here

function multiversion_entity_base_field_info_alter in Multiversion 8.2

Same name and namespace in other branches
  1. 8 multiversion.module \multiversion_entity_base_field_info_alter()

Implements hook_entity_base_field_info_alter().

Parameters

array $fields:

\Drupal\Core\Entity\EntityTypeInterface $entity_type:

File

./multiversion.module, line 222

Code

function multiversion_entity_base_field_info_alter(&$fields, EntityTypeInterface $entity_type) {

  /** @var \Drupal\multiversion\MultiversionManagerInterface $manager */
  $manager = \Drupal::service('multiversion.manager');
  if ($manager
    ->allowToAlter($entity_type)) {
    $exclude_fields = [
      $entity_type
        ->getKey('id'),
      $entity_type
        ->getKey('revision') ?: 'revision_id',
      $entity_type
        ->getKey('uuid'),
      $entity_type
        ->getKey('bundle'),
      '_deleted',
      '_rev',
    ];
    foreach ($fields as $key => $field) {
      if (!in_array($key, $exclude_fields)) {
        $field
          ->setRevisionable(TRUE);
      }
    }
  }
}