Sha256: 2ddffc9e0c9f8c2b3bb8da654ccfce33b54c21f841c52e895631925f6ff341da

Contents?: true

Size: 505 Bytes

Versions: 14

Compression:

Stored size: 505 Bytes

Contents

# config/initializers/email_validator.rb
class EmailValidator < ActiveModel::EachValidator
  def validate_each(record, attr_name, value)
    unless value =~ /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
      record.errors.add(attr_name, :email, options.merge(:value => value))
    end
  end
end

# This allows us to assign the validator in the model
module ActiveModel::Validations::HelperMethods
  def validates_email(*attr_names)
    validates_with EmailValidator, _merge_attributes(attr_names)
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
sbdevcore-0.2.15 config/initializers/custom_validators.rb
sbdevcore-0.2.14 config/initializers/custom_validators.rb
sbdevcore-0.2.13 config/initializers/custom_validators.rb
sbdevcore-0.2.12 config/initializers/custom_validators.rb
sbdevcore-0.2.11 config/initializers/custom_validators.rb
sbdevcore-0.2.10 config/initializers/custom_validators.rb
sbdevcore-0.2.9 config/initializers/custom_validators.rb
sbdevcore-0.2.8 config/initializers/custom_validators.rb
sbdevcore-0.2.7 config/initializers/custom_validators.rb
sbdevcore-0.2.6 config/initializers/custom_validators.rb
sbdevcore-0.2.5 config/initializers/custom_validators.rb
sbdevcore-0.2.4 config/initializers/custom_validators.rb
sbdevcore-0.2.2 config/initializers/custom_validators.rb
sbdevcore-0.2.0 config/initializers/custom_validators.rb