import frappe import erpnext.education.utils as utils no_cache = 1 def get_context(context): if frappe.session.user == "Guest": frappe.local.flags.redirect_location = '/lms' raise frappe.Redirect context.student = utils.get_current_student() if not context.student: context.student = frappe.get_doc('User', frappe.session.user) context.progress = get_program_progress(context.student.name) def get_program_progress(student): enrolled_programs = frappe.get_all("Program Enrollment", filters={'student':student}, fields=['program']) student_progress = [] for list_item in enrolled_programs: program = frappe.get_doc("Program", list_item.program) progress = utils.get_program_progress(program) completion = utils.get_program_completion(program) student_progress.append({'program': program.program_name, 'name': program.name, 'progress':progress, 'completion': completion}) return student_progress