Fix /settings/filters 500 error - change filter_sets from list to dict

Template expects dictionary but route was passing a list, causing:
jinja2.exceptions.UndefinedError: 'list object' has no attribute 'no_filter'

Changed to build dictionary mapping filter names to full configs.

Fixes #9
This commit is contained in:
2025-10-11 23:15:29 -05:00
parent b87fb829ca
commit b84ebce8f1

12
app.py
View File

@@ -1116,18 +1116,14 @@ def settings_filters():
current_filter = user_settings.get('filter_set', 'no_filter')
# Load available filter sets from FilterEngine
filter_sets_list = []
# Load available filter sets from FilterEngine as a dictionary
filter_sets = {}
for filterset_name in filter_engine.get_available_filtersets():
description = filter_engine.get_filterset_description(filterset_name)
filter_sets_list.append({
'name': filterset_name,
'description': description or f'{filterset_name} filter'
})
filter_sets[filterset_name] = filter_engine.config.get_filterset(filterset_name)
return render_template('settings_filters.html',
user=current_user,
filter_sets=filter_sets_list,
filter_sets=filter_sets,
current_filter=current_filter)