26 lines
		
	
	
		
			960 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
		
			960 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| from __future__ import unicode_literals
 | |
| import erpnext.education.utils as utils
 | |
| import frappe
 | |
| 
 | |
| 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 |