예제 #1
0
파일: views.py 프로젝트: indico/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)
예제 #2
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)
예제 #3
0
 def _process(self):
     contrib = (Contribution.query.filter_by(id=self.contrib.id).options(
         joinedload('type'), joinedload('session'),
         joinedload('subcontributions'),
         joinedload('timetable_entry').lazyload('*')).one())
     can_manage = self.event.can_manage(session.user)
     owns_abstract = contrib.abstract.user_owns(
         session.user) if contrib.abstract else None
     field_values = filter_field_values(contrib.field_values, can_manage,
                                        owns_abstract)
     return self.view_class.render_template(
         'display/contribution_display.html',
         self.event,
         contribution=contrib,
         show_author_link=_author_page_active(self.event),
         field_values=field_values,
         page_title=contrib.title,
         published=contribution_settings.get(self.event, 'published'))
예제 #4
0
파일: display.py 프로젝트: hkilter/indico
 def _process(self):
     ical_params = get_base_ical_parameters(session.user, 'contributions',
                                            '/export/event/{0}.ics'.format(self.event.id))
     contrib = (Contribution.query
                .filter_by(id=self.contrib.id)
                .options(joinedload('type'),
                         joinedload('session'),
                         joinedload('subcontributions'),
                         joinedload('timetable_entry').lazyload('*'))
                .one())
     can_manage = self.event.can_manage(session.user)
     owns_abstract = contrib.abstract.user_owns(session.user) if contrib.abstract else None
     field_values = filter_field_values(contrib.field_values, can_manage, owns_abstract)
     return self.view_class.render_template('display/contribution_display.html', self.event,
                                            contribution=contrib,
                                            show_author_link=_author_page_active(self.event),
                                            field_values=field_values,
                                            **ical_params)
예제 #5
0
파일: display.py 프로젝트: bkolobara/indico
 def _process(self):
     ical_params = get_base_ical_parameters(session.user, 'contributions',
                                            '/export/event/{0}.ics'.format(self.event.id))
     contrib = (Contribution.query
                .filter_by(id=self.contrib.id)
                .options(joinedload('type'),
                         joinedload('session'),
                         joinedload('subcontributions'),
                         joinedload('timetable_entry').lazyload('*'))
                .one())
     can_manage = self.event.can_manage(session.user)
     owns_abstract = contrib.abstract.user_owns(session.user) if contrib.abstract else None
     field_values = filter_field_values(contrib.field_values, can_manage, owns_abstract)
     return self.view_class.render_template('display/contribution_display.html', self.event,
                                            contribution=contrib,
                                            show_author_link=_author_page_active(self.event),
                                            field_values=field_values,
                                            **ical_params)