introduce function to render currency for listing

This commit is contained in:
Adrien CLERC 2020-05-02 11:41:30 +02:00
parent 317a8ffaa6
commit ddf8007342

View file

@ -9,6 +9,7 @@ import os
import re import re
from babel import Locale from babel import Locale
from babel.numbers import get_currency_name, get_currency_symbol
from flask import current_app, redirect, render_template from flask import current_app, redirect, render_template
from flask_babel import get_locale from flask_babel import get_locale
import jinja2 import jinja2
@ -281,6 +282,16 @@ class FormEnum(Enum):
return str(self.value) 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): def render_localized_template(template_name_prefix, **context):
"""Like render_template(), but selects the right template according to the """Like render_template(), but selects the right template according to the
current user language. Fallback to English if a template for the current user language. Fallback to English if a template for the