Sha256: 89d9da3297305b0e01c88f767600467edd4bd78f90e79451285a91245b914319

Contents?: true

Size: 468 Bytes

Versions: 3

Compression:

Stored size: 468 Bytes

Contents

class TaxIdBr

  attr_reader :document_type, :formatted
  def initialize tax_id
    create_document tax_id
  end

  def valid?
    @valid
  end

  private
  def create_document tax_id
    cpf = CPF.new(tax_id)
    cnpj = CNPJ.new(tax_id)
    @valid = true
    if cpf.valid?
      @document_type = :cpf
      @formatted = cpf.formatted
    elsif cnpj.valid?
      @document_type = :cnpj
      @formatted = cnpj.formatted
    else
      @valid = false
    end
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
solidus_brazilian_adaptations-1.0.3 app/modules/tax_id_br.rb
solidus_brazilian_adaptations-1.0.1 app/modules/tax_id_br.rb
solidus_brazilian_adaptations-1.0.0 app/modules/tax_id_br.rb