Projet

Général

Profil

0001-create_formdata-keep-user-on-parameter-s-view-when-c.patch

Benjamin Dauvergne, 11 février 2020 20:02

Télécharger (2,6 ko)

Voir les différences:

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(-)
wcs/wf/create_formdata.py
201 201
        if 'formdef_slug' in parameters:
202 202
            list_forms = [(None, '---', '')]
203 203
            list_forms += [(x.url_name, x.name, x.url_name) for x in self.formdef_class.select(order_by='name')]
204
            form.add(SingleSelectWidget, 'formdef_slug',
204
            form.add(SingleSelectWidget, '%sformdef_slug' % prefix,
205 205
                     title=_('Form'),
206 206
                     value=self.formdef_slug,
207 207
                     options=list_forms)
......
226 226
                     value=self.keep_submission_context,
227 227
                     advanced=(
228 228
                         self.keep_submission_context == CreateFormdataWorkflowStatusItem.keep_submission_context))
229
        formdef = self._resolve_formdef_slug(form.get('formdef_slug'))
229
        formdef_slug = form.get('%sformdef_slug' % prefix)
230
        formdef = self._resolve_formdef_slug(formdef_slug)
230 231
        if 'mappings' in parameters and formdef:
231 232
            form.add(MappingsWidget, '%smappings' % prefix,
232 233
                     title=_('Mappings to new form fields'),
233 234
                     to_formdef=formdef,
234 235
                     value=self.mappings)
236
            mappings = form.get('%smappings' % prefix)
237
            if formdef_slug != self.formdef_slug and not mappings:
238
                form.get_widget('%smappings' % prefix).set_error(_('Please define new mappings'))
235 239
        if 'varname' in parameters:
236 240
            form.add(VarnameWidget, '%svarname' % prefix,
237 241
                     title=_('Identifier'), value=self.varname,
238 242
                     hint=_('This is used to get linked forms in expressions.'),
239 243
                     advanced=not(bool(self.varname)))
240 244

  
241
    def submit_admin_form(self, form):
242
        self.mappings = []
243
        super(CreateFormdataWorkflowStatusItem, self).submit_admin_form(form)
244

  
245 245
    def get_parameters(self):
246 246
        return ('formdef_slug', 'mappings', 'draft', 'backoffice_submission',
247 247
                'keep_user', 'keep_submission_context', 'varname')
248
-