1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-12-11 22:24:21 +01:00
fab-manager/app/models/concerns/amount_concern.rb

27 lines
574 B
Ruby
Raw Normal View History

# frozen_string_literal: true
# Read and write the amount attribute, after converting to/from cents.
2016-07-05 12:30:52 +02:00
module AmountConcern
extend ActiveSupport::Concern
included do
validates_numericality_of :amount, greater_than_or_equal_to: 0
def amount=(amount)
if amount.nil?
write_attribute(:amount, amount)
else
2016-07-11 16:04:15 +02:00
write_attribute(:amount, (amount * 100).to_i)
2016-07-05 12:30:52 +02:00
end
end
def amount
if read_attribute(:amount).blank?
read_attribute(:amount)
else
read_attribute(:amount) / 100.0
end
end
end
end