{{ _("No Upcoming Evaluations") }}
+ {% endif %} +{{ _("No Assessments") }}
-{% endif %} + {% endfor %} + + {% else %} +{{ _("No Assessments") }}
+ {% endif %} +diff --git a/lms/lms/doctype/course_evaluator/course_evaluator.py b/lms/lms/doctype/course_evaluator/course_evaluator.py index beff1c6e..b8fc78bd 100644 --- a/lms/lms/doctype/course_evaluator/course_evaluator.py +++ b/lms/lms/doctype/course_evaluator/course_evaluator.py @@ -4,6 +4,7 @@ import frappe from frappe import _ from frappe.model.document import Document +from lms.lms.utils import get_evaluator class CourseEvaluator(Document): @@ -37,17 +38,7 @@ class CourseEvaluator(Document): @frappe.whitelist() def get_schedule(course, date, class_name=None): - evaluator = None - - if class_name: - evaluator = frappe.db.get_value( - "Class Course", - {"parent": class_name, "course": course}, - "evaluator", - ) - - if not evaluator: - evaluator = frappe.db.get_value("LMS Course", course, "evaluator") + evaluator = get_evaluator(course, class_name) all_slots = frappe.get_all( "Evaluator Schedule", diff --git a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py index 0570d615..f10da005 100644 --- a/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py +++ b/lms/lms/doctype/lms_certificate_request/lms_certificate_request.py @@ -6,6 +6,7 @@ from frappe import _ from frappe.model.document import Document from frappe.model.mapper import get_mapped_doc from frappe.utils import format_date, format_time, getdate +from lms.lms.utils import get_evaluator class LMSCertificateRequest(Document): @@ -24,7 +25,7 @@ class LMSCertificateRequest(Document): ) for req in existing_requests: - if req.date == getdate(self.date) and getdate() <= getdate(self.date): + if req.date == getdate(self.date) or getdate() <= getdate(self.date): course_title = frappe.db.get_value("LMS Course", req.course, "title") frappe.throw( _("You already have an evaluation on {0} at {1} for the course {2}.").format( @@ -78,7 +79,9 @@ class LMSCertificateRequest(Document): @frappe.whitelist() -def create_certificate_request(course, date, day, start_time, end_time): +def create_certificate_request( + course, date, day, start_time, end_time, class_name=None +): is_member = frappe.db.exists( {"doctype": "LMS Batch Membership", "course": course, "member": frappe.session.user} ) @@ -90,6 +93,7 @@ def create_certificate_request(course, date, day, start_time, end_time): { "doctype": "LMS Certificate Request", "course": course, + "evaluator": get_evaluator(course, class_name), "member": frappe.session.user, "date": date, "day": day, diff --git a/lms/lms/utils.py b/lms/lms/utils.py index 6e2d981d..17619038 100644 --- a/lms/lms/utils.py +++ b/lms/lms/utils.py @@ -753,3 +753,19 @@ def has_submitted_assessment(assessment, type, member=None): def has_graded_assessment(submission): status = frappe.db.get_value("LMS Assignment Submission", submission, "status") return False if status == "Not Graded" else True + + +def get_evaluator(course, class_name=None): + evaluator = None + + if class_name: + evaluator = frappe.db.get_value( + "Class Course", + {"parent": class_name, "course": course}, + "evaluator", + ) + + if not evaluator: + evaluator = frappe.db.get_value("LMS Course", course, "evaluator") + + return evaluator diff --git a/lms/www/classes/progress.html b/lms/www/classes/progress.html index f49e47cd..fc26578a 100644 --- a/lms/www/classes/progress.html +++ b/lms/www/classes/progress.html @@ -21,7 +21,7 @@
{{ _("No Upcoming Evaluations") }}
+ {% endif %} +{{ _("No Assessments") }}
-{% endif %} + {% endfor %} + + {% else %} +{{ _("No Assessments") }}
+ {% endif %} +