From 7906e55d338735975d4bd6f87d8872a1d8e7fd47 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Tue, 11 Feb 2020 19:55:58 +0100 Subject: [PATCH] create_formdata: keep user on parameter's view when changing formdef_slug (#39732) --- wcs/wf/create_formdata.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/wcs/wf/create_formdata.py b/wcs/wf/create_formdata.py index 9d0889c3..7f681f01 100644 --- a/wcs/wf/create_formdata.py +++ b/wcs/wf/create_formdata.py @@ -201,7 +201,7 @@ class CreateFormdataWorkflowStatusItem(WorkflowStatusItem): if 'formdef_slug' in parameters: list_forms = [(None, '---', '')] list_forms += [(x.url_name, x.name, x.url_name) for x in self.formdef_class.select(order_by='name')] - form.add(SingleSelectWidget, 'formdef_slug', + form.add(SingleSelectWidget, '%sformdef_slug' % prefix, title=_('Form'), value=self.formdef_slug, options=list_forms) @@ -226,22 +226,22 @@ class CreateFormdataWorkflowStatusItem(WorkflowStatusItem): value=self.keep_submission_context, advanced=( self.keep_submission_context == CreateFormdataWorkflowStatusItem.keep_submission_context)) - formdef = self._resolve_formdef_slug(form.get('formdef_slug')) + formdef_slug = form.get('%sformdef_slug' % prefix) + formdef = self._resolve_formdef_slug(formdef_slug) if 'mappings' in parameters and formdef: form.add(MappingsWidget, '%smappings' % prefix, title=_('Mappings to new form fields'), to_formdef=formdef, value=self.mappings) + mappings = form.get('%smappings' % prefix) + if formdef_slug != self.formdef_slug and not mappings: + form.get_widget('%smappings' % prefix).set_error(_('Please define new mappings')) if 'varname' in parameters: form.add(VarnameWidget, '%svarname' % prefix, title=_('Identifier'), value=self.varname, hint=_('This is used to get linked forms in expressions.'), advanced=not(bool(self.varname))) - def submit_admin_form(self, form): - self.mappings = [] - super(CreateFormdataWorkflowStatusItem, self).submit_admin_form(form) - def get_parameters(self): return ('formdef_slug', 'mappings', 'draft', 'backoffice_submission', 'keep_user', 'keep_submission_context', 'varname') -- 2.24.0