From 6789cef324d95f3fc172098293116349be0df084 Mon Sep 17 00:00:00 2001 From: Muhammad Faraz Maqsood Date: Fri, 22 Dec 2023 14:09:23 +0500 Subject: [PATCH] feat!: add badgr settings, make badges and courses independent incase of courses --- lms/djangoapps/badges/events/course_complete.py | 3 +-- lms/djangoapps/certificates/models.py | 8 ++++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/lms/djangoapps/badges/events/course_complete.py b/lms/djangoapps/badges/events/course_complete.py index 853465dfb8d6..fa796b609590 100644 --- a/lms/djangoapps/badges/events/course_complete.py +++ b/lms/djangoapps/badges/events/course_complete.py @@ -125,5 +125,4 @@ def course_badge_check(user, course_key): LOGGER.info("Completion badge already exists for this user on this course.") # Badge already exists. Skip. return - evidence = evidence_url(user.id, course_key) - badge_class.award(user, evidence_url=evidence) + badge_class.award(user) diff --git a/lms/djangoapps/certificates/models.py b/lms/djangoapps/certificates/models.py index dc43b0fd3515..34c705a7c7ac 100644 --- a/lms/djangoapps/certificates/models.py +++ b/lms/djangoapps/certificates/models.py @@ -30,7 +30,7 @@ from lms.djangoapps.badges.events.course_meta import completion_check, course_group_check from lms.djangoapps.certificates.data import CertificateStatuses from lms.djangoapps.instructor_task.models import InstructorTask -from openedx.core.djangoapps.signals.signals import COURSE_CERT_AWARDED, COURSE_CERT_CHANGED, COURSE_CERT_REVOKED +from openedx.core.djangoapps.signals.signals import COURSE_CERT_AWARDED, COURSE_CERT_CHANGED, COURSE_CERT_REVOKED, COURSE_GRADE_NOW_PASSED from openedx.core.djangoapps.xmodule_django.models import NoneToEmptyManager from openedx.features.name_affirmation_api.utils import get_name_affirmation_service @@ -1235,13 +1235,13 @@ class Meta: app_label = "certificates" -@receiver(COURSE_CERT_AWARDED, sender=GeneratedCertificate) +@receiver(COURSE_GRADE_NOW_PASSED, dispatch_uid="new_passing_learner") # pylint: disable=unused-argument -def create_course_badge(sender, user, course_key, status, **kwargs): +def create_course_badge(sender, user, course_id, **kwargs): """ Standard signal hook to create course badges when a certificate has been generated. """ - course_badge_check(user, course_key) + course_badge_check(user, course_id) @receiver(COURSE_CERT_AWARDED, sender=GeneratedCertificate)