Sha256: a439622b23f838f5e9d60cfcdb6366fbc61f7fa0b16b05d59ec7e594a59a392d

Contents?: true

Size: 534 Bytes

Versions: 13

Compression:

Stored size: 534 Bytes

Contents

module AddressValidations
  extend ActiveSupport::Concern

  prepended do
    validates :number, presence: true, if: -> { country.iso == "BR" }
    validates :district, presence: true, if: -> { country.iso == "BR" }
    validate :compatible_zipcode_and_state

    def compatible_zipcode_and_state
      return if country.iso != "BR"
      cep = CodigoPostal.new(zipcode)
      unless cep.state_code == state.abbr
        errors.add(:base, "CEP não corresponde ao Estado")
      end
    end
  end

  ::Spree::Address.prepend self
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
solidus_brazilian_adaptations-1.4.0 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.3.3 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.3.2 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.3.1 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.3.0 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.2.0 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.1.10 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.1.9 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.1.8 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.1.7 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.1.6 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.1.5 app/overrides/address_validations.rb
solidus_brazilian_adaptations-1.1.4 app/overrides/address_validations.rb