module Applicaster::AuthHelpers

Public Instance Methods

authenticate_user!() click to toggle source
# File lib/applicaster/auth_helpers.rb, line 11
def authenticate_user!
  unless current_user
    store_location!
    redirect_to '/auth/applicaster'
  end
end
current_access_token() click to toggle source
# File lib/applicaster/auth_helpers.rb, line 18
def current_access_token
  if credentials = session[:omniauth_credentials]
    credentials[:token] || credentials["token"]
  end
end
current_user() click to toggle source
# File lib/applicaster/auth_helpers.rb, line 3
def current_user
  @current_user ||= user_from_session
end
user_signed_in?() click to toggle source
# File lib/applicaster/auth_helpers.rb, line 7
def user_signed_in?
  !current_user.nil?
end

Protected Instance Methods

clear_omniauth_credentials() click to toggle source
# File lib/applicaster/auth_helpers.rb, line 34
def clear_omniauth_credentials
  session.delete(:omniauth_credentials)
end
store_location!() click to toggle source
# File lib/applicaster/auth_helpers.rb, line 26
def store_location!
  session[:path_before_login] = if request.get?
                                  request.fullpath
                                else
                                  request.referrer
                                end
end
user_from_session() click to toggle source
# File lib/applicaster/auth_helpers.rb, line 38
def user_from_session
  return nil unless current_access_token

  Applicaster::Accounts.user_from_token(current_access_token).tap do |user|
    clear_omniauth_credentials unless user
  end
end