module Passwd::Rails::ActionControllerExt
Private Instance Methods
_auth_class()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 61 def _auth_class (Rails.application.config.passwd.auth_class || passwd_auth_class || :User).to_s.constantize end
_auth_key()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 65 def _auth_key Rails.application.config.passwd.session_key || passwd_auth_key || :user_id end
_signin_path()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 69 def _signin_path name = Rails.application.config.passwd.signin_path || passwd_signin_path || :signin_path _url_helpers.respond_to?(name) ? _url_helpers.public_send(name) : nil end
_url_helpers()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 74 def _url_helpers Rails.application.routes.url_helpers end
current_user()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 11 def current_user return @current_user if instance_variable_defined?(:@current_user) @current_user = _auth_class.find_by(id: session[_auth_key]) end
passwd_auth_class()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 49 def passwd_auth_class nil end
passwd_auth_key()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 53 def passwd_auth_key nil end
passwd_signin_path()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 57 def passwd_signin_path nil end
redirect_to_referer_or(path, options = {})
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 35 def redirect_to_referer_or(path, options = {}) redirect_to session[:signin_referer].presence || path, **options end
require_signin()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 39 def require_signin return if signin? path = _signin_path raise UnauthorizedAccess unless path session[:signin_referer] = request.fullpath redirect_to path end
signin(user)
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 21 def signin(user) if user.present? @current_user = user session[_auth_key] = user&.id end user.present? end
signin?()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 17 def signin? current_user.present? end
signout()
click to toggle source
# File lib/passwd/rails/action_controller_ext.rb, line 30 def signout session[_auth_key] = nil @current_user = nil end