chore: update queue dashboard authentication and improve course component handling

- Replaced email/token-based authentication with HTTP Basic Auth for the queue dashboard in production.
- Updated course components to use courseId instead of courseSlug for better consistency.
- Adjusted role-based security checks to utilize isStudentExperience for conditional rendering.
- Enhanced view-as-student functionality to redirect correctly based on courseId.
This commit is contained in:
Rotimi Best
2026-06-07 20:32:37 +01:00
parent 3561dc0fda
commit 48ce4d4d64
8 changed files with 45 additions and 64 deletions
@@ -80,6 +80,7 @@
<ViewAsStudentModal
bind:open={viewAsStudentOpen}
courseId={courseApi.course?.id}
courseSlug={courseApi.course?.slug}
currentOrgDomain={$currentOrgDomain}
/>
@@ -6,11 +6,12 @@
interface Props {
open?: boolean;
courseId?: string | null;
courseSlug?: string | null;
currentOrgDomain?: string;
}
let { open = $bindable(false), courseSlug = null, currentOrgDomain = '' }: Props = $props();
let { open = $bindable(false), courseId = null, courseSlug = null, currentOrgDomain = '' }: Props = $props();
let isNavigating = $state(false);
@@ -24,7 +25,7 @@
isNavigating = true;
// Opens the student view in a new tab; close the modal once the handoff starts.
const ok = await viewAsStudent({ courseSlug, currentOrgDomain });
const ok = await viewAsStudent({ courseId, currentOrgDomain });
isNavigating = false;
if (ok) {
@@ -59,7 +60,7 @@
<Button variant="secondary" onclick={handleCopyLink} disabled={!courseSlug || isNavigating}>
{$t('course.view_as_student.copy_link')}
</Button>
<Button variant="default" onclick={handleGoToLms} disabled={!courseSlug} loading={isNavigating}>
<Button variant="default" onclick={handleGoToLms} disabled={!courseId} loading={isNavigating}>
{$t('course.view_as_student.go_to_lms')}
</Button>
</Dialog.Footer>