Sha256: 4552ed66f8aa5e4e407597668139f09d167f41cf677e6bc7e1cf6f29960049b5
Contents?: true
Size: 1.08 KB
Versions: 5
Compression:
Stored size: 1.08 KB
Contents
class SsoClyent::UserSessionsController < SsoClyent::ApplicationController before_filter :login_required, :only => [ :destroy ] respond_to :html # omniauth callback method def create omniauth = env['omniauth.auth'] logger.debug "+++ #{omniauth}" if user = user_klass.send("find_by_#{userid}", omniauth['uid']) user.respond_to?(:save) ? user.save : user.update else # New user registration user = user_klass.create({:"#{userid}" => omniauth['uid']}) end # Currently storing all the info session[:user_id] = omniauth flash[:notice] = "Successfully logged in" redirect_to SsoClyent.after_sign_in_path end # Omniauth failure callback def failure flash[:notice] = params[:message] end # logout - Clear our rack session BUT essentially redirect to the provider # to clean up the Devise session from there too ! def destroy current_user_logout flash[:notice] = 'You have successfully signed out!' redirect_to "#{SsoClyent.logout_url}?callback_url=#{session['return-to-url'] || root_url}" end private end
Version data entries
5 entries across 5 versions & 1 rubygems