I am trying with no luck to find a "referrer" object for use in my controller. I expected there would be an object similar to the request object with parameters specifying the _controller, _route and arguments.
What I am trying to do is a language switcher action that redirects the user to the same page in the new language. Something along the lines of:
public function switchLangAction($_locale)
{
$args = array();
$newLang = ($_locale == 'en') ? 'fr' : 'en';
// this is how I would have hoped to get a reference to the referrer request.
$referrer = $this->get('referrer');
$referrerRoute = $referrer->parameters->get('_route');
$args = $referrer->parameters->get('args'); // not sure how to get the route args out of the params either!
$args['_locale'] = $newLang;
$response = new RedirectResponse( $this->generateUrl(
$referrerRoute,
$args
));
return $response;
}
It's also possible that there is another way to do this - I know in rails there is the "redirect_to :back" method for example.
Any help would be greatly appreciated.