Module: Applicaster::SessionsControllerMixin

Defined in:
lib/applicaster/sessions_controller_mixin.rb

Instance Method Summary collapse

Instance Method Details

#createObject



8
9
10
11
12
13
# File 'lib/applicaster/sessions_controller_mixin.rb', line 8

def create
  session[:omniauth_credentials] = omniauth_credentials
  Rails.logger.info("Session created successfully for user. IP: #{request.remote_ip}, User Agent: #{request.user_agent}, Params: #{safe_user_params.inspect}")

  redirect_to(session.delete(:path_before_login) || '/')
end

#destroyObject



15
16
17
18
19
20
21
# File 'lib/applicaster/sessions_controller_mixin.rb', line 15

def destroy
  user_email = current_user.email rescue "Unknown"
  Rails.logger.info("Session destroyed for user: #{user_email}. IP: #{request.remote_ip}, User Agent: #{request.user_agent}")

  reset_session
  redirect_to config.base_url
end

#failureObject



23
24
25
26
27
28
29
30
31
32
33
# File 'lib/applicaster/sessions_controller_mixin.rb', line 23

def failure
  Rails.logger.error({
    message: "[Login Failed] - Omniauth error with strategy '#{params[:strategy]}': #{params[:message]}",
    origin: params[:origin],
    IP: request.remote_ip,
    UserAgent: request.user_agent,
    Params: params[:origin],
  })
  flash[:notice] = "There was a problem logging in"
  redirect_to "/"
end

#newObject



3
4
5
6
# File 'lib/applicaster/sessions_controller_mixin.rb', line 3

def new
  Rails.logger.info("New session initiated. Redirecting to /auth/applicaster. IP: #{request.remote_ip}, User Agent: #{request.user_agent}")
  redirect_to "/auth/applicaster"
end