14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
# File 'lib/ascii-passport.rb', line 14
def self.build(identity = {})
identity = DEFAULT_IDENTITY.merge(identity)
identity["birthday"] = Date.new(
Date.today.year - identity["age"].to_i,
rand(12) + 1,
rand(28) + 1
).to_s
i = lambda { |key| identity[key].ljust(28) }
if identity["gender"] == "male"
<<-PASSPORT
,-------------------------------------------------------------.
| ,-------------------. |
| | _..._ | NAME: #{i["given_name"] }|
| | .d$$$$$$$b. | SURNAME: #{i["surname"] }|
| | d$$$$$$$$$$$b | |
| | d$P^""^$^""^T$b | ADDRESS: #{i["street"] }|
| | $$ $$ | #{i["city"] }|
| | $;.==. .==.:$ | |
| | :; <o>` /<o> :| | BIRTHDAY: #{i["birthday"] }|
| | :| |; | |
| | : ,_l ; | |
| | \\ .___. / | |
| | :. - .; | |
| | _.; `---' :._ | |
| |gd$$$$. .$$$$bp| |
| '^^^^^^^^=-=^^^^^^^^' |
| |
| |
|-----------------------------------+--------------+----------|
| >>>>>125KTKRST098RT>>>3>>>RS235>23| NO: #{id } | 18/03/03 |
'-----------------------------------^--------------^----------'
PASSPORT
else
<<-PASSPORT
,-------------------------------------------------------------.
| ,-------------------. |
| | _=mMMM;, | NAME: #{i["given_name"] }|
| | mt;MMHMMHm, | SURNAME: #{i["surname"] }|
| | S;`"';'`';MMm | |
| | iM|- --|Mml | ADDRESS: #{i["street"] }|
| | Im|*' l `*'$|mll | #{i["city"] }|
| | IMs L /Smll | |
| | IMS ____ lSmllL | BIRTHDAY: #{i["birthday"] }|
| | IMm\\ `--' /SMmlMl | |
| | ImMm\\____/SMMmlML | |
| | IMMMMm) |mMmmlLl| |
| | IMmKm; ;MmMmmm| |
| |[ '"'"'"' ]| |
| |___________________| |
| |
| |
| |
|-----------------------------------+--------------+----------|
| >>>>>125KTKRST098RT>>>3>>>RS235>23| NO: #{id } | 18/03/03 |
'-----------------------------------^--------------^----------'
PASSPORT
end
end
|