@@ -49,6 +49,7 @@ from flask import (
49 redirect, send_from_directory
49 redirect, send_from_directory
51from flask.ext.babel import Babel, gettext, format_date
51from flask.ext.babel import Babel, gettext, format_date
52+from flask.json import jsonify
52from searx import settings, searx_dir
53from searx import settings, searx_dir
53from searx.engines import (
54from searx.engines import (
54 categories, engines, get_engines_stats, engine_shortcuts
55 categories, engines, get_engines_stats, engine_shortcuts
@@ -685,6 +686,24 @@ def clear_cookies():
685 return resp
686 return resp
689+@app.route('/config')
691+ return jsonify({'categories': categories.keys(),
692+ 'engines': [{'name': engine_name,
693+ 'categories': engine.categories,
694+ 'enabled': not engine.disabled}
695+ for engine_name, engine in engines.items()],
696+ 'plugins': [{'name': plugin.name,
697+ 'enabled': plugin.default_on}
698+ for plugin in plugins],
699+ 'instance_name': settings['general']['instance_name'],
700+ 'locales': settings['locales'],
701+ 'default_locale': settings['ui']['default_locale'],
702+ 'autocomplete': settings['search']['autocomplete'],
703+ 'safe_search': settings['search']['safe_search'],
704+ 'default_theme': settings['ui']['default_theme']})
688def run():
707def run():
690 debug=settings['general']['debug'],
709 debug=settings['general']['debug'],