diff --git a/View/Elements/switch_language_form.ctp b/View/Elements/switch_language_form.ctp index dd41c87..c4f9d04 100644 --- a/View/Elements/switch_language_form.ctp +++ b/View/Elements/switch_language_form.ctp @@ -16,15 +16,25 @@ $enable = array_flip( Hash::extract($switchLanguages, '{n}.Language.code') ); $options = $this->M17n->getLanguagesOptions($enable); +$langQuery = parse_url($this->request->header('REQUEST_URI'), PHP_URL_QUERY); +if (preg_match('/lang=[^&]*/i', $langQuery)) { + $langQuery = preg_replace('/lang=[^&]*/i', 'lang=%s', $langQuery); +} elseif ($langQuery) { + $langQuery .= '&lang=%s'; +} else { + $langQuery = 'lang=%s'; +} ?>