diff --git a/lms/djangoapps/certificates/signals.py b/lms/djangoapps/certificates/signals.py index 27b2e2fe84..71f8f691b4 100644 --- a/lms/djangoapps/certificates/signals.py +++ b/lms/djangoapps/certificates/signals.py @@ -5,6 +5,7 @@ from celery.task import task from django.dispatch.dispatcher import receiver from certificates.models import CertificateGenerationCourseSetting +from opaque_keys.edx.keys import CourseKey from xmodule.modulestore.django import SignalHandler, modulestore @@ -14,12 +15,13 @@ def _listen_for_course_publish(sender, course_key, **kwargs): # pylint: disable enable the self-generated certificates by default for self-paced courses. """ - enable_self_generated_certs.delay(course_key) + enable_self_generated_certs.delay(unicode(course_key)) @task() def enable_self_generated_certs(course_key): """Enable the self-generated certificates by default for self-paced courses.""" + course_key = CourseKey.from_string(course_key) course = modulestore().get_course(course_key) is_enabled_for_course = CertificateGenerationCourseSetting.is_enabled_for_course(course_key) if course.self_paced and not is_enabled_for_course: