on master help sign in
[mod] ui localization init - new dependency: flask-babel
commit598535b24a8f2ce290dfda9842fb063e41c4770e authorasciimoo <asciimoo@gmail.com> dateWed 22 Jan 2014, 00:15 (13 years ago) parent7295df3
4 files changed+15−2
requirements.txt+1 searx/webapp.py+12−2 setup.py+1 versions.cfg+1
requirements.txt+1
@@ -1,4 +1,5 @@
11flask
2+flask-babel
23grequests
34lxml
45pyyaml
searx/webapp.py+12−2
@@ -21,14 +21,17 @@ import json
2121import cStringIO
2222import os
2323
24−from searx import settings
2524from flask import Flask, request, render_template
2625from flask import url_for, Response, make_response, redirect
26+from flask import send_from_directory
27+
28+from searx import settings
2729from searx.engines import search, categories, engines, get_engines_stats
2830from searx.utils import UnicodeWriter
29−from flask import send_from_directory
3031from searx.utils import highlight_content, html_to_text
3132
33+from flask.ext.babel import Babel
34+
3235
3336app = Flask(
3437 __name__,
@@ -38,6 +41,8 @@ app = Flask(
3841
3942app.secret_key = settings['server']['secret_key']
4043
44+babel = Babel(app)
45+
4146#TODO configurable via settings.yml
4247favicons = ['wikipedia', 'youtube', 'vimeo', 'soundcloud',
4348 'twitter', 'stackoverflow', 'github']
@@ -56,6 +61,11 @@ opensearch_xml = '''<?xml version="1.0" encoding="utf-8"?>
5661'''
5762
5863
64+@babel.localeselector
65+def get_locale():
66+ return request.accept_languages.best_match(settings['languages'].keys())
67+
68+
5969def get_base_url():
6070 if settings['server']['base_url']:
6171 hostname = settings['server']['base_url']
setup.py+1
@@ -30,6 +30,7 @@ setup(
3030 zip_safe=False,
3131 install_requires=[
3232 'flask',
33+ 'flask-babel',
3334 'grequests',
3435 'lxml',
3536 'pyyaml',
versions.cfg+1
@@ -1,5 +1,6 @@
11[versions]
22Flask = 0.10.1
3+Flask-Babel = 0.9
34Jinja2 = 2.7.2
45MarkupSafe = 0.18
56WebOb = 1.3.1