diff --git a/ihatemoney/utils.py b/ihatemoney/utils.py index 7fdad61a..6a94ae2e 100644 --- a/ihatemoney/utils.py +++ b/ihatemoney/utils.py @@ -9,6 +9,7 @@ import os import re from babel import Locale +from babel.numbers import get_currency_name, get_currency_symbol from flask import current_app, redirect, render_template from flask_babel import get_locale import jinja2 @@ -281,6 +282,16 @@ class FormEnum(Enum): return str(self.value) +def render_localized_currency(code): + locale = get_locale() or "en_US" + symbol = get_currency_symbol(code, locale=locale) + l10n_name = get_currency_name(code, locale=locale) + if symbol == code: + return f"{code} - {l10n_name}" + else: + return f"{code} - {symbol} - {l10n_name}" + + def render_localized_template(template_name_prefix, **context): """Like render_template(), but selects the right template according to the current user language. Fallback to English if a template for the