diff --git a/src/routes/idaa/(idaa)/video_conferences/+page.svelte b/src/routes/idaa/(idaa)/video_conferences/+page.svelte index 297cff68..9423f315 100644 --- a/src/routes/idaa/(idaa)/video_conferences/+page.svelte +++ b/src/routes/idaa/(idaa)/video_conferences/+page.svelte @@ -477,10 +477,15 @@ async function fetch_novi_data() { } } - const novi_idaa_group_guid_li = - $ae_loc.site_cfg_json?.novi_idaa_group_guid_li ?? []; + // Use the group UUID from the URL param to check membership in that specific group. + // Each Jitsi iframe page passes the relevant group's UUID — this is more precise than + // checking against a global list of all IDAA moderator groups from site config. + const group_uuid = url_params.g_uuid ?? null; + if (!group_uuid) { + console.warn('Jitsi: No g_uuid in URL — skipping group moderator check.'); + } const moderatorIdSet = await get_novi_group_moderators( - novi_idaa_group_guid_li, + group_uuid ? [group_uuid] : [], novi_api_root_url, novi_api_key ); diff --git a/src/routes/idaa/(idaa)/video_conferences/+page.ts b/src/routes/idaa/(idaa)/video_conferences/+page.ts index a3397b37..ff581ab7 100644 --- a/src/routes/idaa/(idaa)/video_conferences/+page.ts +++ b/src/routes/idaa/(idaa)/video_conferences/+page.ts @@ -4,6 +4,7 @@ export function load({ url }) { return { params: { uuid: url.searchParams.get('uuid'), + g_uuid: url.searchParams.get('g_uuid'), email: url.searchParams.get('email'), full_name: url.searchParams.get('full_name'), moderator: url.searchParams.get('moderator'),