From b126258bcfeb374c6d50dbb245e5da4a1fd89d02 Mon Sep 17 00:00:00 2001 From: Achim Fritz Date: Tue, 26 Nov 2019 07:30:55 +0100 Subject: [PATCH 1/3] [TASK] add note about nav_title property --- README.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index be49bb7..6308477 100644 --- a/README.md +++ b/README.md @@ -103,6 +103,8 @@ Usage in Fluid: +**Note**: nav_title is title if Database-Record nav_title is empty. + ### Language Menu Building a language switcher can be achieved by a few lines of code: @@ -134,7 +136,7 @@ Usage in Fluid: -Note: the languageMenu hold the siteLanguage on each item in the `language` property as an array +**Note**: the languageMenu hold the siteLanguage on each item in the `language` property as an array ### List Menu From 73e4015d0b4c0baea1b89449277d1224d6069038 Mon Sep 17 00:00:00 2001 From: Achim Fritz Date: Tue, 26 Nov 2019 07:31:24 +0100 Subject: [PATCH 2/3] [BUGFIX] reset language aspect after creating menu --- Classes/Compiler/LanguageMenuCompiler.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Classes/Compiler/LanguageMenuCompiler.php b/Classes/Compiler/LanguageMenuCompiler.php index 14fc248..f7ae73e 100644 --- a/Classes/Compiler/LanguageMenuCompiler.php +++ b/Classes/Compiler/LanguageMenuCompiler.php @@ -35,6 +35,7 @@ public function compile(ContentObjectRenderer $contentObjectRenderer, array $con $site = $this->getCurrentSite(); $context = GeneralUtility::makeInstance(Context::class); + $backupLanguageAspect = $context->getAspect('language'); $pages = []; foreach ($site->getLanguages() as $language) { if (in_array($language->getTwoLetterIsoCode(), $excludedLanguages, true)) { @@ -54,6 +55,7 @@ public function compile(ContentObjectRenderer $contentObjectRenderer, array $con $pages[] = $page; } } + $context->setAspect('language', $backupLanguageAspect); return $pages; }); } From 9c272abb8ccb80fc296569056152e93427bb52ca Mon Sep 17 00:00:00 2001 From: Achim Fritz Date: Tue, 26 Nov 2019 09:46:37 +0100 Subject: [PATCH 3/3] [TASK] clone Context instead of restore language aspect --- Classes/Compiler/LanguageMenuCompiler.php | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Classes/Compiler/LanguageMenuCompiler.php b/Classes/Compiler/LanguageMenuCompiler.php index f7ae73e..f30400e 100644 --- a/Classes/Compiler/LanguageMenuCompiler.php +++ b/Classes/Compiler/LanguageMenuCompiler.php @@ -34,8 +34,7 @@ public function compile(ContentObjectRenderer $contentObjectRenderer, array $con return $this->cache->get($cacheIdentifier, function() use ($contentObjectRenderer, $configuration, $excludedLanguages, $targetPage) { $site = $this->getCurrentSite(); - $context = GeneralUtility::makeInstance(Context::class); - $backupLanguageAspect = $context->getAspect('language'); + $context = clone GeneralUtility::makeInstance(Context::class); $pages = []; foreach ($site->getLanguages() as $language) { if (in_array($language->getTwoLetterIsoCode(), $excludedLanguages, true)) { @@ -55,7 +54,6 @@ public function compile(ContentObjectRenderer $contentObjectRenderer, array $con $pages[] = $page; } } - $context->setAspect('language', $backupLanguageAspect); return $pages; }); }