Forked from
PortalMEC / portalmec
1769 commits behind the upstream repository.
-
Giovanne Marcelo authoredGiovanne Marcelo authored
callbacks_controller.rb 788 B
class CallbacksController < Devise::OmniauthCallbacksController
def facebook
request_data("Facebook","devise.facebook_data")
end
def twitter
request_data("Twitter","devise.twitter_data")
end
def google_oauth2
request_data("Google","devise.google_oauth2_data")
end
private
def request_data(provider,provider_session)
@user = User.from_omniauth(request.env["omniauth.auth"])
if @user.persisted?
sign_in_and_redirect @user, :event => :authentication
flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => provider
else
session[provider_session] = request.env["omniauth.auth"]
redirect_to new_user_registration_url
end
def failure
redirect_to root_path
end
end
end