From fa7021457897c1b14a38b6332ed754e6909efb12 Mon Sep 17 00:00:00 2001 From: jajjibhai008 Date: Fri, 18 Aug 2023 17:19:05 +0500 Subject: [PATCH] feat: add hook to modify courserun data for executive education courses --- lms/djangoapps/learner_home/serializers.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lms/djangoapps/learner_home/serializers.py b/lms/djangoapps/learner_home/serializers.py index 3ddd884be97d..0ce7bf9c6977 100644 --- a/lms/djangoapps/learner_home/serializers.py +++ b/lms/djangoapps/learner_home/serializers.py @@ -10,7 +10,7 @@ from django.utils import timezone from opaque_keys.edx.keys import CourseKey from rest_framework import serializers -from openedx_filters.learning.filters import CourseEnrollmentAPIRenderStarted +from openedx_filters.learning.filters import CourseEnrollmentAPIRenderStarted, CourseRunAPIRenderStarted from common.djangoapps.course_modes.models import CourseMode from openedx.features.course_experience import course_home_url @@ -136,6 +136,14 @@ def get_upgradeUrl(self, instance): def get_resumeUrl(self, instance): return self.context.get("resume_course_urls", {}).get(instance.course_id) + def to_representation(self, instance): + """Serialize the courserun instance to be able to update the values before the API finishes rendering.""" + serialized_courserun = super().to_representation(instance) + serialized_courserun = CourseRunAPIRenderStarted().run_filter( + serialized_courserun=serialized_courserun, + ) + return serialized_courserun + class CoursewareAccessSerializer(serializers.Serializer): """