You are here

function preview_link_entity_type_alter in Preview Link 8

Same name and namespace in other branches
  1. 2.x preview_link.module \preview_link_entity_type_alter()
  2. 2.0.x preview_link.module \preview_link_entity_type_alter()

Implements hook_entity_type_alter().

File

./preview_link.module, line 19
Module file.

Code

function preview_link_entity_type_alter(array &$entity_types) {
  $supported_entity_types = array_filter($entity_types, function (EntityTypeInterface $type) use ($entity_types) {
    return $type
      ->isRevisionable();
  });

  /** @var \Drupal\Core\Entity\ContentEntityType $type */
  foreach ($supported_entity_types as $type) {
    $providers = $type
      ->getRouteProviderClasses() ?: [];
    if (empty($providers['preview_link'])) {
      $providers['preview_link'] = PreviewLinkRouteProvider::class;
      $type
        ->setHandlerClass('route_provider', $providers);
    }
  }
}