diff options
-rwxr-xr-x | setup.py | 2 | ||||
-rw-r--r-- | talerdonations/donations/donations.py | 9 |
2 files changed, 10 insertions, 1 deletions
@@ -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. # |