2e28f9df3bbe37ca52fdd0c585f706c2023f3c58
[yaffs-website] / ConfigurableLanguageRenderer.php
1 <?php
2
3 namespace Drupal\views\Entity\Render;
4
5 use Drupal\Core\Entity\EntityTypeInterface;
6 use Drupal\Core\Language\LanguageManagerInterface;
7 use Drupal\views\ResultRow;
8 use Drupal\views\ViewExecutable;
9
10 /**
11  * Renders entities in a configured language.
12  */
13 class ConfigurableLanguageRenderer extends EntityTranslationRendererBase {
14
15   /**
16    * A specific language code for rendering if available.
17    *
18    * @var string|null
19    */
20   protected $langcode;
21
22   /**
23    * Constructs a renderer object.
24    *
25    * @param \Drupal\views\ViewExecutable $view
26    *   The entity row being rendered.
27    * @param \Drupal\Core\Language\LanguageManagerInterface $language_manager
28    *   The language manager.
29    * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type
30    *   The entity type.
31    * @param string|null $langcode
32    *   A specific language code to set, if available.
33    */
34   public function __construct(ViewExecutable $view, LanguageManagerInterface $language_manager, EntityTypeInterface $entity_type, $langcode) {
35     parent::__construct($view, $language_manager, $entity_type);
36     $this->langcode = $langcode;
37   }
38
39   /**
40    * {@inheritdoc}
41    */
42   public function getLangcode(ResultRow $row) {
43     return $this->langcode;
44   }
45
46 }