14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/digital_opera/banker.rb', line 14
def currency_fields(*args)
args.each do |field_name|
getter = field_name.to_sym
setter = "#{field_name}=".to_sym
instance_getter = "#{field_name}_in_cents".to_sym
instance_setter = "#{field_name}_in_cents=".to_sym
send :define_method, getter do
value = send(instance_getter)
banker_convert_currency(value, :to_dollars)
end
send :define_method, setter do |value|
send instance_setter, banker_convert_currency(value, :to_cents)
end
end
end
|