module DigitalOpera::Banker::ClassMethods
Public Instance Methods
currency_fields(*args)
click to toggle source
# 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 # define the getter method send :define_method, getter do value = send(instance_getter) banker_convert_currency(value, :to_dollars) end # define the setter method send :define_method, setter do |value| send instance_setter, banker_convert_currency(value, :to_cents) end end end