Module: Superglue::Redirection
- Included in:
- Controller
- Defined in:
- lib/superglue/redirection.rb
Instance Method Summary collapse
- #_compute_redirect_to_location(request, options) ⇒ Object
- #redirect_back_with_props_at(opts) ⇒ Object
Instance Method Details
#_compute_redirect_to_location(request, options) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 |
# File 'lib/superglue/redirection.rb', line 3 def _compute_redirect_to_location(request, ) computed_location = URI.parse(super) next_param = Rack::Utils .parse_nested_query(computed_location.query) if request.params[:__] == "0" computed_location.query = next_param.merge({__: "0"}).to_query end computed_location.to_s end |
#redirect_back_with_props_at(opts) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/superglue/redirection.rb', line 15 def redirect_back_with_props_at(opts) if request.referrer && params[:props_at] referrer_url = URI.parse(request.referrer) referrer_url.query = Rack::Utils .parse_nested_query(referrer_url.query) .merge({props_at: params[:props_at]}) .to_query redirect_to referrer_url.to_s, opts else redirect_back(opts) end end |