From 08d7ad80dfa518f00477abf9364f7939b45e738f Mon Sep 17 00:00:00 2001 From: Nicolas Busseneau Date: Tue, 12 Oct 2021 04:33:08 +0200 Subject: [PATCH] fix `session_store_active` functionality At the moment and since 1.7.19, the `system.languages.session_store_active` setting has no effect. Session must be initialized before URI for `$language->setActiveFromUri($uri)` (called from `$this->initializeUri($config) -> $uri->init()`) to properly retrieve / store `active_language` in Session. This was previously detected in #3269 as per the code comment, but got reversed in 2e9fe80e33b1f6a80b061239fe2f425aa1f54b06. --- system/src/Grav/Common/Processors/InitializeProcessor.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/system/src/Grav/Common/Processors/InitializeProcessor.php b/system/src/Grav/Common/Processors/InitializeProcessor.php index 61144648c..55cba033c 100644 --- a/system/src/Grav/Common/Processors/InitializeProcessor.php +++ b/system/src/Grav/Common/Processors/InitializeProcessor.php @@ -105,12 +105,12 @@ class InitializeProcessor extends ProcessorBase // TODO: remove in 2.0. $this->container['accounts']; + // Initialize session (used by URI, see issue #3269). + $this->initializeSession($config); + // Initialize URI (uses session, see issue #3269). $this->initializeUri($config); - // Initialize session. - $this->initializeSession($config); - // Grav may return redirect response right away. $redirectCode = (int)$config->get('system.pages.redirect_trailing_slash', 1); if ($redirectCode) {