Class: EmailFormatValidator
- Inherits:
-
ActiveModel::EachValidator
- Object
- ActiveModel::EachValidator
- EmailFormatValidator
- Defined in:
- lib/app/validators/email_format_validator.rb
Overview
Verify the email is a valid email format based on RFC8222
Constant Summary collapse
- EMAIL_ADDRESS_REGEX =
/#{addr_list}/
Instance Method Summary collapse
Instance Method Details
#valid_email?(email, strict: false) ⇒ Boolean
60 61 62 63 64 65 66 |
# File 'lib/app/validators/email_format_validator.rb', line 60 def valid_email?(email, strict: false) if strict !!(email =~ EMAIL_ADDRESS_REGEX) else !!(email =~ /^[\S&&[^@]]+@[\S&&[^@]]+$/) end end |
#validate_each(record, attribute, value) ⇒ Object
54 55 56 57 58 |
# File 'lib/app/validators/email_format_validator.rb', line 54 def validate_each(record, attribute, value) return if valid_email?(value, strict: [:strict]) record.errors.add(attribute, message: [:message] || 'is invalid') end |