[enh] more flexible category selection

This commit is contained in:
Adam Tauber 2014-09-06 15:21:29 +02:00
parent a288aa322e
commit c23db1b2bf

View File

@ -151,12 +151,18 @@ def render(template_name, override_theme=None, **kwargs):
if not 'selected_categories' in kwargs: if not 'selected_categories' in kwargs:
kwargs['selected_categories'] = [] kwargs['selected_categories'] = []
for arg in request.args:
if arg.startswith('category_'):
c = arg.split('_', 1)[1]
if c in categories:
kwargs['selected_categories'].append(c)
if not kwargs['selected_categories']:
cookie_categories = request.cookies.get('categories', '').split(',') cookie_categories = request.cookies.get('categories', '').split(',')
for ccateg in cookie_categories: for ccateg in cookie_categories:
if ccateg in categories: if ccateg in categories:
kwargs['selected_categories'].append(ccateg) kwargs['selected_categories'].append(ccateg)
if not kwargs['selected_categories']: if not kwargs['selected_categories']:
kwargs['selected_categories'] = ['general'] kwargs['selected_categories'] = ['general']
if not 'autocomplete' in kwargs: if not 'autocomplete' in kwargs:
kwargs['autocomplete'] = autocomplete kwargs['autocomplete'] = autocomplete