예제 #1
0
파일: reviewing.py 프로젝트: manikm/indico2
 def _process(self):
     form = AbstractCommentForm(abstract=self.abstract, user=session.user)
     if form.validate_on_submit():
         create_abstract_comment(self.abstract, form.data)
         return jsonify_data(flash=False, html=render_abstract_page(self.abstract, management=self.management))
     tpl = get_template_module('events/reviews/forms.html')
     return jsonify(html=tpl.render_comment_form(form, proposal=self.abstract))
예제 #2
0
 def _process(self):
     form = AbstractCommentForm(abstract=self.abstract, user=session.user)
     if form.validate_on_submit():
         create_abstract_comment(self.abstract, form.data)
         return jsonify_data(flash=False, html=render_abstract_page(self.abstract, management=self.management))
     tpl = get_template_module('events/reviews/forms.html')
     return jsonify(html=tpl.render_comment_form(form, proposal=self.abstract))
예제 #3
0
파일: reviewing.py 프로젝트: manikm/indico2
 def _process(self):
     form = AbstractCommentForm(obj=self.comment, abstract=self.abstract, user=session.user,
                                prefix='edit-comment-{}-'.format(self.comment.id))
     if form.validate_on_submit():
         update_abstract_comment(self.comment, form.data)
         return jsonify_data(flash=False, html=render_abstract_page(self.abstract, management=self.management))
     tpl = get_template_module('events/reviews/forms.html')
     return jsonify(html=tpl.render_comment_form(form, proposal=self.abstract, comment=self.comment, edit=True))
예제 #4
0
 def _process(self):
     form = AbstractCommentForm(obj=self.comment, abstract=self.abstract, user=session.user,
                                prefix='edit-comment-{}-'.format(self.comment.id))
     if form.validate_on_submit():
         update_abstract_comment(self.comment, form.data)
         return jsonify_data(flash=False, html=render_abstract_page(self.abstract, management=self.management))
     tpl = get_template_module('events/reviews/forms.html')
     return jsonify(html=tpl.render_comment_form(form, proposal=self.abstract, comment=self.comment, edit=True))
예제 #5
0
def render_abstract_page(abstract, view_class=None, management=False):
    from indico.modules.events.abstracts.forms import (
        AbstractCommentForm, AbstractJudgmentForm,
        AbstractReviewedForTracksForm, build_review_form)
    comment_form = AbstractCommentForm(abstract=abstract,
                                       user=session.user,
                                       formdata=None)
    review_form = None
    reviewed_for_tracks = list(abstract.get_reviewed_for_groups(session.user))
    if len(reviewed_for_tracks) == 1:
        review_form = build_review_form(abstract, reviewed_for_tracks[0])
    judgment_form = AbstractJudgmentForm(abstract=abstract, formdata=None)
    review_track_list_form = AbstractReviewedForTracksForm(
        event=abstract.event, obj=abstract, formdata=None)
    params = {
        'abstract': abstract,
        'comment_form': comment_form,
        'review_form': review_form,
        'review_track_list_form': review_track_list_form,
        'judgment_form': judgment_form,
        'visible_tracks':
        get_visible_reviewed_for_tracks(abstract, session.user),
        'management': management
    }
    if view_class:
        return view_class.render_template('abstract.html', abstract.event,
                                          **params)
    else:
        return render_template('events/abstracts/abstract.html',
                               no_javascript=True,
                               standalone=True,
                               **params)
예제 #6
0
파일: views.py 프로젝트: mkopcic/indico
def render_abstract_page(abstract, view_class=None, management=False):
    from indico.modules.events.abstracts.forms import (AbstractCommentForm, AbstractJudgmentForm,
                                                       AbstractReviewedForTracksForm, build_review_form)
    comment_form = AbstractCommentForm(abstract=abstract, user=session.user, formdata=None)
    review_form = None
    reviewed_for_tracks = list(abstract.get_reviewed_for_groups(session.user))
    if len(reviewed_for_tracks) == 1:
        review_form = build_review_form(abstract, reviewed_for_tracks[0])
    judgment_form = AbstractJudgmentForm(abstract=abstract, formdata=None)
    review_track_list_form = AbstractReviewedForTracksForm(event=abstract.event, obj=abstract, formdata=None)
    track_session_map = {track.id: track.default_session_id for track in abstract.event.tracks}
    can_manage = abstract.event.can_manage(session.user)
    field_values = filter_field_values(abstract.field_values, can_manage, abstract.user_owns(session.user))
    params = {'abstract': abstract,
              'comment_form': comment_form,
              'review_form': review_form,
              'review_track_list_form': review_track_list_form,
              'judgment_form': judgment_form,
              'visible_tracks': get_visible_reviewed_for_tracks(abstract, session.user),
              'management': management,
              'track_session_map': track_session_map,
              'field_values': field_values}

    if view_class:
        return view_class.render_template('abstract.html', abstract.event, **params)
    else:
        return render_template('events/abstracts/abstract.html', no_javascript=True, standalone=True, **params)
예제 #7
0
파일: reviewing.py 프로젝트: javfg/indico
    def _process(self):
        form = AbstractCommentForm(abstract=self.abstract, user=session.user)
        if form.validate_on_submit():
            create_abstract_comment(self.abstract, form.data)
            if abstracts_reviewing_settings.get(self.event,
                                                'notify_on_new_comments'):
                visibility = form.visibility.data if form.visibility else AbstractCommentVisibility.contributors
                recipients = self._get_recipients(visibility) - {session.user}
                comment = form.text.data
                self._send_notification(recipients, comment)

            return jsonify_data(flash=False,
                                html=render_abstract_page(
                                    self.abstract, management=self.management))
        tpl = get_template_module('events/reviews/forms.html')
        return jsonify(
            html=tpl.render_comment_form(form, proposal=self.abstract))