@@ -277,6 +277,8 @@ def render(template_name, override_theme=None, **kwargs):
278 kwargs['template_name'] = template_name
278 kwargs['template_name'] = template_name
280+ kwargs['cookies'] = request.cookies
280 return render_template(
282 return render_template(
281 '{}/{}'.format(kwargs['theme'], template_name), **kwargs)
283 '{}/{}'.format(kwargs['theme'], template_name), **kwargs)
@@ -471,6 +473,8 @@ def preferences():
472 blocked_engines = []
474 blocked_engines = []
476+ resp = make_response(redirect(url_for('index')))
474 if request.method == 'GET':
478 if request.method == 'GET':
475 blocked_engines = request.cookies.get('blocked_engines', '').split(',')
479 blocked_engines = request.cookies.get('blocked_engines', '').split(',')
476 else: # on save
480 else: # on save
@@ -502,8 +506,8 @@ def preferences():
502 blocked_engines.append(engine_name)
506 blocked_engines.append(engine_name)
503 elif pd_name == 'theme':
507 elif pd_name == 'theme':
504 theme = pd if pd in themes else default_theme
508 theme = pd if pd in themes else default_theme
506− resp = make_response(redirect(url_for('index')))
510+ resp.set_cookie(pd_name, pd, max_age=cookie_max_age)
508 user_blocked_engines = request.cookies.get('blocked_engines', '').split(',') # noqa
512 user_blocked_engines = request.cookies.get('blocked_engines', '').split(',') # noqa