module BrDocuments::Commons::Mod11

Public Instance Methods

generate_check_digit(values, weights) click to toggle source
# File lib/br_documents/commons/mod11.rb, line 4
def generate_check_digit(values, weights)
  sum = reduce_weights(values, weights)
  mod = sum % 11
  mod < 2 ? 0 : (11 - mod)
end
reduce_weights(values, weights) click to toggle source
# File lib/br_documents/commons/mod11.rb, line 10
def reduce_weights(values, weights)
  sum = 0
  weights.each_index do |i|
    sum += weights[i] * values[i].to_i
  end
  sum
end