@@ -305,6 +305,18 @@ def render(template_name, override_theme=None, **kwargs):
305305 '{}/{}'.format(kwargs['theme'], template_name), **kwargs)
306306
307307
308+@app.before_request
309+def pre_request():
310+
311+ request.user_plugins = []
312+ allowed_plugins = request.cookies.get('allowed_plugins', '').split(',')
313+ disabled_plugins = request.cookies.get('disabled_plugins', '').split(',')
314+ for plugin in plugins:
315+ if ((plugin.default_on and plugin.name not in disabled_plugins)
316+ or plugin.name in allowed_plugins):
317+ request.user_plugins.append(plugin)
318+
319+
308320@app.route('/search', methods=['GET', 'POST'])
309321@app.route('/', methods=['GET', 'POST'])
310322def index():