From 6f553909e5651934ea982729a48e5bca99b2b7ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Tue, 20 Jun 2017 19:24:25 +0200 Subject: [PATCH] admin: include prefixed-varname when displaying a single page (#16979) --- tests/test_admin_pages.py | 21 +++++++++++++++++++++ wcs/admin/fields.py | 1 + 2 files changed, 22 insertions(+) diff --git a/tests/test_admin_pages.py b/tests/test_admin_pages.py index 0e3eb550..68abdf10 100644 --- a/tests/test_admin_pages.py +++ b/tests/test_admin_pages.py @@ -1157,6 +1157,27 @@ def test_form_edit_map_field(pub): resp = resp.form.submit('submit') assert 'widget-with-error' in resp.body +def test_form_limit_display_to_page(pub): + create_superuser(pub) + create_role() + + FormDef.wipe() + formdef = FormDef() + formdef.name = 'form title' + formdef.fields = [fields.PageField(id='0', label='1st page', type='page'), + fields.StringField(id='1', label='string', varname='foobar'), + fields.PageField(id='2', label='2nd page', type='page'), + fields.StringField(id='3', label='string 2')] + formdef.store() + + app = login(get_app(pub)) + resp = app.get('/backoffice/forms/1/fields/') + assert '[form_var_foobar]' in resp.body + assert '2nd page' in resp.body + resp = resp.click('Limit display to this page', index=0) + assert '[form_var_foobar]' in resp.body + assert 'Display all pages' in resp.body + def test_form_legacy_int_id(pub): create_superuser(pub) create_role() diff --git a/wcs/admin/fields.py b/wcs/admin/fields.py index 4ce19fb3..98c3639b 100644 --- a/wcs/admin/fields.py +++ b/wcs/admin/fields.py @@ -158,6 +158,7 @@ class FieldsPagesDirectory(Directory): def _q_lookup(self, component): directory = FieldsDirectory(self.parent.objectdef) + directory.field_var_prefix = self.parent.field_var_prefix directory.html_top = self.parent.html_top try: directory.page_no = int(component) -- 2.11.0