class Devise::OmniauthCallbacksController

def after_omniauth_failure_path_for(scope)

def after_omniauth_failure_path_for(scope)
  new_session_path(scope)
end

def failed_strategy

def failed_strategy
  env["omniauth.error.strategy"]
end

def failure

def failure
  set_flash_message :alert, :failure, :kind => OmniAuth::Utils.camelize(failed_strategy.name), :reason => failure_message
  redirect_to after_omniauth_failure_path_for(resource_name)
end

def failure_message

def failure_message
  exception = env["omniauth.error"]
  error   = exception.error_reason if exception.respond_to?(:error_reason)
  error ||= exception.error        if exception.respond_to?(:error)
  error ||= env["omniauth.error.type"].to_s
  error.to_s.humanize if error
end

def passthru

def passthru
  render :status => 404, :text => "Not found. Authentication passthru."
end