Sha256: b7f2c13f30a1a203b17f4550a1493ba565f77bcc4e1ed13ccf6647681c5e8b47
Contents?: true
Size: 788 Bytes
Versions: 1
Compression:
Stored size: 788 Bytes
Contents
# Alternative FailureEndpoint for OmniAuth, # which preserves all parameters passed to provider/callback # module OmniAuth class FailureEndpointEx < FailureEndpoint def redirect_to_failure message_key = env['omniauth.error.type'] new_path = "#{env['SCRIPT_NAME']}#{OmniAuth.config.path_prefix}/failure?message=#{message_key}#{origin_query_param}#{strategy_name_query_param}#{extra_query_param}" Rack::Response.new(["302 Moved"], 302, 'Location' => new_path).finish end # Returns extra query params passed to callback. # def extra_query_param return "" unless env['omniauth.params'] env['omniauth.params'].map{|k,v| "&#{k}=#{Rack::Utils.escape(v)}"}.join end end # class FailureEndpointEx < FailureEndpoint end # module OmniAuth
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
aerogel-users-1.4.3 | lib/aerogel/users/omniauth-failure_endpoint_ex.rb |