Beispiel #1
0
 def _process(self):
     abstract_form_class = make_abstract_form(self.event,
                                              session.user,
                                              management=self.management)
     custom_field_values = {
         f'custom_{x.contribution_field_id}': x.data
         for x in self.abstract.field_values
     }
     defaults = FormDefaults(self.abstract,
                             attachments=self.abstract.files,
                             **custom_field_values)
     form = abstract_form_class(
         obj=defaults,
         abstract=self.abstract,
         event=self.event,
         management=self.management,
         invited=(self.abstract.state == AbstractState.invited))
     if form.validate_on_submit():
         fields, custom_fields = get_field_values(form.data)
         update_abstract(self.abstract, fields, custom_fields)
         flash(_("Abstract modified successfully"), 'success')
         return jsonify_data(flash=False)
     self.commit = False
     disabled_fields = (
         'submitted_for_tracks', ) if form.track_field_disabled else ()
     return jsonify_form(
         form,
         disabled_fields=disabled_fields,
         form_header_kwargs={'action': request.relative_url})
Beispiel #2
0
 def _process_POST(self):
     form = self._create_form()
     if form.validate_on_submit():
         fields, custom_fields = get_field_values(form.data)
         abstract_data = dict(fields, state=AbstractState.submitted, uuid=None)
         update_abstract(self.abstract, abstract_data, custom_fields)
         return jsonify_data(flash=False, redirect=url_for('.call_for_abstracts', self.event))
     return jsonify_form(form, form_header_kwargs={'action': url_for('.submit_invited_abstract',
                                                                     self.abstract.locator.token)})
Beispiel #3
0
 def _process(self):
     abstract_form_class = make_abstract_form(self.event, session.user, management=self.management)
     custom_field_values = {'custom_{}'.format(x.contribution_field_id): x.data for x in self.abstract.field_values}
     defaults = FormDefaults(self.abstract, attachments=self.abstract.files, **custom_field_values)
     form = abstract_form_class(obj=defaults, abstract=self.abstract, event=self.event, management=self.management)
     if form.validate_on_submit():
         update_abstract(self.abstract, *get_field_values(form.data))
         flash(_("Abstract modified successfully"), 'success')
         return jsonify_data(flash=False)
     self.commit = False
     disabled_fields = ('submitted_for_tracks',) if form.track_field_disabled else ()
     return jsonify_form(form, disabled_fields=disabled_fields, form_header_kwargs={'action': request.relative_url})