Module: Sinatra::Warden::Helpers
- Defined in:
- lib/sinatra_warden/sinatra.rb
Instance Method Summary collapse
-
#authenticate(*args) ⇒ Object
(also: #login)
Authenticate a user against defined strategies.
-
#authenticated?(scope = nil) ⇒ Boolean
(also: #logged_in?)
Check the current session is authenticated to a given scope.
-
#authorize!(failure_path = nil) ⇒ Object
Require authorization for an action.
-
#logout(scopes = nil) ⇒ Object
Terminate the current session.
-
#session_info(scope = nil) ⇒ Object
Return session info.
-
#user(scope = nil) ⇒ Object
(also: #current_user)
Access the user from the current session.
-
#user=(new_user, opts = {}) ⇒ Object
(also: #current_user=)
Store the logged in user in the session.
-
#warden ⇒ Object
The main accessor to the warden middleware.
Instance Method Details
#authenticate(*args) ⇒ Object Also known as: login
Authenticate a user against defined strategies
24 25 26 |
# File 'lib/sinatra_warden/sinatra.rb', line 24 def authenticate(*args) warden.authenticate!(*args) end |
#authenticated?(scope = nil) ⇒ Boolean Also known as: logged_in?
Check the current session is authenticated to a given scope
18 19 20 |
# File 'lib/sinatra_warden/sinatra.rb', line 18 def authenticated?(scope=nil) scope ? warden.authenticated?(scope) : warden.authenticated? end |
#authorize!(failure_path = nil) ⇒ Object
Require authorization for an action
58 59 60 61 62 63 |
# File 'lib/sinatra_warden/sinatra.rb', line 58 def (failure_path=nil) unless authenticated? session[:return_to] = request.path if .auth_use_referrer redirect(failure_path ? failure_path : .auth_failure_path) end end |
#logout(scopes = nil) ⇒ Object
Terminate the current session
32 33 34 |
# File 'lib/sinatra_warden/sinatra.rb', line 32 def logout(scopes=nil) scopes ? warden.logout(scopes) : warden.logout end |
#session_info(scope = nil) ⇒ Object
Return session info
13 14 15 |
# File 'lib/sinatra_warden/sinatra.rb', line 13 def session_info(scope=nil) scope ? warden.session(scope) : scope end |
#user(scope = nil) ⇒ Object Also known as: current_user
Access the user from the current session
39 40 41 |
# File 'lib/sinatra_warden/sinatra.rb', line 39 def user(scope=nil) scope ? warden.user(scope) : warden.user end |
#user=(new_user, opts = {}) ⇒ Object Also known as: current_user=
Store the logged in user in the session
50 51 52 |
# File 'lib/sinatra_warden/sinatra.rb', line 50 def user=(new_user, opts={}) warden.set_user(new_user, opts) end |
#warden ⇒ Object
The main accessor to the warden middleware
6 7 8 |
# File 'lib/sinatra_warden/sinatra.rb', line 6 def warden request.env['warden'] end |