Get rid of flash hook and clean up passwords after registration.

This commit is contained in:
José Valim
2010-04-01 13:11:02 +02:00
parent dac7887d7c
commit 16666b7587
6 changed files with 20 additions and 27 deletions

View File

@@ -5,7 +5,7 @@ class Devise::RegistrationsController < ApplicationController
# GET /resource/sign_up
def new
build_resource
build_resource({})
render_with_scope :new
end
@@ -14,10 +14,10 @@ class Devise::RegistrationsController < ApplicationController
build_resource
if resource.save
flash[:"#{resource_name}_signed_up"] = true
set_flash_message :notice, :signed_up
sign_in_and_redirect(resource_name, resource)
else
clean_up_passwords(resource)
render_with_scope :new
end
end
@@ -33,6 +33,7 @@ class Devise::RegistrationsController < ApplicationController
set_flash_message :notice, :updated
redirect_to after_sign_in_path_for(self.resource)
else
clean_up_passwords(resource)
render_with_scope :edit
end
end

View File

@@ -4,13 +4,10 @@ class Devise::SessionsController < ApplicationController
# 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
Devise::FLASH_MESSAGES.each do |message|
set_now_flash_message :alert, message if params.try(:[], message) == "true"
end unless flash[:notice]
build_resource({})
render_with_scope :new
end
@@ -19,6 +16,8 @@ class Devise::SessionsController < ApplicationController
if resource = authenticate(resource_name)
set_flash_message :notice, :signed_in
sign_in_and_redirect(resource_name, resource, true)
elsif warden.winning_strategy && warden.result != :failure
authenticate!
else
set_now_flash_message :alert, (warden.message || :invalid)
clean_up_passwords(build_resource)
@@ -31,14 +30,4 @@ class Devise::SessionsController < ApplicationController
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