@@ -279,6 +279,12 @@ def render(template_name, override_theme=None, **kwargs):
279 if x != 'general'
279 if x != 'general'
280 and x in nonblocked_categories)
280 and x in nonblocked_categories)
282+ if 'all_categories' not in kwargs:
283+ kwargs['all_categories'] = ['general']
284+ kwargs['all_categories'].extend(x for x in
285+ sorted(categories.keys())
282 if 'selected_categories' not in kwargs:
288 if 'selected_categories' not in kwargs:
283 kwargs['selected_categories'] = []
289 kwargs['selected_categories'] = []
284 for arg in request.args:
290 for arg in request.args:
@@ -286,11 +292,13 @@ def render(template_name, override_theme=None, **kwargs):
286 c = arg.split('_', 1)[1]
292 c = arg.split('_', 1)[1]
287 if c in categories:
293 if c in categories:
288 kwargs['selected_categories'].append(c)
294 kwargs['selected_categories'].append(c)
289 if not kwargs['selected_categories']:
296 if not kwargs['selected_categories']:
290 cookie_categories = request.cookies.get('categories', '').split(',')
297 cookie_categories = request.cookies.get('categories', '').split(',')
291 for ccateg in cookie_categories:
298 for ccateg in cookie_categories:
292 if ccateg in categories:
299 if ccateg in categories:
293 kwargs['selected_categories'].append(ccateg)
300 kwargs['selected_categories'].append(ccateg)
294 if not kwargs['selected_categories']:
302 if not kwargs['selected_categories']:
295 kwargs['selected_categories'] = ['general']
303 kwargs['selected_categories'] = ['general']