Beispiel #1
0
 def _show_registration_form(self):
     displayed_regforms, user_registrations = get_event_regforms_registrations(
         self.event, session.user)
     if len(displayed_regforms) == 1:
         return redirect(
             url_for('event_registration.display_regform',
                     displayed_regforms[0]))
     return redirect(
         url_for('event_registration.display_regform_list', self.event))
Beispiel #2
0
 def _process(self):
     displayed_regforms, user_registrations = get_event_regforms_registrations(self.event, session.user,
                                                                               only_in_acl=self.is_restricted_access)
     if len(displayed_regforms) == 1:
         return redirect(url_for('.display_regform', displayed_regforms[0]))
     return self.view_class.render_template('display/regform_list.html', self.event,
                                            regforms=displayed_regforms,
                                            user_registrations=user_registrations,
                                            is_restricted_access=self.is_restricted_access)
Beispiel #3
0
def _inject_event_header(event, **kwargs):
    from indico.modules.events.registration.util import get_event_regforms_registrations
    if event.has_feature('registration'):
        displayed_regforms, user_registrations = get_event_regforms_registrations(event, session.user,
                                                                                  include_scheduled=False)
        # A participant could appear more than once in the list in case he register to multiple registration form.
        # This is deemed very unlikely in the case of meetings and lectures and thus not worth the extra complexity.
        return render_template('events/registration/display/event_header.html', event=event,
                               regforms=displayed_regforms, user_registrations=user_registrations)
Beispiel #4
0
def test_get_event_regforms_registration(dummy_event, dummy_user,
                                         dummy_regform, start_dt, end_dt,
                                         include_scheduled, freeze_time):
    freeze_time(datetime(2019, 12, 13, 8, 0, 0))
    if start_dt:
        dummy_regform.start_dt = dummy_event.tzinfo.localize(start_dt)
    if end_dt:
        dummy_regform.end_dt = dummy_event.tzinfo.localize(end_dt)

    regforms, registrations = get_event_regforms_registrations(
        dummy_event, dummy_user, include_scheduled=False)

    assert list(registrations.values())[0].user == dummy_user
    assert dummy_regform in regforms
Beispiel #5
0
 def _show_registration_form(self):
     displayed_regforms, user_registrations = get_event_regforms_registrations(
         self.event, session.user)
     if displayed_regforms and all(
             r.require_login
             for r in displayed_regforms) and not session.user:
         # force the user to log in first. like this they will go back to the page they tried to
         # originally access in case they are already registered for the event
         raise Forbidden
     if len(displayed_regforms) == 1:
         return redirect(
             url_for('event_registration.display_regform',
                     displayed_regforms[0]))
     return redirect(
         url_for('event_registration.display_regform_list', self.event))
Beispiel #6
0
def test_get_event_regforms_no_registration(dummy_event, dummy_user,
                                            dummy_regform, freeze_time,
                                            start_dt, end_dt,
                                            include_scheduled,
                                            expected_regform_flag):
    freeze_time(datetime(2019, 12, 13, 8, 0, 0))
    if start_dt:
        dummy_regform.start_dt = dummy_event.tzinfo.localize(start_dt)
    if end_dt:
        dummy_regform.end_dt = dummy_event.tzinfo.localize(end_dt)

    regforms, registrations = get_event_regforms_registrations(
        dummy_event, dummy_user, include_scheduled)

    assert (dummy_regform in regforms) == expected_regform_flag
    assert list(registrations.values()) == [None]