feat: use new trail access method for course progress and course page

This commit is contained in:
swve 2025-06-13 11:56:51 +02:00
parent 3345fb871c
commit 06639d85ff
3 changed files with 27 additions and 8 deletions

View file

@ -488,6 +488,7 @@ function CoursesActions({ courseuuid, orgslug, course, trailData }: CourseAction
orgslug={orgslug}
isOpen={isProgressOpen}
onClose={() => setIsProgressOpen(false)}
trailData={trailData}
/>
</div>
</div>

View file

@ -9,9 +9,10 @@ interface CourseProgressProps {
orgslug: string
isOpen: boolean
onClose: () => void
trailData: any
}
const CourseProgress: React.FC<CourseProgressProps> = ({ course, orgslug, isOpen, onClose }) => {
const CourseProgress: React.FC<CourseProgressProps> = ({ course, orgslug, isOpen, onClose, trailData }) => {
const [completedActivities, setCompletedActivities] = useState(0)
const [totalActivities, setTotalActivities] = useState(0)
@ -33,9 +34,13 @@ const CourseProgress: React.FC<CourseProgressProps> = ({ course, orgslug, isOpen
}, [course])
const isActivityDone = (activity: any) => {
const run = course?.trail?.runs?.find(
(run: any) => run.course_id === course.id
)
const cleanCourseUuid = course.course_uuid?.replace('course_', '');
const run = trailData?.runs?.find(
(run: any) => {
const cleanRunCourseUuid = run.course?.course_uuid?.replace('course_', '');
return cleanRunCourseUuid === cleanCourseUuid;
}
);
if (run) {
return run.steps.find((step: any) => step.activity_id === activity.id)
}