From a80b6a5d8eada7c9d17bcc5964dd6ce3ac1478f2 Mon Sep 17 00:00:00 2001 From: MS Date: Wed, 2 Nov 2022 11:20:44 +0100 Subject: i18n manage unsupported languages --- talermerchantdemos/survey/survey.py | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'talermerchantdemos/survey/survey.py') 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("//", 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", -- cgit v1.2.3