forms: allow displaying no elements in management sidebar (#88807) #1328

Merged
lguerin merged 1 commits from wip/88807-empty-management-sidebar into main 2024-03-28 14:36:55 +01:00
2 changed files with 9 additions and 1 deletions

View File

@ -263,6 +263,14 @@ def test_forms_edit_management(pub, formdef):
resp = resp.forms[0].submit().follow()
assert FormDef.get(1).management_sidebar_items == {'__default__'}
# unselect all
resp = resp.click('Management', href='options/management')
for field in resp.forms[0].fields:
if field.startswith('management_sidebar_items$'):
resp.forms[0][field].checked = False
resp = resp.forms[0].submit().follow()
assert FormDef.get(1).management_sidebar_items == set()
def test_forms_edit_tracking_code(pub, formdef):
create_superuser(pub)

View File

@ -526,7 +526,7 @@ class OptionsDirectory(Directory):
continue
new_value = widget.parse()
if attr == 'management_sidebar_items':
new_value = set(new_value)
new_value = set(new_value or [])
if new_value == self.formdef.__class__.management_sidebar_items:
new_value = {'__default__'}
if attr == 'digest_template':