Sha256: 3089cf6fcaca9ed8f7189fa66b4709eb54bb5b24ea6a11778b963b44beffcb89

Contents?: true

Size: 1.14 KB

Versions: 4

Compression:

Stored size: 1.14 KB

Contents

class Devise::SessionsController < ApplicationController
  include Devise::Controllers::InternalHelpers

  before_filter :require_no_authentication, :only => [ :new, :create ]

  # GET /resource/sign_in
  def new
    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

  # 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)
      clean_up_passwords(build_resource)
      render_with_scope :new
    end
  end

  # GET /resource/sign_out
  def destroy
    set_flash_message :notice, :signed_out if signed_in?(resource_name)
    sign_out_and_redirect(resource_name)
  end

  protected

  def resource_just_signed_up?
    flash[:"#{resource_name}_signed_up"]
  end

  def clean_up_passwords(object)
    object.clean_up_passwords if object.respond_to?(:clean_up_passwords)
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
devise-1.1.pre4 app/controllers/devise/sessions_controller.rb
devise-1.1.pre3 app/controllers/devise/sessions_controller.rb
devise-1.1.pre2 app/controllers/devise/sessions_controller.rb
devise-1.1.pre app/controllers/devise/sessions_controller.rb