on master help sign in
[fix] remove usage of request context where not available
ba7c8d7Noémi Ványi
searx/webapp.py+5−6
@@ -56,6 +56,7 @@ from flask import (
56from babel.support import Translations
56from babel.support import Translations
57import flask_babel
57import flask_babel
58from flask_babel import Babel, gettext, format_date, format_decimal
58from flask_babel import Babel, gettext, format_date, format_decimal
59+from flask.ctx import has_request_context
59from flask.json import jsonify
60from flask.json import jsonify
60from searx import brand
61from searx import brand
61from searx import settings, searx_dir, searx_debug
62from searx import settings, searx_dir, searx_debug
@@ -165,13 +166,11 @@ _flask_babel_get_translations = flask_babel.get_translations
165
166
166# monkey patch for flask_babel.get_translations
167# monkey patch for flask_babel.get_translations
167def _get_translations():
168def _get_translations():
168− translation_locale = request.form.get('use-translation')
169+ if has_request_context() and request.form.get('use-translation') == 'oc':
169− if translation_locale:
170 babel_ext = flask_babel.current_app.extensions['babel']
170 babel_ext = flask_babel.current_app.extensions['babel']
171− translation = Translations.load(next(babel_ext.translation_directories), 'oc')
171+ return Translations.load(next(babel_ext.translation_directories), 'oc')
172− else:
172+
173− translation = _flask_babel_get_translations()
173+ return _flask_babel_get_translations()
174− return translation
175
174
176
175
177flask_babel.get_translations = _get_translations
176flask_babel.get_translations = _get_translations