Module: Devise::Models::PasswordExpirable
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/devise_security_extension/models/password_expirable.rb
Overview
PasswordExpirable takes care of change password after
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
- #expire_password_after ⇒ Object
-
#need_change_password ⇒ Object
set a fake datetime so a password change is needed.
-
#need_change_password! ⇒ Object
set a fake datetime so a password change is needed and save the record.
-
#need_change_password? ⇒ Boolean
is an password change required?.
Instance Method Details
#expire_password_after ⇒ Object
43 44 45 |
# File 'lib/devise_security_extension/models/password_expirable.rb', line 43 def expire_password_after self.class.expire_password_after end |
#need_change_password ⇒ Object
set a fake datetime so a password change is needed
32 33 34 35 36 37 38 39 40 41 |
# File 'lib/devise_security_extension/models/password_expirable.rb', line 32 def need_change_password if self.expire_password_after.is_a? Fixnum or self.expire_password_after.is_a? Float self.password_changed_at = self.expire_password_after.ago end # is date not set it will set default to need set new password next login need_change_password if self.password_changed_at.nil? self.password_changed_at end |
#need_change_password! ⇒ Object
set a fake datetime so a password change is needed and save the record
24 25 26 27 28 29 |
# File 'lib/devise_security_extension/models/password_expirable.rb', line 24 def need_change_password! if self.expire_password_after.is_a? Fixnum or self.expire_password_after.is_a? Float need_change_password self.save(:validate => false) end end |
#need_change_password? ⇒ Boolean
is an password change required?
15 16 17 18 19 20 21 |
# File 'lib/devise_security_extension/models/password_expirable.rb', line 15 def need_change_password? if self.expire_password_after.is_a? Fixnum or self.expire_password_after.is_a? Float self.password_changed_at.nil? or self.password_changed_at < self.expire_password_after.ago else false end end |