fix: program title rename and program overlay

This commit is contained in:
Jannat Patel
2024-11-29 15:53:50 +05:30
parent 97543a43eb
commit d688d5cdd9
4 changed files with 47 additions and 33 deletions

View File

@@ -4,13 +4,13 @@
import frappe
from frappe import _
from frappe.model.document import Document
from frappe.model.rename_doc import update_document_title
class LMSProgram(Document):
def validate(self):
self.validate_program_courses()
self.validate_program_members()
self.validate_title()
def validate_program_courses(self):
courses = [row.course for row in self.program_courses]
@@ -31,7 +31,3 @@ class LMSProgram(Document):
frappe.bold(next(iter(duplicates)))
)
)
def validate_title(self):
if self.has_value_changed("title"):
frappe.rename_doc(self.doctype, self.name, self.title)

View File

@@ -1771,8 +1771,18 @@ def get_programs():
"LMS Program Course", {"parent": program.name}, ["course"], order_by="idx"
)
program.courses = []
for course in program_courses:
program.courses.append(get_course_details(course.course))
previous_progress = 0
for i, course in enumerate(program_courses):
details = get_course_details(course.course)
if i == 0:
details.eligible = True
elif previous_progress == 100:
details.eligible = True
else:
details.eligible = False
previous_progress = details.membership.progress if details.membership else 0
program.courses.append(details)
program.members = frappe.db.count("LMS Program Member", {"parent": program.name})