Class: TN::Validator

Inherits:
Object
  • Object
show all
Defined in:
lib/tn_validator.rb

Constant Summary collapse

MASK =
/(?<prefix>[a-z]{2})(?<number>\d{8})(?<crc>\d)(?<suffix>[a-z]{2})/i

Class Method Summary collapse

Class Method Details

.calc_crc(number) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/tn_validator.rb', line 13

def calc_crc number
	crc = 
		number[0].to_i * 8 + 
		number[1].to_i * 6 + 
		number[2].to_i * 4 + 
		number[3].to_i * 2 + 
		number[4].to_i * 3 + 
		number[5].to_i * 5 + 
		number[6].to_i * 9 + 
		number[7].to_i * 7
	crc = crc % 11
	11 - crc
end

.valid?(number) ⇒ Boolean

Returns:

  • (Boolean)


8
9
10
11
12
# File 'lib/tn_validator.rb', line 8

def valid? number
	r = check number
	{ result: r == :OK, code: r, msg: Message.msg(r)}

end