Method: Symphonia::ControllerExtensions#redirect_to_referer_or

Defined in:
lib/symphonia/controller_extensions.rb

#redirect_to_referer_or(*args, &block) ⇒ Object

Redirects to the request referer if present, redirects to args or call block otherwise.



64
65
66
67
68
69
70
71
72
73
74
# File 'lib/symphonia/controller_extensions.rb', line 64

def redirect_to_referer_or(*args, &block)
  redirect_to :back
rescue ::ActionController::RedirectBackError
  if args.any?
    redirect_to *args
  elsif block_given?
    block.call
  else
    raise "#redirect_to_referer_or takes arguments or a block"
  end
end