예제 #1
0
파일: views.py 프로젝트: sliva/edx-platform
 def get(self, request, program_uuid=None):  # lint-amnesty, pylint: disable=unused-argument
     """ Defines the GET list endpoint for ProgramEnrollment objects. """
     enrollments = fetch_program_enrollments(self.program_uuid).using(
         read_replica_or_default())
     paginated_enrollments = self.paginate_queryset(enrollments)
     serializer = ProgramEnrollmentSerializer(paginated_enrollments,
                                              many=True)
     return self.get_paginated_response(serializer.data)
예제 #2
0
 def _check_program_enrollment_exists(user, program_uuid):
     """
     Raises ``PermissionDenied`` if the user is not enrolled in the program with the given UUID.
     """
     user_enrollment_qs = fetch_program_enrollments(
         program_uuid=program_uuid,
         users={user},
         program_enrollment_statuses={ProgramEnrollmentStatuses.ENROLLED},
     )
     if not user_enrollment_qs.exists():
         raise PermissionDenied
예제 #3
0
파일: utils.py 프로젝트: edx/edx-platform
 def wrapped_function(self, *args, **kwargs):
     """
     Wraps the given view_function.
     """
     user_enrollment_qs = fetch_program_enrollments(
         program_uuid=self.program_uuid,
         users={self.target_user},
         program_enrollment_statuses={ProgramEnrollmentStatuses.ENROLLED},
     )
     if not user_enrollment_qs.exists():
         raise PermissionDenied
     return view_func(self, *args, **kwargs)