fix: show progress bar for enrolled courses

This commit is contained in:
Jannat Patel
2025-03-04 17:14:01 +05:30
parent 47a30763a0
commit 22a9169f87
3 changed files with 25 additions and 3 deletions

View File

@@ -16,7 +16,8 @@
{{ __('Featured') }}
</Badge>
<div
v-for="tag in course.tags?.split(',')"
v-if="course.tags"
v-for="tag in course.tags?.split(', ')"
class="text-xs bg-white text-gray-800 px-2 py-0.5 rounded-md"
>
{{ tag }}

View File

@@ -201,17 +201,19 @@ const updateTabFilter = () => {
if (!user.data) {
return
}
delete filters.value['live']
delete filters.value['created']
delete filters.value['published_on']
delete filters.value['upcoming']
if (currentTab.value == 'Enrolled' && user.data?.is_student) {
filters.value['enrolled'] = 1
delete filters.value['published']
} else if (user.data?.is_student) {
delete filters.value['enrolled']
} else {
delete filters.value['published']
delete filters.value['enrolled']
if (currentTab.value == 'Live') {
filters.value['published'] = 1
filters.value['upcoming'] = 0

View File

@@ -1006,6 +1006,7 @@ def get_courses(filters=None, start=0, page_length=20):
if show_featured:
courses = get_featured_courses(filters, or_filters, fields) + courses
courses = get_enrollment_details(courses)
courses = get_course_card_details(courses)
return courses
@@ -1067,6 +1068,24 @@ def update_course_filters(filters):
return filters, or_filters, show_featured
def get_enrollment_details(courses):
for course in courses:
filters = {
"course": course.name,
"member": frappe.session.user,
}
if frappe.db.exists("LMS Enrollment", filters):
course.membership = frappe.db.get_value(
"LMS Enrollment",
filters,
["name", "course", "current_lesson", "progress", "member"],
as_dict=1,
)
return courses
def get_featured_courses(filters, or_filters, fields):
filters.update({"featured": 1})
featured_courses = frappe.get_all(