Mercurial > hg > isophonics-drupal-site
diff core/modules/node/src/Controller/NodePreviewController.php @ 18:af1871eacc83
Update to Drupal core 8.7.1
author | Chris Cannam |
---|---|
date | Thu, 09 May 2019 15:33:08 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line diff
--- a/core/modules/node/src/Controller/NodePreviewController.php Thu Feb 28 13:21:36 2019 +0000 +++ b/core/modules/node/src/Controller/NodePreviewController.php Thu May 09 15:33:08 2019 +0100 @@ -2,8 +2,12 @@ namespace Drupal\node\Controller; +use Drupal\Core\Entity\Controller\EntityViewController; use Drupal\Core\Entity\EntityInterface; -use Drupal\Core\Entity\Controller\EntityViewController; +use Drupal\Core\Entity\EntityRepositoryInterface; +use Drupal\Core\Entity\EntityTypeManagerInterface; +use Drupal\Core\Render\RendererInterface; +use Symfony\Component\DependencyInjection\ContainerInterface; /** * Defines a controller to render a single node in preview. @@ -11,6 +15,43 @@ class NodePreviewController extends EntityViewController { /** + * The entity repository service. + * + * @var \Drupal\Core\Entity\EntityRepositoryInterface + */ + protected $entityRepository; + + /** + * Creates an NodeViewController object. + * + * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager + * The entity type manager. + * @param \Drupal\Core\Render\RendererInterface $renderer + * The renderer service. + * @param \Drupal\Core\Entity\EntityRepositoryInterface $entity_repository + * The entity repository. + */ + public function __construct(EntityTypeManagerInterface $entity_type_manager, RendererInterface $renderer, EntityRepositoryInterface $entity_repository = NULL) { + parent::__construct($entity_type_manager, $renderer); + if (!$entity_repository) { + @trigger_error('The entity.repository service must be passed to NodePreviewController::__construct(), it is required before Drupal 9.0.0. See https://www.drupal.org/node/2549139.', E_USER_DEPRECATED); + $entity_repository = \Drupal::service('entity.repository'); + } + $this->entityRepository = $entity_repository; + } + + /** + * {@inheritdoc} + */ + public static function create(ContainerInterface $container) { + return new static( + $container->get('entity_type.manager'), + $container->get('renderer'), + $container->get('entity.repository') + ); + } + + /** * {@inheritdoc} */ public function view(EntityInterface $node_preview, $view_mode_id = 'full', $langcode = NULL) { @@ -35,7 +76,7 @@ * The page title. */ public function title(EntityInterface $node_preview) { - return $this->entityManager->getTranslationFromContext($node_preview)->label(); + return $this->entityRepository->getTranslationFromContext($node_preview)->label(); } }