Пример #1
0
def view_volunteers(request, shift_id):
    user = request.user
    admin = None

    try:
        admin = user.administrator
    except ObjectDoesNotExist:
        pass

    # check that an admin is logged in
    if not admin:
        return render(request, 'vms/no_admin_rights.html')
    else:
        if shift_id:
            shift = get_shift_by_id(shift_id)
            if shift:
                volunteer_list = get_volunteers_by_shift_id(shift_id)
                logged_volunteer_list = \
                    get_logged_volunteers_by_shift_id(shift_id)
                slots_remaining = get_shift_slots_remaining(shift_id)
                return render(
                    request, 'shift/list_volunteers.html', {
                        'volunteer_list': volunteer_list,
                        'shift': shift,
                        'slots_remaining': slots_remaining,
                        'logged_volunteer_list': logged_volunteer_list
                    })
            else:
                raise Http404
        else:
            raise Http404
Пример #2
0
def view_volunteers(request, shift_id):
    user = request.user
    admin = None

    try:
        admin = user.administrator
    except ObjectDoesNotExist:
        pass

    # check that an admin is logged in
    if not admin:
        return render(request, 'vms/no_admin_rights.html')
    else:
        if shift_id:
            shift = get_shift_by_id(shift_id)
            if shift:
                volunteer_list = get_volunteers_by_shift_id(shift_id)
                logged_volunteer_list = get_logged_volunteers_by_shift_id(
                    shift_id)
                slots_remaining = get_shift_slots_remaining(shift_id)
                return render(
                    request, 'shift/list_volunteers.html', {
                        'volunteer_list': volunteer_list,
                        'shift': shift,
                        'slots_remaining': slots_remaining,
                        'logged_volunteer_list': logged_volunteer_list
                    })
            else:
                raise Http404
        else:
            raise Http404
Пример #3
0
    def test_get_logged_volunteers_by_shift_id(self):
        """ Uses volunteers v1,v2,v3 and shift s3 """

        # sign up
        register(self.v3.id, self.s3.id)
        register(self.v1.id, self.s3.id)
        register(self.v2.id, self.s3.id)

        start_time = datetime.time(hour=1, minute=0)
        end_time = datetime.time(hour=2, minute=0)
        add_shift_hours(self.v1.id, self.s3.id, start_time, end_time)

        start_time = datetime.time(hour=2, minute=0)
        end_time = datetime.time(hour=3, minute=0)
        add_shift_hours(self.v3.id, self.s3.id, start_time, end_time)

        # get volunteer list
        logged_volunteer_list_for_shift = get_logged_volunteers_by_shift_id(self.s3.id)

        # test typical case and order
        self.assertEqual(len(logged_volunteer_list_for_shift), 2)
        self.assertEqual(logged_volunteer_list_for_shift[0].volunteer, self.v3)
        self.assertEqual(logged_volunteer_list_for_shift[1].volunteer, self.v1)
Пример #4
0
    def test_get_logged_volunteers_by_shift_id(self):
        """ Uses volunteers v1,v2,v3 and shift s3 """

        # sign up
        register(self.v3.id, self.s3.id)
        register(self.v1.id, self.s3.id)
        register(self.v2.id, self.s3.id)

        start_time = datetime.time(hour=1, minute=0)
        end_time = datetime.time(hour=2, minute=0)
        add_shift_hours(self.v1.id, self.s3.id, start_time, end_time)

        start_time = datetime.time(hour=2, minute=0)
        end_time = datetime.time(hour=3, minute=0)
        add_shift_hours(self.v3.id, self.s3.id, start_time, end_time)

        # get volunteer list
        logged_volunteer_list_for_shift = get_logged_volunteers_by_shift_id(
            self.s3.id)

        # test typical case and order
        self.assertEqual(len(logged_volunteer_list_for_shift), 2)
        self.assertEqual(logged_volunteer_list_for_shift[0].volunteer, self.v3)
        self.assertEqual(logged_volunteer_list_for_shift[1].volunteer, self.v1)