fix(dashboard): redirect to course start after auto-enroll (#741)
* fix(dashboard): redirect to course start after auto-enroll After successful enrollment on the org-site enroll page, verified users were always sent to /lms because resolvePostEnrollRedirect was hardcoded. Restore the API redirectTo target (/courses/:id/lessons?next=true) so students land on their first lesson, with /course/:slug as fallback. Co-authored-by: Rotimi Best <[email protected]> * fix(dashboard): match LMS continue path after auto-enroll Use the same student course continue URL as the LMS home page (/courses/:id/lessons?next=true) via a shared helper, and navigate with goto instead of a hard reload or org-site /course/:slug fallback. Co-authored-by: Rotimi Best <[email protected]> --------- Co-authored-by: Rotimi Best <[email protected]>
This commit is contained in:
co-authored by
Rotimi Best
parent
8bed9f6b4e
commit
bce0f582ce
@@ -13,6 +13,7 @@
|
||||
import { resolve } from '$app/paths';
|
||||
import { authClient } from '$lib/utils/services/auth/client';
|
||||
import { appInitApi } from '$features/app/init.svelte';
|
||||
import { getStudentCourseContinuePath } from '$features/course/utils/student-course-navigation';
|
||||
|
||||
let { data } = $props();
|
||||
|
||||
@@ -28,10 +29,6 @@
|
||||
const isLoggedIn = $derived(sessionReady && Boolean(sessionUser));
|
||||
const isEmailVerified = $derived(Boolean($profile.isEmailVerified || sessionUser?.emailVerified));
|
||||
|
||||
function resolvePostEnrollRedirect(): string {
|
||||
return '/lms';
|
||||
}
|
||||
|
||||
async function sendVerificationEmail() {
|
||||
const email = $profile.email || sessionUser?.email;
|
||||
if (!email) {
|
||||
@@ -141,7 +138,7 @@
|
||||
}
|
||||
|
||||
navigatingAway = true;
|
||||
window.location.href = resolvePostEnrollRedirect();
|
||||
await goto(resolve(getStudentCourseContinuePath(data.course.id), {}));
|
||||
} finally {
|
||||
enrollmentInFlight = false;
|
||||
if (!navigatingAway) {
|
||||
|
||||
Reference in New Issue
Block a user