Sha256: 0a4f7cccde2b08b556e9678a28de84e8b226c8427edfab5b2440ad5612fda4c1

Contents?: true

Size: 677 Bytes

Versions: 23

Compression:

Stored size: 677 Bytes

Contents

# frozen_string_literal: true

module Spree
  # == An ActiveModel Email Validator
  #
  # === Usage
  #
  #     require 'spree/core/validators/email'
  #
  #     class Person < ApplicationRecord
  #       validates :email_address, 'spree/email' => true
  #     end
  #
  class EmailValidator < ActiveModel::EachValidator
    EMAIL_REGEXP = URI::MailTo::EMAIL_REGEXP
    # Use Spree::Config.default_email_regexp instead
    deprecate_constant :EMAIL_REGEXP

    def validate_each(record, attribute, value)
      unless Spree::Config.default_email_regexp.match? value
        record.errors.add(attribute, :invalid, **{ value: value }.merge!(options))
      end
    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
solidus_core-3.4.6 lib/spree/core/validators/email.rb
solidus_core-3.4.5 lib/spree/core/validators/email.rb
solidus_core-3.4.4 lib/spree/core/validators/email.rb
solidus_core-3.3.4 lib/spree/core/validators/email.rb
solidus_core-3.2.9 lib/spree/core/validators/email.rb
solidus_core-3.2.8 lib/spree/core/validators/email.rb
solidus_core-3.3.3 lib/spree/core/validators/email.rb
solidus_core-3.4.3 lib/spree/core/validators/email.rb
solidus_core-3.4.2 lib/spree/core/validators/email.rb
solidus_core-3.2.7 lib/spree/core/validators/email.rb
solidus_core-3.3.2 lib/spree/core/validators/email.rb
solidus_core-3.4.1 lib/spree/core/validators/email.rb
solidus_core-3.4.0 lib/spree/core/validators/email.rb
solidus_core-3.3.1 lib/spree/core/validators/email.rb
solidus_core-3.2.6 lib/spree/core/validators/email.rb
solidus_core-3.3.0 lib/spree/core/validators/email.rb
solidus_core-3.2.5 lib/spree/core/validators/email.rb
solidus_core-3.2.4 lib/spree/core/validators/email.rb
solidus_core-3.2.3 lib/spree/core/validators/email.rb
solidus_core-3.2.2 lib/spree/core/validators/email.rb