Module: Panda::Core::Authentication
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/panda/core/authentication.rb
Instance Method Summary collapse
- #current_user ⇒ Object
- #require_admin ⇒ Object
- #require_authentication ⇒ Object
- #sign_in(user) ⇒ Object
- #sign_out ⇒ Object
Instance Method Details
#current_user ⇒ Object
12 13 14 15 |
# File 'lib/panda/core/authentication.rb', line 12 def current_user return @current_user if defined?(@current_user) @current_user = User.find_by(id: session[:user_id]) if session[:user_id] end |
#require_admin ⇒ Object
21 22 23 |
# File 'lib/panda/core/authentication.rb', line 21 def require_admin redirect_to admin_login_path unless current_user&.admin? end |
#require_authentication ⇒ Object
17 18 19 |
# File 'lib/panda/core/authentication.rb', line 17 def require_authentication redirect_to admin_login_path unless current_user end |
#sign_in(user) ⇒ Object
25 26 27 28 |
# File 'lib/panda/core/authentication.rb', line 25 def sign_in(user) session[:user_id] = user.id @current_user = user end |
#sign_out ⇒ Object
30 31 32 33 |
# File 'lib/panda/core/authentication.rb', line 30 def sign_out session.delete(:user_id) @current_user = nil end |