TNL-7303 Add course license details to Courseware API (#24393)

This commit is contained in:
Patrick Cockwell
2020-07-17 21:15:21 +07:00
committed by GitHub
parent eb32aa979a
commit 129ed1b9ab
2 changed files with 7 additions and 1 deletions

View File

@@ -69,6 +69,7 @@ class CourseInfoSerializer(serializers.Serializer): # pylint: disable=abstract-
enrollment_start = serializers.DateTimeField()
enrollment_end = serializers.DateTimeField()
id = serializers.CharField() # pylint: disable=invalid-name
license = serializers.CharField()
media = _CourseApiMediaCollectionSerializer(source='*')
name = serializers.CharField(source='display_name_with_default_escaped')
number = serializers.CharField(source='display_number_with_default')

View File

@@ -20,7 +20,7 @@ from course_modes.models import CourseMode
from edxnotes.helpers import is_feature_enabled
from lms.djangoapps.course_api.api import course_detail
from lms.djangoapps.courseware.access import has_access
from lms.djangoapps.courseware.courses import check_course_access
from lms.djangoapps.courseware.courses import check_course_access, get_course_by_id
from lms.djangoapps.courseware.masquerade import setup_masquerade
from lms.djangoapps.courseware.module_render import get_module_by_usage_id
from lms.djangoapps.courseware.tabs import get_course_tab_list
@@ -100,6 +100,11 @@ class CoursewareMeta:
can_show = can_show_verified_upgrade(self.effective_user, self.enrollment_object)
return can_show
@property
def license(self):
course = get_course_by_id(self.course_key)
return course.license
@property
def can_load_courseware(self):
return check_course_access(