summaryrefslogtreecommitdiff
path: root/talerbank/jinja2.py
diff options
context:
space:
mode:
Diffstat (limited to 'talerbank/jinja2.py')
-rw-r--r--talerbank/jinja2.py16
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