diff options
author | Marcello Stanisci <stanisci.m@gmail.com> | 2019-02-08 17:23:03 +0100 |
---|---|---|
committer | Marcello Stanisci <stanisci.m@gmail.com> | 2019-03-29 18:06:26 +0100 |
commit | efd3fa0187f9985537407f243ed6e0eeb89e73ed (patch) | |
tree | c3cf2364ee22ae93a71a84b46c0f2940cefa5114 /talerbank/jinja2.py | |
parent | 95bf6b05ea4591411d183217d5853e2207b9ea72 (diff) | |
download | bank-efd3fa0187f9985537407f243ed6e0eeb89e73ed.tar.gz bank-efd3fa0187f9985537407f243ed6e0eeb89e73ed.tar.bz2 bank-efd3fa0187f9985537407f243ed6e0eeb89e73ed.zip |
5543. Let Jinja render abnormal balances.
Diffstat (limited to 'talerbank/jinja2.py')
-rw-r--r-- | talerbank/jinja2.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/talerbank/jinja2.py b/talerbank/jinja2.py index b646162..9c2c52e 100644 --- a/talerbank/jinja2.py +++ b/talerbank/jinja2.py @@ -20,6 +20,7 @@ # @brief Extends the Jinja2 API with custom functions. import os +import math from urllib.parse import urlparse from django.urls import reverse, get_script_prefix from django.conf import settings @@ -108,6 +109,19 @@ def env_get(name, default=None): # # @param options opaque argument (?) given from the caller. # @return Jinja2-specific object that contains the new definitions. +def is_valid_amount(amount): + if math.isnan(amount.value): + return False + + +## +# Stringifies amount. +# +# @param amount amount object. +# @return amount pretty string. +def amount_stringify(amount): + return amount.stringify(settings.TALER_DIGITS, pretty=True) + def environment(**options): env = Environment(**options) env.globals.update({ @@ -115,5 +129,7 @@ def environment(**options): 'url': url, 'settings_value': settings_value, 'env': env_get, + 'is_valid_amount': is_valid_amount + 'amount_stringify': amount_stringify }) return env |