From 861dfb41761ab8a3d6c1dff00938d3975d50ae30 Mon Sep 17 00:00:00 2001 From: Bachir Soussi Chiadmi Date: Wed, 2 May 2018 14:13:42 +0200 Subject: [PATCH] fix ajax entity loading cache langauges context --- .../src/Controller/EdlpAjaxController.php | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/sites/all/modules/figli/edlp_ajax/src/Controller/EdlpAjaxController.php b/sites/all/modules/figli/edlp_ajax/src/Controller/EdlpAjaxController.php index e39fc8740..0dd224d32 100644 --- a/sites/all/modules/figli/edlp_ajax/src/Controller/EdlpAjaxController.php +++ b/sites/all/modules/figli/edlp_ajax/src/Controller/EdlpAjaxController.php @@ -19,7 +19,17 @@ use Drupal\core\render\RenderContext; class EdlpAjaxController extends ControllerBase { private function query() { - $this->entity = entity_load($this->entity_type, $this->id); + $this->langcode = \Drupal::languageManager()->getCurrentLanguage()->getId(); + + + $entity = entity_load($this->entity_type, $this->id); + + if ($entity->hasTranslation($this->langcode)){ + $this->entity = $entity->getTranslation($this->langcode); + }else{ + $this->entity = $entity; + } + if($this->entity){ switch($this->entity_type){ @@ -174,6 +184,7 @@ class EdlpAjaxController extends ControllerBase { 'bundle' => $this->bundle, 'entity_type' => $this->entity_type, 'rendered'=> $rendered, + 'language' => $this->langcode ]; // if content type page (productions) : @@ -227,6 +238,9 @@ class EdlpAjaxController extends ControllerBase { 'tags' => [ 'edlp-ajax-cache', // $this->entity_type.':'.$this->id // not necessary as we add $renderable as CacheableMetadata to the response + ], + 'contexts' => [ + 'languages:language_content' ] ];