class SocialSecurityNumber::Cz
SocialSecurityNumber::Cz
validates Czech birth numbers en.wikipedia.org/wiki/National_identification_number#Czech_Republic_and_Slovakia www.npmjs.com/package/rodnecislo lorenc.info/3MA381/overeni-spravnosti-rodneho-cisla.htm
Constants
- DATE_REGEXP
- MODULUS
- REGEXP
Public Instance Methods
gender()
click to toggle source
# File lib/social_security_number/country/cz.rb, line 17 def gender @gender = @parsed_civil_number[:month].to_i > 32 ? :famale : :male end
month()
click to toggle source
# File lib/social_security_number/country/cz.rb, line 21 def month @month = (@parsed_civil_number[:month].to_i % 50) % 20 end
validate()
click to toggle source
# File lib/social_security_number/country/cz.rb, line 7 def validate @error = if !check_by_regexp(REGEXP) 'bad number format' elsif !birth_date 'number birth date is invalid' elsif !check_control_sum 'number control sum invalid' end end
Private Instance Methods
check_control_sum()
click to toggle source
# File lib/social_security_number/country/cz.rb, line 32 def check_control_sum if @control_number.to_s != '' count_last_number == @control_number.to_i || (count_last_number == 10 && @control_number.to_i.zero? && @year < 1986) else true end end
count_last_number()
click to toggle source
# File lib/social_security_number/country/cz.rb, line 42 def count_last_number digit_number[0..8].to_i % MODULUS end