Keep query parameters when adding locale part in RedirectController

This fixes issue #268
This commit is contained in:
Jan Böhmer 2023-04-15 00:38:11 +02:00
parent 6e6e203f8a
commit 8351f38ee7
2 changed files with 11 additions and 6 deletions

View file

@ -61,7 +61,6 @@ class RedirectController extends AbstractController
$locale = $user->getLanguage();
}
//$new_url = str_replace($request->getPathInfo(), '/' . $locale . $request->getPathInfo(), $request->getUri());
$new_url = $request->getUriForPath('/'.$locale.$request->getPathInfo());
//If either mod_rewrite is not enabled or the index.php version is enforced, add index.php to the string
@ -71,6 +70,9 @@ class RedirectController extends AbstractController
$new_url = $request->getSchemeAndHttpHost().$request->getBaseUrl().'/index.php/'.$locale.$request->getPathInfo();
}
//Add the query string
$new_url .= $request->getQueryString() ? '?'.$request->getQueryString() : '';
return $this->redirect($new_url);
}