|  | @@ -49,6 +49,7 @@ from flask import (
 | 
	
		
			
			| 49 | 49 |      redirect, send_from_directory
 | 
	
		
			
			| 50 | 50 |  )
 | 
	
		
			
			| 51 | 51 |  from flask.ext.babel import Babel, gettext, format_date
 | 
	
		
			
			|  | 52 | +from flask.json import jsonify
 | 
	
		
			
			| 52 | 53 |  from searx import settings, searx_dir
 | 
	
		
			
			| 53 | 54 |  from searx.engines import (
 | 
	
		
			
			| 54 | 55 |      categories, engines, get_engines_stats, engine_shortcuts
 | 
	
	
		
			
			|  | @@ -685,6 +686,24 @@ def clear_cookies():
 | 
	
		
			
			| 685 | 686 |      return resp
 | 
	
		
			
			| 686 | 687 |  
 | 
	
		
			
			| 687 | 688 |  
 | 
	
		
			
			|  | 689 | +@app.route('/config')
 | 
	
		
			
			|  | 690 | +def 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']})
 | 
	
		
			
			|  | 705 | +
 | 
	
		
			
			|  | 706 | +
 | 
	
		
			
			| 688 | 707 |  def run():
 | 
	
		
			
			| 689 | 708 |      app.run(
 | 
	
		
			
			| 690 | 709 |          debug=settings['general']['debug'],
 |