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