module SmartCurrency::InstanceMethods

Public Instance Methods

currency_to_db(string) click to toggle source
# File lib/smart_currency.rb, line 39
def currency_to_db(string)
  if string.is_a?(String)
    return (string.gsub(/\./, '').gsub(/,/, '.')).to_f
  elsif string.nil?
    return 0
  else
    return string
  end
end
currency_to_view(decimal) click to toggle source
# File lib/smart_currency.rb, line 49
def currency_to_view(decimal)
  if !decimal.nil?
    str = decimal.to_s.split(".")
    str[1] = "0" unless str[1]
    if str[1].size == 1
      str[1] += "0"
    end
    if str[0].size == 5 || str[0].size == 6
      str[0].gsub!(/\B([0-9]{3})\b/,'.\1')
    elsif str[0].size > 7
      str[0].gsub!(/([0-9]{3})\b/,'.\1').gsub!(/([0-9]{3}\.)/, '.\1')
    else
      str[0].gsub!(/\B([0-9]{3})/,'.\1')
    end

    return (str[0] + "," + str[1]).to_s
  else
    return "keine Angabe"
  end
end