diff --git a/src/components/content/courses/details/DesktopCourseDetails.js b/src/components/content/courses/details/DesktopCourseDetails.js index 7ad619e..82fd837 100644 --- a/src/components/content/courses/details/DesktopCourseDetails.js +++ b/src/components/content/courses/details/DesktopCourseDetails.js @@ -187,7 +187,7 @@ export default function DesktopCourseDetails({ icon="pi pi-play" onClick={handleContinueClick} outlined={true} - disabled={paidCourse && !decryptionPerformed} + disabled={paidCourse && (!decryptionPerformed || paidCourse === 'loading')} /> )} diff --git a/src/components/content/courses/details/MobileCourseDetails.js b/src/components/content/courses/details/MobileCourseDetails.js index 463c8f1..3746969 100644 --- a/src/components/content/courses/details/MobileCourseDetails.js +++ b/src/components/content/courses/details/MobileCourseDetails.js @@ -175,7 +175,7 @@ export default function MobileCourseDetails({ icon="pi pi-play" onClick={handleContinueClick} outlined={true} - disabled={paidCourse && !decryptionPerformed} + disabled={paidCourse && (!decryptionPerformed || paidCourse === 'loading')} /> )} diff --git a/src/pages/course/[slug]/index.js b/src/pages/course/[slug]/index.js index 090c0c3..5b9542f 100644 --- a/src/pages/course/[slug]/index.js +++ b/src/pages/course/[slug]/index.js @@ -133,7 +133,7 @@ const Course = () => { session, paidCourse, course, - lessons, + uniqueLessons, setLessons, router, activeIndex @@ -143,7 +143,7 @@ const Course = () => { const isDecrypting = useMemo(() => { if (!paidCourse || uniqueLessons.length === 0) return false; const current = uniqueLessons[activeIndex]; - return current && !decryptedLessonIds[current.id]; + return current && decryptedLessonIds && !decryptedLessonIds[current.id]; }, [paidCourse, uniqueLessons, activeIndex, decryptedLessonIds]); useEffect(() => { @@ -242,13 +242,7 @@ const Course = () => { handlePaymentError={handlePaymentError} isMobileView={isMobileView} completedLessons={completedLessons} - onLessonSelect={(index) => { - handleLessonSelect(index); - // Update URL with active parameter - const url = new URL(window.location.href); - url.searchParams.set('active', index); - router.push(url, undefined, { shallow: true }); - }} + onLessonSelect={handleLessonSelect} toggleToContentTab={() => toggleTab(1)} // Assuming content tab is at index 1 /> @@ -277,7 +271,7 @@ const Course = () => { activeIndex={activeIndex} course={course} paidCourse={paidCourse} - decryptedLessonIds={decryptedLessonIds} + decryptedLessonIds={decryptedLessonIds || {}} setCompleted={setCompleted} /> )}