Chillar Anand | 915b343 | 2021-09-02 16:44:59 +0530 | [diff] [blame] | 1 | |
Shivam Mishra | 16b4129 | 2019-06-05 17:29:48 +0530 | [diff] [blame] | 2 | import frappe |
| 3 | |
Chillar Anand | 915b343 | 2021-09-02 16:44:59 +0530 | [diff] [blame] | 4 | import erpnext.education.utils as utils |
| 5 | |
Shivam Mishra | 16b4129 | 2019-06-05 17:29:48 +0530 | [diff] [blame] | 6 | no_cache = 1 |
| 7 | |
| 8 | def get_context(context): |
Shivam Mishra | bd499fc | 2019-06-05 17:38:12 +0530 | [diff] [blame] | 9 | if frappe.session.user == "Guest": |
| 10 | frappe.local.flags.redirect_location = '/lms' |
| 11 | raise frappe.Redirect |
| 12 | |
Shivam Mishra | 16b4129 | 2019-06-05 17:29:48 +0530 | [diff] [blame] | 13 | context.student = utils.get_current_student() |
Shivam Mishra | bd499fc | 2019-06-05 17:38:12 +0530 | [diff] [blame] | 14 | if not context.student: |
| 15 | context.student = frappe.get_doc('User', frappe.session.user) |
Shivam Mishra | 16b4129 | 2019-06-05 17:29:48 +0530 | [diff] [blame] | 16 | context.progress = get_program_progress(context.student.name) |
| 17 | |
| 18 | def get_program_progress(student): |
| 19 | enrolled_programs = frappe.get_all("Program Enrollment", filters={'student':student}, fields=['program']) |
| 20 | student_progress = [] |
| 21 | for list_item in enrolled_programs: |
| 22 | program = frappe.get_doc("Program", list_item.program) |
| 23 | progress = utils.get_program_progress(program) |
| 24 | completion = utils.get_program_completion(program) |
| 25 | student_progress.append({'program': program.program_name, 'name': program.name, 'progress':progress, 'completion': completion}) |
| 26 | |
Ankush Menat | 4551d7d | 2021-08-19 13:41:10 +0530 | [diff] [blame] | 27 | return student_progress |