summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsetup.py2
-rw-r--r--talerdonations/donations/donations.py9
2 files changed, 10 insertions, 1 deletions
diff --git a/setup.py b/setup.py
index 906567c..042635f 100755
--- a/setup.py
+++ b/setup.py
@@ -9,7 +9,7 @@ setup(
author_email=['stanisci.m@gmail.com', 'dold@taler.net'],
license='GPL',
packages=find_packages(),
- install_requires=["Flask>=0.10", "requests", "uwsgi", "jsmin"],
+ install_requires=["Flask>=0.10", "requests", "uwsgi", "jsmin", "qrcode", "lxml"],
tests_require=["mock", "nose"],
test_suite="nose.collector",
package_data={
diff --git a/talerdonations/donations/donations.py b/talerdonations/donations/donations.py
index d4dd36d..c00844b 100644
--- a/talerdonations/donations/donations.py
+++ b/talerdonations/donations/donations.py
@@ -26,6 +26,9 @@ import random
import requests
import flask
import traceback
+import qrcode
+import qrcode.image.svg
+import lxml.etree
from ..talerconfig import TalerConfig
LOGGER = logging.getLogger(__name__)
@@ -255,6 +258,12 @@ def check_status(order_id, session_id):
return flask.jsonify(paid=pay_status["paid"])
+def get_qrcode_svg(data):
+ factory = qrcode.image.svg.SvgImage
+ img = qrcode.make(data, image_factory=factory)
+ return lxml.etree.tostring(img.get_image()).decode("utf-8")
+
+
##
# Serve the fulfillment page.
#