summaryrefslogtreecommitdiff
path: root/talermerchantdemos/survey/survey.py
diff options
context:
space:
mode:
Diffstat (limited to 'talermerchantdemos/survey/survey.py')
-rw-r--r--talermerchantdemos/survey/survey.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/talermerchantdemos/survey/survey.py b/talermerchantdemos/survey/survey.py
index fbdbf25..1f0fffb 100644
--- a/talermerchantdemos/survey/survey.py
+++ b/talermerchantdemos/survey/survey.py
@@ -22,6 +22,7 @@ import datetime
import base64
import uwsgi
import logging
+import werkzeug
from urllib.parse import urljoin
import flask
from flask import request
@@ -159,6 +160,13 @@ def index():
@app.route("/<lang>/", methods=["GET"])
def start(lang):
LOGGER.info("Serving main page. Currency: {}".format(CURRENCY))
+
+ # get_locale defaults to english, hence the
+ # condition below happens only when lang is
+ # wrong or unsupported, respond 404.
+ if lang != get_locale():
+ raise werkzeug.exceptions.NotFound()
+
return flask.render_template(
"survey-index.html.j2",
page_title=gettext("GNU Taler Demo: Survey"),
@@ -167,6 +175,7 @@ def start(lang):
@app.errorhandler(404)
+@app.errorhandler(werkzeug.exceptions.NotFound)
def handler_404(e):
return flask.render_template(
"survey-error.html.j2",