Module: RailsSso::Helpers

Defined in:
lib/rails_sso/helpers.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



3
4
5
6
7
# File 'lib/rails_sso/helpers.rb', line 3

def self.included(base)
  base.class_eval do
    helper_method :current_user_data, :user_signed_in?
  end
end

Instance Method Details

#authenticate_user!Object



13
14
15
16
17
18
19
# File 'lib/rails_sso/helpers.rb', line 13

def authenticate_user!
  unless user_signed_in?
    session[:rails_sso_return_path] = request.path
  end

  warden.authenticate!
end

#current_user_dataObject



9
10
11
# File 'lib/rails_sso/helpers.rb', line 9

def current_user_data
  @current_user_data ||= warden.authenticate
end

#sign_in_with_access_token!(access_token) ⇒ Object



25
26
27
# File 'lib/rails_sso/helpers.rb', line 25

def (access_token)
  sso_app.save_access_token!(access_token)
end

#sign_out!Object



29
30
31
32
33
# File 'lib/rails_sso/helpers.rb', line 29

def sign_out!
  sso_app.invalidate_access_token!

  warden.logout
end

#sso_appObject



39
40
41
# File 'lib/rails_sso/helpers.rb', line 39

def sso_app
  request.env['sso']
end

#user_signed_in?Boolean

Returns:

  • (Boolean)


21
22
23
# File 'lib/rails_sso/helpers.rb', line 21

def user_signed_in?
  warden.authenticated?
end

#wardenObject



35
36
37
# File 'lib/rails_sso/helpers.rb', line 35

def warden
  request.env['warden']
end