Class: Devise::PasswordsController
- Inherits:
-
DeviseController
- Object
- DeviseController
- Devise::PasswordsController
- Defined in:
- app/controllers/devise/passwords_controller.rb
Instance Method Summary collapse
- #after_resetting_password_path_for(resource) ⇒ Object protected
-
#after_sending_reset_password_instructions_path_for(resource_name) ⇒ Object
protected
The path used after sending reset password instructions.
-
#assert_reset_token_passed ⇒ Object
protected
Check if a reset_password_token is provided in the request.
-
#create {|resource| ... } ⇒ Object
POST /resource/password.
-
#edit ⇒ Object
GET /resource/password/edit?reset_password_token=abcdef.
-
#new ⇒ Object
GET /resource/password/new.
- #translation_scope ⇒ Object protected
-
#unlockable?(resource) ⇒ Boolean
protected
Check if proper Lockable module methods are present & unlock strategy allows to unlock resource on password reset.
-
#update {|resource| ... } ⇒ Object
PUT /resource/password.
Instance Method Details
#after_resetting_password_path_for(resource) ⇒ Object (protected)
55 56 57 |
# File 'app/controllers/devise/passwords_controller.rb', line 55 def after_resetting_password_path_for(resource) resource_class.sign_in_after_reset_password ? after_sign_in_path_for(resource) : new_session_path(resource_name) end |
#after_sending_reset_password_instructions_path_for(resource_name) ⇒ Object (protected)
The path used after sending reset password instructions
60 61 62 |
# File 'app/controllers/devise/passwords_controller.rb', line 60 def after_sending_reset_password_instructions_path_for(resource_name) new_session_path(resource_name) if end |
#assert_reset_token_passed ⇒ Object (protected)
Check if a reset_password_token is provided in the request
65 66 67 68 69 70 |
# File 'app/controllers/devise/passwords_controller.rb', line 65 def assert_reset_token_passed if params[:reset_password_token].blank? (:alert, :no_token) redirect_to new_session_path(resource_name) end end |
#create {|resource| ... } ⇒ Object
POST /resource/password
14 15 16 17 18 19 20 21 22 23 |
# File 'app/controllers/devise/passwords_controller.rb', line 14 def create self.resource = resource_class.send_reset_password_instructions(resource_params) yield resource if block_given? if successfully_sent?(resource) respond_with({}, location: after_sending_reset_password_instructions_path_for(resource_name)) else respond_with(resource) end end |
#edit ⇒ Object
GET /resource/password/edit?reset_password_token=abcdef
26 27 28 29 30 |
# File 'app/controllers/devise/passwords_controller.rb', line 26 def edit self.resource = resource_class.new set_minimum_password_length resource.reset_password_token = params[:reset_password_token] end |
#new ⇒ Object
GET /resource/password/new
9 10 11 |
# File 'app/controllers/devise/passwords_controller.rb', line 9 def new self.resource = resource_class.new end |
#translation_scope ⇒ Object (protected)
80 81 82 |
# File 'app/controllers/devise/passwords_controller.rb', line 80 def translation_scope 'devise.passwords' end |
#unlockable?(resource) ⇒ Boolean (protected)
Check if proper Lockable module methods are present & unlock strategy allows to unlock resource on password reset
74 75 76 77 78 |
# File 'app/controllers/devise/passwords_controller.rb', line 74 def unlockable?(resource) resource.respond_to?(:unlock_access!) && resource.respond_to?(:unlock_strategy_enabled?) && resource.unlock_strategy_enabled?(:email) end |
#update {|resource| ... } ⇒ Object
PUT /resource/password
33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'app/controllers/devise/passwords_controller.rb', line 33 def update self.resource = resource_class.reset_password_by_token(resource_params) yield resource if block_given? if resource.errors.empty? resource.unlock_access! if unlockable?(resource) if resource_class.sign_in_after_reset_password = resource.active_for_authentication? ? :updated : :updated_not_active (:notice, ) resource.after_database_authentication sign_in(resource_name, resource) else (:notice, :updated_not_active) end respond_with resource, location: after_resetting_password_path_for(resource) else set_minimum_password_length respond_with resource end end |