Module: PasswordSecurity::ModelExtension::ClassMethods

Defined in:
lib/password_security/model_extension.rb

Overview

ClassMethods

Instance Method Summary collapse

Instance Method Details

#validates_password_strength(field_name) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
# File 'lib/password_security/model_extension.rb', line 13

def validates_password_strength(field_name)
  validate do
    password = send(field_name)

    next if password.blank?

    unless password.length >= 14 && password =~ /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[@$!%*?&])/
      errors.add field_name, I18n.t("errors.messages.password_strength")
    end
  end
end