summaryrefslogtreecommitdiff
path: root/talermerchantdemos
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2021-10-29 11:28:20 +0200
committerFlorian Dold <florian@dold.me>2021-10-29 11:28:20 +0200
commit4818dba4fcddc7c9e6deace6f44876ef29cb1bf4 (patch)
tree0c33c2671c5e653cd7187885b708d84d3bc00ca3 /talermerchantdemos
parented242c8f677c99aa5986bc5dabc337c72b76b623 (diff)
downloadtaler-merchant-demos-4818dba4fcddc7c9e6deace6f44876ef29cb1bf4.tar.gz
taler-merchant-demos-4818dba4fcddc7c9e6deace6f44876ef29cb1bf4.tar.bz2
taler-merchant-demos-4818dba4fcddc7c9e6deace6f44876ef29cb1bf4.zip
use poetry
Diffstat (limited to 'talermerchantdemos')
l---------talermerchantdemos/blog/articles/pt_BR1
-rw-r--r--talermerchantdemos/cli.py149
-rw-r--r--talermerchantdemos/translations/pt_BR/LC_MESSAGES/messages.po600
3 files changed, 149 insertions, 601 deletions
diff --git a/talermerchantdemos/blog/articles/pt_BR b/talermerchantdemos/blog/articles/pt_BR
deleted file mode 120000
index 9e3340e..0000000
--- a/talermerchantdemos/blog/articles/pt_BR
+++ /dev/null
@@ -1 +0,0 @@
-pt \ No newline at end of file
diff --git a/talermerchantdemos/cli.py b/talermerchantdemos/cli.py
new file mode 100644
index 0000000..fd836c6
--- /dev/null
+++ b/talermerchantdemos/cli.py
@@ -0,0 +1,149 @@
+##
+# This file is part of GNU Taler
+# (C) 2017,2021 Taler Systems S.A.
+#
+# GNU Taler is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Affero General Public
+# License as published by the Free Software Foundation; either
+# version 3, or (at your option) any later version.
+#
+# GNU Taler is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public
+# License along with GNU Taler; see the file COPYING. If not,
+# see <http://www.gnu.org/licenses/>
+#
+# @author Florian Dold
+# @file Standalone script to run the blog.
+
+import click
+import logging
+import argparse
+import sys
+import os
+import site
+from taler.util.talerconfig import TalerConfig, ConfigurationError
+
+LOGGER = logging.getLogger(__name__)
+# No perfect match to our logging format, but good enough ...
+UWSGI_LOGFMT = "%(ltime) %(proto) %(method) %(uri) %(proto) => %(status)"
+
+# Argument to tell uWSGI to load the python plugin.
+# This hack is required, because on systems where the plugin is statically linked,
+# loading it causes an error.
+arg_load_python = "--if-not-plugin python --plugins python --endif".split(" ")
+
+##
+# This function interprets the 'serve-uwsgi' subcommand.
+# The effect is to launch the blog UWSGI service. This
+# type of service is usually used when the HTTP blog interface
+# is accessed via a reverse proxy (like Nginx, for example).
+#
+# @param command line options.
+def handle_serve_uwsgi(config, which_shop):
+ serve_uwsgi = config[which_shop]["uwsgi_serve"].value_string(required=True).lower()
+ params = [
+ "uwsgi",
+ "uwsgi",
+ *arg_load_python,
+ "--master",
+ "--die-on-term",
+ "--log-format",
+ UWSGI_LOGFMT,
+ "--module",
+ "talermerchantdemos.{}:app".format(which_shop),
+ "--need-app",
+ "--cache2",
+ "name=paid_articles,items=500",
+ ]
+ if serve_uwsgi == "tcp":
+ port = config[which_shop]["uwsgi_port"].value_int(required=True)
+ spec = ":%d" % (port,)
+ params.extend(["--socket", spec])
+ elif serve_uwsgi == "unix":
+ spec = config[which_shop]["uwsgi_unixpath"].value_filename(required=True)
+ mode = config[which_shop]["uwsgi_unixpath_mode"].value_filename(required=True)
+ params.extend(["--socket", spec])
+ params.extend(["--chmod-socket=" + mode])
+ os.makedirs(os.path.dirname(spec), exist_ok=True)
+ logging.info("launching uwsgi with argv %s", params[1:])
+ try:
+ os.execlp(*params)
+ except:
+ sys.stderr.write(
+ "Failed to start uwsgi. Please make sure to install uwsgi for Python3."
+ )
+ sys.exit(1)
+
+
+##
+# This function interprets the 'serve-http' subcommand.
+# The effect it to launch the blog HTTP service.
+#
+# @param args command line options.
+def handle_serve_http(config, which_shop, port=None):
+ if port is None:
+ port = config[which_shop]["http_port"].value_int(required=True)
+ if port is None:
+ print("'http_port' configuration option is missing")
+ exit(1)
+ spec = ":%d" % (port,)
+ try:
+ os.execlp(
+ "uwsgi",
+ "uwsgi",
+ *arg_load_python,
+ "--master",
+ "--die-on-term",
+ "--log-format",
+ UWSGI_LOGFMT,
+ "--http",
+ spec,
+ "--module",
+ "talermerchantdemos.{}:app".format(which_shop),
+ )
+ except:
+ sys.stderr.write(
+ "Failed to start uwsgi. Please make sure to install uwsgi for Python3."
+ )
+ sys.exit(1)
+
+
+def handle_serve_from_config(config_obj, which_shop):
+ try:
+ if (
+ config_obj.value_string(which_shop, "serve", required=True).lower()
+ == "http"
+ ):
+ return handle_serve_http(config_obj, which_shop)
+ handle_serve_uwsgi(config_obj, which_shop)
+ except ConfigurationError as ce:
+ print(ce)
+ exit(1)
+
+
+@click.command("Global shop launcher")
+@click.option("-c", "--config", help="Configuration file", required=False)
+@click.option(
+ "--http-port",
+ help="HTTP port to serve (if not given, serving comes from config)",
+ required=False,
+ type=int,
+)
+@click.argument("which-shop")
+def demos(config, http_port, which_shop):
+ """WHICH_SHOP is one of: blog, donations, survey or landing."""
+
+ if which_shop not in ["blog", "donations", "landing", "survey"]:
+ print("Please use a valid shop name: blog, donations, landing, survey.")
+ sys.exit(1)
+ config_obj = TalerConfig.from_file(config)
+ if http_port:
+ return handle_serve_http(config_obj, which_shop, http_port)
+ handle_serve_from_config(config_obj, which_shop)
+
+
+demos()
diff --git a/talermerchantdemos/translations/pt_BR/LC_MESSAGES/messages.po b/talermerchantdemos/translations/pt_BR/LC_MESSAGES/messages.po
deleted file mode 100644
index 33e0e18..0000000
--- a/talermerchantdemos/translations/pt_BR/LC_MESSAGES/messages.po
+++ /dev/null
@@ -1,600 +0,0 @@
-# Portuguese (Brazil) translations for PROJECT.
-# Copyright (C) 2021 ORGANIZATION
-# This file is distributed under the same license as the PROJECT project.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2021.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: PROJECT VERSION\n"
-"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2021-06-11 07:56+0200\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: Automatically generated\n"
-"Language: pt_BR\n"
-"Language-Team: none\n"
-"Plural-Forms: nplurals=2; plural=(n > 1)\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Generated-By: Babel 2.9.0\n"
-
-#: talermerchantdemos/blog/blog.py:126 talermerchantdemos/landing/landing.py:93
-msgid "Internal error"
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:186
-msgid "Cannot refund unpaid article"
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:193
-msgid "Article is not anymore refundable"
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:229
-msgid "You did not pay for this article (nice try!)"
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:234
-msgid "Item not refundable (anymore)"
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:260
-msgid "Internal error: Files for article ({}) not found."
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:267
-msgid "Supplemental file ({}) for article ({}) not found."
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:345 talermerchantdemos/blog/blog.py:359
-msgid "Direct access forbidden"
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:411
-msgid "Internal server error"
-msgstr ""
-
-#: talermerchantdemos/blog/blog.py:419
-#: talermerchantdemos/donations/donations.py:284
-#: talermerchantdemos/landing/landing.py:166
-#: talermerchantdemos/survey/survey.py:162
-msgid "Page not found"
-msgstr ""
-
-#: talermerchantdemos/donations/donations.py:125
-msgid "parameter '{}' required"
-msgstr ""
-
-#: talermerchantdemos/donations/donations.py:242
-msgid "Backend could not create the order"
-msgstr ""
-
-#: talermerchantdemos/httpcommon/__init__.py:40
-#: talermerchantdemos/httpcommon/__init__.py:80
-msgid "Could not establish connection to backend"
-msgstr ""
-
-#: talermerchantdemos/httpcommon/__init__.py:46
-#: talermerchantdemos/httpcommon/__init__.py:85
-msgid "Could not parse response from backend"
-msgstr ""
-
-#: talermerchantdemos/httpcommon/__init__.py:51
-#: talermerchantdemos/httpcommon/__init__.py:88
-msgid "Backend returned error status"
-msgstr ""
-
-#: talermerchantdemos/landing/landing.py:174
-#: talermerchantdemos/survey/survey.py:170
-msgid "HTTP method not allowed for this page"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-article-frame.html.j2:11
-#: talermerchantdemos/templates/blog-article-frame.html.j2:16
-msgid "Taler allows merchants to offer refunds to customers."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-article-frame.html.j2:12
-msgid ""
-"You can <a href=\"{url}\">request a refund</a> within the first hour "
-"after buying this article."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-article-frame.html.j2:17
-msgid "This article can't be refunded anymore."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-base.html.j2:9
-msgid "Essay shop"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-base.html.j2:11
-msgid "On this page you can buy articles using an imaginary currency."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-base.html.j2:12
-msgid ""
-"The articles are chapters from Richard Stallman's book &quot;Free "
-"Software, Free Society&quot;."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-base.html.j2:13
-msgid ""
-"The book is <a href=\"{shop}\">published by the FSF</a> and available "
-"gratis at <a href=\"{gnu}\">gnu.org</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-confirm-refund.html.j2:3
-msgid "Confirm refund request for article"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-confirm-refund.html.j2:7
-msgid "Do you want to get a refund for the article <em>{name}</em>?"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-confirm-refund.html.j2:8
-msgid ""
-"In this demonstration, refunds will be automatically approved by the "
-"merchant."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-confirm-refund.html.j2:9
-msgid ""
-"After you have obtained a refund, you will not be able to read the "
-"article anymore."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-confirm-refund.html.j2:15
-msgid ""
-"You will only be able to receive the refund on the same wallet that you "
-"have used to pay for this article originally."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-confirm-refund.html.j2:21
-msgid "Request refund"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-error.html.j2:3
-#: talermerchantdemos/templates/donations-error.html.j2:3
-#: talermerchantdemos/templates/landing-error.html.j2:3
-#: talermerchantdemos/templates/survey-error.html.j2:3
-msgid "Error encountered"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-error.html.j2:9
-#: talermerchantdemos/templates/donations-error.html.j2:9
-#: talermerchantdemos/templates/survey-error.html.j2:9
-msgid "The backend returned status code {code}."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-error.html.j2:14
-#: talermerchantdemos/templates/donations-error.html.j2:14
-#: talermerchantdemos/templates/survey-error.html.j2:14
-msgid "Backend response:"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-error.html.j2:19
-#: talermerchantdemos/templates/donations-error.html.j2:19
-#: talermerchantdemos/templates/landing-error.html.j2:8
-#: talermerchantdemos/templates/survey-error.html.j2:19
-msgid "Stack trace:"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:3
-msgid "Essay Shop: Free Software, Free Society"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:5
-msgid ""
-"This is the latest edition of <cite>Free Software, Free Society: Selected"
-" Essays of Richard M. Stallman.</cite>"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:13
-msgid ""
-"Verbatim copying and distribution of this entire book are permitted "
-"worldwide, without royalty, in any medium, provided this notice is "
-"preserved. Permission is granted to copy and distribute translations of "
-"this book from the original English into another language provided the "
-"translation has been approved by the Free Software Foundation and the "
-"copyright notice and this permission notice are preserved on all copies."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:18
-msgid "Chapters"
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:20
-msgid "Click on an individual chapter to to purchase it with GNU Taler."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:21
-msgid ""
-"You can get free, virtual money to buy articles on this page at the <a "
-"href=\"{}\")\">bank</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:28
-msgid "Pay to read more..."
-msgstr ""
-
-#: talermerchantdemos/templates/blog-index.html.j2:31
-msgid "No articles available in this language."
-msgstr ""
-
-#: talermerchantdemos/templates/common-base.html.j2:20
-msgid "GNU Taler Demo"
-msgstr ""
-
-#: talermerchantdemos/templates/common-base.html.j2:44
-#: talermerchantdemos/templates/landing-base.html.j2:5
-msgid "Introduction"
-msgstr ""
-
-#: talermerchantdemos/templates/common-base.html.j2:47
-msgid "Bank"
-msgstr ""
-
-#: talermerchantdemos/templates/common-base.html.j2:50
-msgid "Essay Shop"
-msgstr ""
-
-#: talermerchantdemos/templates/common-base.html.j2:53
-#: talermerchantdemos/templates/donations-base.html.j2:6
-msgid "Donations"
-msgstr ""
-
-#: talermerchantdemos/templates/common-base.html.j2:56
-msgid "Tipping/Survey"
-msgstr ""
-
-#: talermerchantdemos/templates/common-base.html.j2:85
-msgid ""
-"You can learn more about GNU Taler on our main <a "
-"href=\"{site}\">website</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-base.html.j2:8
-msgid "This is the donation page."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-base.html.j2:9
-msgid ""
-"Using this page you can make donations in {currency} to Free Software "
-"projects."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:5
-msgid "Select your payment method"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:9
-msgid "This is an example for a \"checkout\" page of a Web shop."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:10
-msgid ""
-"On the previous page, you have created the shopping cart and decided "
-"which product to buy (i.e. which project to donate KUDOS to)."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:11
-msgid ""
-"As Taler is not yet universally used, we expect merchants will offer "
-"various payment options."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:12
-msgid "To continue with the demo, select the &quot;Taler&quot; payment option."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:17
-msgid ""
-"Note that you must select Taler here for the demo to continue, as the "
-"other payment options are just placeholders and not really working in the"
-" demonstration."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:18
-msgid ""
-"It would be possible to ask the user to make this choice already on the "
-"previous page (with the shopping cart); we just separated the two steps "
-"to keep each step as simple as possible."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-checkout.html.j2:44
-msgid "Confirm selection"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-fulfillment.html.j2:4
-msgid "Donation Receipt"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-fulfillment.html.j2:7
-msgid ""
-"Thank you, <strong>{donor}</strong>, for donating "
-"<strong>{amount}</strong> to <strong>{receiver}</strong>."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-fulfillment.html.j2:12
-msgid ""
-"Please keep the order identifier <strong>{id}</strong> as a receipt for "
-"your donation."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-fulfillment.html.j2:13
-msgid ""
-"You can show other people that you donated by sharing <a "
-"href=\"{link}\">this link</a> with them."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-fulfillment.html.j2:19
-msgid "You can always make <a href=\"{link}\">another donation</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-index.html.j2:4
-msgid "Donate to Free Software projects"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-index.html.j2:8
-msgid ""
-"This donations website shows the user experience for donations with GNU "
-"Taler."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-index.html.j2:9
-msgid "You can make donations in an toy currency ({currency})"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-index.html.j2:16
-msgid ""
-"Please select a project, the amount (*) of {currency} you wish to donate,"
-" and enter the donor's name that will appear on your receipt:"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-index.html.j2:33
-msgid "Anonymous Donor"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-index.html.j2:34
-msgid "Donate!"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-index.html.j2:39
-msgid ""
-"(*) To make the demo a bit more interesting, the 5 {currency} option is "
-"deliberately implemented with a fault: the merchant will try to make you "
-"donate 6 {currency} instead of the 5 {currency} shown in the form. But "
-"do not worry, you will be given the opportunity to review the final offer"
-" from the merchant in the Taler wallet. That way, Taler protects you "
-"from committing to erroneous payments."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-provider-not-supported.html.j2:4
-msgid "Payment Provider Not Supported"
-msgstr ""
-
-#: talermerchantdemos/templates/donations-provider-not-supported.html.j2:7
-msgid "Unfortunately the selected payment provider is not supported in this demo."
-msgstr ""
-
-#: talermerchantdemos/templates/donations-provider-not-supported.html.j2:8
-msgid "Please go back and select &quot;Taler&quot;."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-base.html.j2:7
-msgid "This is the GNU Taler demo."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-base.html.j2:8
-msgid "Here you can try out the GNU Taler payment system using a toy currency."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:4
-msgid "Step 1: Install the Taler wallet"
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:7
-msgid "Install the wallet from the <a href=\"{link}\">installation page</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:8
-msgid "Installation only takes one click."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:12
-msgid ""
-"After installation, you may be asked to grant the browser-based Taler "
-"wallet additional optional permissions that allow it to improve your user"
-" experience."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:13
-msgid ""
-"These permissions will allow the wallet to automatically open if a page "
-"asks for a Taler payment."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:14
-msgid ""
-"Regardless of the permissions you grant, the wallet will never transmit "
-"information about you or your browsing history to anyone."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:19
-msgid "Step 2: Withdraw coins"
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:22
-msgid "In this demo you are paying with {currency}, an imaginary currency."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:23
-msgid ""
-"To withdraw {currency} coins you must first create an account at our <a "
-"href=\"{bank}\">bank</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:24
-msgid "Signing up only requires you to pick a username and password."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:25
-msgid ""
-"When you create an account at our bank, you will be credited 100 "
-"{currency} for signing up."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:26
-msgid ""
-"Afterwards, use the bank's Web interface to authorize the transfer of "
-"{currency} to your wallet."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:30
-msgid ""
-"Once you have completed this step, you can click on the Taler icon in "
-"your browser to check your balance."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:35
-msgid "Step 3: Pay"
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:38
-msgid "We have two demo merchants where you can spend your coins:"
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:44
-msgid ""
-"At the <a href=\"{blog}\">essay store</a> you can pay in {currency} for "
-"individual chapters of Richard Stallman&#39;s book &quot;Free Software, "
-"Free Society&quot;."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:45
-msgid "The book is also available for free at <a href=\"{fsf}\">the FSF</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:50
-msgid ""
-"At the project <a href=\"{donations}\">donation website</a> you can show "
-"respect to a software project of your choice by donating {currency} to "
-"them."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:56
-msgid "Step 4: Check money flow"
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:59
-msgid ""
-"You can see the wire transfers from the escrow account of the exchange to"
-" the merchants on the <a href=\"{bank}\">public accounts page</a> of the "
-"bank."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:60
-msgid ""
-"Note that only accounts configured to be publicly viewable are shown on "
-"that page."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:65
-msgid "Step 5: Survey"
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:68
-msgid "Websites can give tips to visitors for completing tasks."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:69
-msgid ""
-"You can earn some {currency} coins by filling in our <a "
-"href=\"{url}\">survey</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:81
-msgid "Step 6: Reach out to us"
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:84
-msgid "We appreciate feedback about Taler and this demonstrator."
-msgstr ""
-
-#: talermerchantdemos/templates/landing-index.html.j2:85
-msgid "Let us know what you think by <a href=\"{link}\">contacting us</a>."
-msgstr ""
-
-#: talermerchantdemos/templates/survey-base.html.j2:6
-msgid "Survey"
-msgstr ""
-
-#: talermerchantdemos/templates/survey-base.html.j2:8
-msgid "This page demonstrates how to tip visitors for completing small tasks."
-msgstr ""
-
-#: talermerchantdemos/templates/survey-base.html.j2:9
-msgid ""
-"Tipping is a way for offer cash rewards that go directly into a user's "
-"wallet."
-msgstr ""
-
-#: talermerchantdemos/templates/survey-index.html.j2:6
-msgid ""
-"Please participate in our survey about payment systems and receive a tip "
-"in return."
-msgstr ""
-
-#: talermerchantdemos/templates/survey-index.html.j2:12
-msgid "Which payment system do you prefer?"
-msgstr ""
-
-#: talermerchantdemos/templates/survey-index.html.j2:23
-msgid "Submit Survey"
-msgstr ""
-
-#~ msgid "English [en]"
-#~ msgstr ""
-
-#~ msgid "Spanish [es]"
-#~ msgstr ""
-
-#~ msgid "German [de]"
-#~ msgstr ""
-
-#~ msgid "Swedish [sv]"
-#~ msgstr ""
-
-#~ msgid "GNU Taler Demo: Essay Shop"
-#~ msgstr ""
-
-#~ msgid "Taler Demo"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "You can get free, virtual money to"
-#~ " buy articles on this page at "
-#~ "the <a href=\"{}\")\">bank</a>"
-#~ msgstr ""
-
-#~ msgid "Back-office"
-#~ msgstr ""
-
-#~ msgid "GNU Taler Demo: Donations"
-#~ msgstr ""
-
-#~ msgid "GNU Taler Demo: Introduction"
-#~ msgstr ""
-
-#~ msgid ""
-#~ "You can see the wire transfers "
-#~ "from the escrow account of the "
-#~ "exchange to the merchants on the "
-#~ "<a href=\"{bank}/public-accounts\">public accounts"
-#~ " page</a> of the bank."
-#~ msgstr ""
-
-#~ msgid "GNU Taler Demo: Survey"
-#~ msgstr ""
-