Loading searx/webapp.py +23 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ try: from cgi import escape except: from html import escape from six import next from datetime import datetime, timedelta from time import time from werkzeug.middleware.proxy_fix import ProxyFix Loading @@ -52,6 +53,8 @@ from flask import ( Flask, request, render_template, url_for, Response, make_response, redirect, send_from_directory ) from babel.support import Translations import flask_babel from flask_babel import Babel, gettext, format_date, format_decimal from flask.json import jsonify from searx import settings, searx_dir, searx_debug Loading Loading @@ -156,6 +159,22 @@ _category_names = (gettext('files'), outgoing_proxies = settings['outgoing'].get('proxies') or None _flask_babel_get_translations = flask_babel.get_translations # monkey patch for flask_babel.get_translations def _get_translations(): translation_locale = request.form.get('use-translation') if translation_locale: babel_ext = flask_babel.current_app.extensions['babel'] translation = Translations.load(next(babel_ext.translation_directories), 'oc') else: translation = _flask_babel_get_translations() return translation flask_babel.get_translations = _get_translations def _get_browser_language(request, lang_list): for lang in request.headers.get("Accept-Language", "en").split(","): Loading @@ -180,6 +199,10 @@ def get_locale(): if locale == 'zh_TW': locale = 'zh_Hant_TW' if locale == 'oc': request.form['use-translation'] = 'oc' locale = 'fr_FR' logger.debug("selected locale is `%s`", locale) return locale Loading Loading
searx/webapp.py +23 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ try: from cgi import escape except: from html import escape from six import next from datetime import datetime, timedelta from time import time from werkzeug.middleware.proxy_fix import ProxyFix Loading @@ -52,6 +53,8 @@ from flask import ( Flask, request, render_template, url_for, Response, make_response, redirect, send_from_directory ) from babel.support import Translations import flask_babel from flask_babel import Babel, gettext, format_date, format_decimal from flask.json import jsonify from searx import settings, searx_dir, searx_debug Loading Loading @@ -156,6 +159,22 @@ _category_names = (gettext('files'), outgoing_proxies = settings['outgoing'].get('proxies') or None _flask_babel_get_translations = flask_babel.get_translations # monkey patch for flask_babel.get_translations def _get_translations(): translation_locale = request.form.get('use-translation') if translation_locale: babel_ext = flask_babel.current_app.extensions['babel'] translation = Translations.load(next(babel_ext.translation_directories), 'oc') else: translation = _flask_babel_get_translations() return translation flask_babel.get_translations = _get_translations def _get_browser_language(request, lang_list): for lang in request.headers.get("Accept-Language", "en").split(","): Loading @@ -180,6 +199,10 @@ def get_locale(): if locale == 'zh_TW': locale = 'zh_Hant_TW' if locale == 'oc': request.form['use-translation'] = 'oc' locale = 'fr_FR' logger.debug("selected locale is `%s`", locale) return locale Loading