fix: more trail bugs

This commit is contained in:
swve 2023-07-05 10:59:13 +01:00
parent cab69c8f33
commit b069f1badf
2 changed files with 14 additions and 10 deletions

View file

@ -22,7 +22,12 @@ function Trail(params: any) {
) : ( ) : (
<div className="space-y-6"> <div className="space-y-6">
{trail.courses.map((course: any) => ( {trail.courses.map((course: any) => (
!course.masked ? (
<TrailCourseElement key={trail.trail_id} orgslug={orgslug} course={course} /> <TrailCourseElement key={trail.trail_id} orgslug={orgslug} course={course} />
) : (
<></>
)
))} ))}
</div> </div>

View file

@ -127,10 +127,12 @@ async def get_user_trail_with_orgslug(
length=None length=None
) )
trail["courses"] = live_courses for course in trail["courses"]:
course_id = course["course_id"]
for courses in trail["courses"]: if course_id not in [course["course_id"] for course in live_courses]:
course_id = courses["course_id"] course["masked"] = True
continue
chapters_meta = await get_coursechapters_meta(request, course_id, user) chapters_meta = await get_coursechapters_meta(request, course_id, user)
activities = chapters_meta["activities"] activities = chapters_meta["activities"]
@ -140,11 +142,11 @@ async def get_user_trail_with_orgslug(
{"course_id": course_id}, {"_id": 0} {"course_id": course_id}, {"_id": 0}
) )
courses["course_object"] = course_object course["course_object"] = course_object
num_activities = len(activities) num_activities = len(activities)
num_completed_activities = len(courses.get("activities_marked_complete", [])) num_completed_activities = len(course.get("activities_marked_complete", []))
courses["progress"] = ( course["progress"] = (
round((num_completed_activities / num_activities) * 100, 2) round((num_completed_activities / num_activities) * 100, 2)
if num_activities > 0 if num_activities > 0
else 0 else 0
@ -248,9 +250,6 @@ async def remove_course_from_trail(
org = await orgs.find_one({"slug": orgslug}) org = await orgs.find_one({"slug": orgslug})
org = PublicOrganization(**org) org = PublicOrganization(**org)
print(org)
trail = await trails.find_one({"user_id": user.user_id, "org_id": org["org_id"]}) trail = await trails.find_one({"user_id": user.user_id, "org_id": org["org_id"]})
if not trail: if not trail: