Class: SessionsController
- Inherits:
 - 
      ApplicationController
      
        
- Object
 - ActionController::Base
 - ApplicationController
 - SessionsController
 
 
- Defined in:
 - app/controllers/sessions_controller.rb
 
Overview
Handles login and logout operations.
Instance Method Summary collapse
- #failure ⇒ Object
 - 
  
    
      #logout  ⇒ nil 
    
    
  
  
  
  
  
  
  
  
  
    
This method logs out a user.
 - 
  
    
      #omniauth  ⇒ nil 
    
    
  
  
  
  
  
  
  
  
  
    
This method calls the omniauth service.
 
Instance Method Details
#failure ⇒ Object
      32 33 34  | 
    
      # File 'app/controllers/sessions_controller.rb', line 32 def failure redirect_to welcome_path, alert: "Authentication failed. Please try again." end  | 
  
#logout ⇒ nil
This method logs out a user
      8 9 10 11  | 
    
      # File 'app/controllers/sessions_controller.rb', line 8 def logout reset_session redirect_to welcome_path, notice: "You are logged out." end  | 
  
#omniauth ⇒ nil
This method calls the omniauth service
      16 17 18 19 20 21 22 23 24 25 26 27 28 29 30  | 
    
      # File 'app/controllers/sessions_controller.rb', line 16 def omniauth auth = request.env["omniauth.auth"] oauth_service = OauthService.new(auth, session[:user_id]) result = oauth_service.connect_user if result[:success] and !session[:user_id].present? reset_session session[:user_id] = result[:user].id redirect_to result[:success] ? games_path : user_path(result[:user]), notice: result[:notice] elsif result[:success] redirect_to result[:success] ? games_path : user_path(result[:user]), notice: result[:notice] else redirect_to welcome_path, alert: result[:alert] end end  |