예제 #1
0
    def _process(self):
        config_params = export_list_cache.get(request.view_args['uuid'])
        output_format = config_params['format']
        sort_by = config_params['sort_by']
        contribs = (Contribution.query.with_parent(self.event).filter(
            Contribution.id.in_(config_params['contribution_ids'])).all())

        func = get_boa_export_formats()[output_format][1]
        return func(self.event, contribs, sort_by, ContributionBook)
예제 #2
0
    def _process(self):
        form = ContributionExportTeXForm(contribs=self.contribs)
        form.format.choices = [(k, v[0]) for k, v in get_boa_export_formats().items()]
        if form.validate_on_submit():
            data = form.data
            data.pop('submitted', None)
            key = str(uuid.uuid4())
            export_list_cache.set(key, data, timeout=1800)
            download_url = url_for('.contributions_tex_export_book', self.event, uuid=key)
            return jsonify_data(flash=False, redirect=download_url, redirect_no_loading=True)

        return jsonify_form(form, submit=_('Export'), disabled_until_change=False)