mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-23 07:09:39 +02:00
Multi-currency support (#425)
* Initial foundational pass at multi-currency * Default format currency * More work on currency and exchanging * Re-build currencies on change * Currency import/setup * Background job overhaul + cheaper OXR plan support * Lint fixes * Test fixes * Multi-currency setup instructions * Allow decimals in the balance field * Spacing fix for form --------- Signed-off-by: Josh Pigford <josh@joshpigford.com>
This commit is contained in:
parent
94f7b4ea8f
commit
aa351ae616
41 changed files with 634 additions and 176 deletions
|
@ -17,4 +17,37 @@ module ApplicationHelper
|
|||
content = capture &block
|
||||
render partial: "shared/modal", locals: { content: content }
|
||||
end
|
||||
|
||||
def format_currency(number, options = {})
|
||||
user_currency_preference = Current.family.try(:currency) || "USD"
|
||||
|
||||
case user_currency_preference
|
||||
when "USD"
|
||||
options.reverse_merge!(unit: "$", precision: 2, delimiter: ",", separator: ".")
|
||||
when "EUR"
|
||||
options.reverse_merge!(unit: "€", precision: 2, delimiter: ".", separator: ",")
|
||||
when "GBP"
|
||||
options.reverse_merge!(unit: "£", precision: 2, delimiter: ",", separator: ".")
|
||||
when "CAD"
|
||||
options.reverse_merge!(unit: "C$", precision: 2, delimiter: ",", separator: ".")
|
||||
when "MXN"
|
||||
options.reverse_merge!(unit: "MX$", precision: 2, delimiter: ",", separator: ".")
|
||||
when "HKD"
|
||||
options.reverse_merge!(unit: "HK$", precision: 2, delimiter: ",", separator: ".")
|
||||
when "CHF"
|
||||
options.reverse_merge!(unit: "CHF", precision: 2, delimiter: ".", separator: ",")
|
||||
when "SGD"
|
||||
options.reverse_merge!(unit: "S$", precision: 2, delimiter: ",", separator: ".")
|
||||
when "NZD"
|
||||
options.reverse_merge!(unit: "NZ$", precision: 2, delimiter: ",", separator: ".")
|
||||
when "AUD"
|
||||
options.reverse_merge!(unit: "A$", precision: 2, delimiter: ",", separator: ".")
|
||||
when "KRW"
|
||||
options.reverse_merge!(unit: "₩", precision: 0, delimiter: ",", separator: ".")
|
||||
else
|
||||
options.reverse_merge!(unit: "$", precision: 2, delimiter: ",", separator: ".")
|
||||
end
|
||||
|
||||
number_to_currency(number, options)
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue