module Foyer::Controller::Helpers
Protected Instance Methods
authenticate_user!()
click to toggle source
# File lib/foyer/controller/helpers.rb, line 39 def authenticate_user! return if user_signed_in? redirect_to "/auth/#{Foyer.identity_provider}?origin=#{CGI.escape request.fullpath}" end
current_user()
click to toggle source
# File lib/foyer/controller/helpers.rb, line 28 def current_user return nil unless user_session.present? @current_user ||= Foyer.user_finder.call(user_session[:id]) end
sign_in(user)
click to toggle source
# File lib/foyer/controller/helpers.rb, line 12 def sign_in(user) session[Foyer.session_key] = { id: user.id, current_sign_in_at: Time.now, # rubocop:disable Rails/TimeZone current_sign_in_ip: request.ip }.with_indifferent_access end
sign_out()
click to toggle source
# File lib/foyer/controller/helpers.rb, line 20 def sign_out session.delete(Foyer.session_key) end
user_session()
click to toggle source
# File lib/foyer/controller/helpers.rb, line 33 def user_session session[Foyer.session_key] ||= {} session[Foyer.session_key] = session[Foyer.session_key].with_indifferent_access session[Foyer.session_key] end
user_signed_in?()
click to toggle source
# File lib/foyer/controller/helpers.rb, line 24 def user_signed_in? user_session.present? && current_user.present? end