Module: TokakEngine::Authentication::InstanceMethods

Defined in:
lib/tokak_engine/authentication.rb

Instance Method Summary collapse

Instance Method Details

#current_userUser?

Returns current user

Returns:

  • (User, nil)

    a signed in User or nil if anonymous user



39
40
41
42
# File 'lib/tokak_engine/authentication.rb', line 39

def current_user
  return @current_user if defined?(@current_user)
  @current_user = current_user_session && current_user_session.user
end

#current_user_sessionUserSession?

Returns current user session

Returns:

  • (UserSession, nil)

    an Authlogic session object or nil if not signed in



31
32
33
34
# File 'lib/tokak_engine/authentication.rb', line 31

def current_user_session
  return @current_user_session if defined?(@current_user_session)
  @current_user_session = UserSession.find
end

#deny_access(status = :error, message = 'You must be logged in to access this page', redirect = nil) ⇒ Object

Denies user access for page, set flash message

Parameters:

  • status (Symbol) (defaults to: :error)

    of flash message

  • default (String)

    flash message (without I18n support)

  • path (String, Hash)

    to redirect



70
71
72
73
74
75
# File 'lib/tokak_engine/authentication.rb', line 70

def deny_access(status = :error, message = 'You must be logged in to access this page', redirect = nil)
  store_location
  set_flash_message!(status, message)
  redirect_to(redirect || (:return_to => request.request_uri))
  return false
end

#logged_in?User?

Deprecated.

Use #current_user instead

Does user signed in?

Returns:



48
49
50
# File 'lib/tokak_engine/authentication.rb', line 48

def logged_in?
  current_user
end

#require_no_usernil, false

Filter to allow only anonymous users

Returns:

  • (nil, false)

    return false to break filter chain and redirect to account page



60
61
62
63
64
# File 'lib/tokak_engine/authentication.rb', line 60

def require_no_user
  return deny_access(:error,
                     'You must be logged out to access this page',
                     ) if current_user
end

#require_usernil, false

Filter to allow only signed in users

Returns:

  • (nil, false)

    return false to break filter chain and redirect to passport



54
55
56
# File 'lib/tokak_engine/authentication.rb', line 54

def require_user
  return deny_access unless current_user
end

#signin_path(options = {}) ⇒ Object

Path to passport signin

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :return_to (String, Hash)

    Path to return to after signin in



79
80
81
# File 'lib/tokak_engine/authentication.rb', line 79

def (options = {})
  passport_path('signin', options)
end

#signout_path(options = {}) ⇒ Object

Path to passport signout

Parameters:

  • options (Hash) (defaults to: {})

    a customizable set of options

Options Hash (options):

  • :return_to (String, Hash)

    Path to return to after signin out



85
86
87
# File 'lib/tokak_engine/authentication.rb', line 85

def signout_path(options = {})
  passport_path('signout', options)
end