Class: SessionsController

Inherits:
ApplicationController
  • Object
show all
Includes:
Devise::Controllers::Helpers
Defined in:
app/controllers/sessions_controller.rb

Constant Summary collapse

WARDEN_MESSAGES =

Maps the messages types that comes from warden to a flash type.

{
  :unauthenticated => :success,
  :unconfirmed => :failure
}

Instance Method Summary collapse

Methods included from Devise::Controllers::Helpers

#devise_mapping, included, #resource, #resource_class, #resource_name

Instance Method Details

#createObject

POST /resource/sign_in



21
22
23
24
25
26
27
28
29
30
# File 'app/controllers/sessions_controller.rb', line 21

def create
  if authenticate(resource_name)
    set_flash_message :success, :signed_in
    redirect_back_or_to home_or_root_path
  else
    set_now_flash_message :failure, :invalid
    build_resource
    render :new
  end
end

#destroyObject

GET /resource/sign_out



33
34
35
36
37
# File 'app/controllers/sessions_controller.rb', line 33

def destroy
  set_flash_message :success, :signed_out if signed_in?(resource_name)
  sign_out(resource_name)
  redirect_to root_path
end

#newObject

GET /resource/sign_in



13
14
15
16
17
18
# File 'app/controllers/sessions_controller.rb', line 13

def new
  WARDEN_MESSAGES.each do |message, type|
    set_now_flash_message type, message if params.key?(message)
  end
  build_resource
end