1
0
Fork 0
mirror of https://github.com/heartcombo/devise.git synced 2022-11-09 12:18:31 -05:00
heartcombo--devise/app/controllers/sessions_controller.rb

46 lines
1.1 KiB
Ruby
Raw Normal View History

class SessionsController < ApplicationController
2010-01-13 12:12:13 -05:00
include Devise::Controllers::InternalHelpers
2009-10-12 07:37:28 -04:00
before_filter :require_no_authentication, :only => [ :new, :create ]
2009-10-17 11:10:15 -04:00
# GET /resource/sign_in
def new
2010-02-08 13:07:24 -05:00
unless resource_just_signed_up?
Devise::FLASH_MESSAGES.each do |message|
set_now_flash_message :alert, message if params.try(:[], message) == "true"
end
end
build_resource
render_with_scope :new
end
2009-10-17 11:10:15 -04:00
# POST /resource/sign_in
def create
if resource = authenticate(resource_name)
set_flash_message :notice, :signed_in
sign_in_and_redirect(resource_name, resource, true)
else
set_now_flash_message :alert, (warden.message || :invalid)
2010-02-08 17:14:03 -05:00
clean_up_passwords(build_resource)
render_with_scope :new
end
end
2009-10-17 11:10:15 -04:00
# GET /resource/sign_out
def destroy
set_flash_message :notice, :signed_out if signed_in?(resource_name)
sign_out_and_redirect(resource_name)
end
2009-10-12 07:37:28 -04:00
2010-02-08 11:15:12 -05:00
protected
def resource_just_signed_up?
flash[:"#{resource_name}_signed_up"]
end
2010-02-08 13:07:24 -05:00
2010-02-08 17:14:03 -05:00
def clean_up_passwords(object)
object.clean_up_passwords if object.respond_to?(:clean_up_passwords)
2010-02-08 13:07:24 -05:00
end
end