From f2d62195b00dd0de0cc9f8e4098c826693c7b7cc Mon Sep 17 00:00:00 2001 From: Shivam Mishra Date: Tue, 14 May 2019 11:16:48 +0530 Subject: [PATCH] chore: Minor code improvements --- erpnext/education/doctype/course/course.py | 10 +++++----- erpnext/education/doctype/program/program.py | 2 +- erpnext/education/doctype/student/student.py | 15 ++++++++------- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/erpnext/education/doctype/course/course.py b/erpnext/education/doctype/course/course.py index 987823a01e9..0747a22f8da 100644 --- a/erpnext/education/doctype/course/course.py +++ b/erpnext/education/doctype/course/course.py @@ -20,9 +20,9 @@ class Course(Document): frappe.throw(_("Total Weightage of all Assessment Criteria must be 100%")) def get_topics(self): - try: - topic_list = self.get_all_children() - topic_data = [frappe.get_doc("Topic", topic.topic) for topic in topic_list] - except frappe.DoesNotExistError: - return None + topic_data= [] + for topic in self.topics: + topic_doc = frappe.get_doc("Topic", topic.topic) + if topic_doc.topic_content: + topic_data.append(topic_doc) return topic_data \ No newline at end of file diff --git a/erpnext/education/doctype/program/program.py b/erpnext/education/doctype/program/program.py index dbeda40775f..d24df5d6142 100644 --- a/erpnext/education/doctype/program/program.py +++ b/erpnext/education/doctype/program/program.py @@ -9,6 +9,6 @@ from frappe.model.document import Document class Program(Document): def get_course_list(self): - program_course_list = self.get_all_children() + program_course_list = self.courses course_list = [frappe.get_doc("Course", program_course.course) for program_course in program_course_list] return course_list \ No newline at end of file diff --git a/erpnext/education/doctype/student/student.py b/erpnext/education/doctype/student/student.py index cf8407c4eac..529f78d4f53 100644 --- a/erpnext/education/doctype/student/student.py +++ b/erpnext/education/doctype/student/student.py @@ -90,13 +90,14 @@ class Student(Document): """ contents = topic.get_contents() progress = [] - for content in contents: - if content.doctype in ('Article', 'Video'): - status = check_content_completion(content.name, content.doctype, course_enrollment_name) - progress.append({'content': content.name, 'content_type': content.doctype, 'is_complete': status}) - elif content.doctype == 'Quiz': - status, score, result = check_quiz_completion(content, course_enrollment_name) - progress.append({'content': content.name, 'content_type': content.doctype, 'is_complete': status, 'score': score, 'result': result}) + if contents: + for content in contents: + if content.doctype in ('Article', 'Video'): + status = check_content_completion(content.name, content.doctype, course_enrollment_name) + progress.append({'content': content.name, 'content_type': content.doctype, 'is_complete': status}) + elif content.doctype == 'Quiz': + status, score, result = check_quiz_completion(content, course_enrollment_name) + progress.append({'content': content.name, 'content_type': content.doctype, 'is_complete': status, 'score': score, 'result': result}) return progress def enroll_in_program(self, program_name):