Files
edx-platform/lms/djangoapps/program_enrollments/rest_api/v1/urls.py
Kyle McCormick ec9ac34886 Paginate course card API for Programs Learner Portal
* Pull business logic of ProgramCourseEnrollmentOverviewView
  out of view class and into utils.py.
* Add UserProgramCourseEnrollmentsView, which is a paginated
  version of ProgramCourseEnrollmentOverviewView with a
  URL that is parameterized on the user (to enable masquerading
  in MST-109).
* Add get_certificates_for_user_by_course_keys to certs API
  to make enrollments overviews REST API use fewer SQL queries.
* Document new course cards API with edx-api-doc-tools.

In a follow-up ticket, the Programs Learner Portal will switch
to the new paginatd API in order to speed up its page load.

MST-126
2020-05-04 09:26:23 -04:00

75 lines
2.1 KiB
Python

""" Program Enrollments API v1 URLs. """
from django.conf import settings
from django.conf.urls import url
from openedx.core.constants import COURSE_ID_PATTERN
from .constants import PROGRAM_UUID_PATTERN
from .views import (
EnrollmentDataResetView,
ProgramCourseEnrollmentOverviewView,
ProgramCourseEnrollmentsView,
ProgramCourseGradesView,
ProgramEnrollmentsView,
UserProgramCourseEnrollmentView,
UserProgramReadOnlyAccessView
)
app_name = 'v1'
urlpatterns = [
url(
r'^programs/enrollments/$',
UserProgramReadOnlyAccessView.as_view(),
name='learner_program_enrollments'
),
url(
r'^programs/readonly_access/$',
UserProgramReadOnlyAccessView.as_view(),
name='user_program_readonly_access'
),
url(
r'^programs/{program_uuid}/enrollments/$'.format(program_uuid=PROGRAM_UUID_PATTERN),
ProgramEnrollmentsView.as_view(),
name='program_enrollments'
),
url(
r'^programs/{program_uuid}/courses/{course_id}/enrollments/'.format(
program_uuid=PROGRAM_UUID_PATTERN,
course_id=COURSE_ID_PATTERN
),
ProgramCourseEnrollmentsView.as_view(),
name="program_course_enrollments"
),
url(
r'^programs/{program_uuid}/courses/{course_id}/grades/'.format(
program_uuid=PROGRAM_UUID_PATTERN,
course_id=COURSE_ID_PATTERN
),
ProgramCourseGradesView.as_view(),
name="program_course_grades"
),
url(
r'^programs/{program_uuid}/overview/'.format(
program_uuid=PROGRAM_UUID_PATTERN,
),
ProgramCourseEnrollmentOverviewView.as_view(),
name="program_course_enrollments_overview"
),
url(
r'^users/{username}/programs/{program_uuid}/courses'.format(
username=settings.USERNAME_PATTERN,
program_uuid=PROGRAM_UUID_PATTERN,
),
UserProgramCourseEnrollmentView.as_view(),
name="user_program_course_enrollments"
),
url(
r'^integration-reset',
EnrollmentDataResetView.as_view(),
name="reset_enrollment_data",
)
]