diff --git a/lib/classes/JsonApi/Middlewares/Language.php b/lib/classes/JsonApi/Middlewares/Language.php index 8843445665d6bfc7b7f44645b3f5c9b779aac479..4cde6997357069d4fa57f02a90d2a3520205bf9f 100644 --- a/lib/classes/JsonApi/Middlewares/Language.php +++ b/lib/classes/JsonApi/Middlewares/Language.php @@ -23,14 +23,23 @@ class Language public function __invoke(Request $request, RequestHandler $handler) { $language = $this->detectValidLanguageFromRequest($request); + $language_before = false; // Set language if detected if ($language) { + $language_before = $_SESSION['_language']; $_SESSION['_language'] = $language; setTempLanguage(false, $language); } - return $handler->handle($request); + $response = $handler->handle($request); + + if ($language) { + $_SESSION['_language'] = $language_before; + restoreLanguage(); + } + + return $response; } /**