fix lesson navigation /decryption in course

This commit is contained in:
austinkelsay 2025-05-14 12:57:21 -05:00
parent 724e7aa642
commit 64235797fe
No known key found for this signature in database
GPG Key ID: 5A763922E5BA08EE
3 changed files with 6 additions and 12 deletions

View File

@ -187,7 +187,7 @@ export default function DesktopCourseDetails({
icon="pi pi-play" icon="pi pi-play"
onClick={handleContinueClick} onClick={handleContinueClick}
outlined={true} outlined={true}
disabled={paidCourse && !decryptionPerformed} disabled={paidCourse && (!decryptionPerformed || paidCourse === 'loading')}
/> />
</div> </div>
)} )}

View File

@ -175,7 +175,7 @@ export default function MobileCourseDetails({
icon="pi pi-play" icon="pi pi-play"
onClick={handleContinueClick} onClick={handleContinueClick}
outlined={true} outlined={true}
disabled={paidCourse && !decryptionPerformed} disabled={paidCourse && (!decryptionPerformed || paidCourse === 'loading')}
/> />
</div> </div>
)} )}

View File

@ -133,7 +133,7 @@ const Course = () => {
session, session,
paidCourse, paidCourse,
course, course,
lessons, uniqueLessons,
setLessons, setLessons,
router, router,
activeIndex activeIndex
@ -143,7 +143,7 @@ const Course = () => {
const isDecrypting = useMemo(() => { const isDecrypting = useMemo(() => {
if (!paidCourse || uniqueLessons.length === 0) return false; if (!paidCourse || uniqueLessons.length === 0) return false;
const current = uniqueLessons[activeIndex]; const current = uniqueLessons[activeIndex];
return current && !decryptedLessonIds[current.id]; return current && decryptedLessonIds && !decryptedLessonIds[current.id];
}, [paidCourse, uniqueLessons, activeIndex, decryptedLessonIds]); }, [paidCourse, uniqueLessons, activeIndex, decryptedLessonIds]);
useEffect(() => { useEffect(() => {
@ -242,13 +242,7 @@ const Course = () => {
handlePaymentError={handlePaymentError} handlePaymentError={handlePaymentError}
isMobileView={isMobileView} isMobileView={isMobileView}
completedLessons={completedLessons} completedLessons={completedLessons}
onLessonSelect={(index) => { onLessonSelect={handleLessonSelect}
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 });
}}
toggleToContentTab={() => toggleTab(1)} // Assuming content tab is at index 1 toggleToContentTab={() => toggleTab(1)} // Assuming content tab is at index 1
/> />
</div> </div>
@ -277,7 +271,7 @@ const Course = () => {
activeIndex={activeIndex} activeIndex={activeIndex}
course={course} course={course}
paidCourse={paidCourse} paidCourse={paidCourse}
decryptedLessonIds={decryptedLessonIds} decryptedLessonIds={decryptedLessonIds || {}}
setCompleted={setCompleted} setCompleted={setCompleted}
/> />
)} )}