class Valvat::Checksum::CY

Public Instance Methods

check_digit() click to toggle source
# File lib/valvat/checksum/cy.rb, line 6
def check_digit
  odd_position_digit_values = [1, 0, 5, 7, 9, 13, 15, 17, 19, 21]

  sum = sum_figures_by do |digit, index|
    (8 - index).odd? ? odd_position_digit_values[digit] : digit
  end

  ('a'..'z').to_a[sum % 26]
end
given_check_digit() click to toggle source
# File lib/valvat/checksum/cy.rb, line 16
def given_check_digit
  given_check_digit_str.downcase
end