From 01e320e172dc545c51e364d3cb0bc53cf0b7d7e7 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Fri, 15 Nov 2024 16:56:56 -0500 Subject: [PATCH] Work on Novi related permissions. Pulled from iframe URL. --- src/lib/ae_idaa_stores.ts | 9 +++-- src/routes/idaa/(idaa)/+layout.svelte | 35 +++++++++++++++++++ .../idaa/(idaa)/archives/+layout.svelte | 13 ++++++- 3 files changed, 54 insertions(+), 3 deletions(-) diff --git a/src/lib/ae_idaa_stores.ts b/src/lib/ae_idaa_stores.ts index 6a516c61..5977a47a 100644 --- a/src/lib/ae_idaa_stores.ts +++ b/src/lib/ae_idaa_stores.ts @@ -23,8 +23,13 @@ let idaa_local_data_struct: key_val = { novi_uuid: null, novi_email: null, novi_full_name: null, - novi_admin_li: [], - novi_trusted_li: [], + novi_admin_li: [ + "2b078deb-b4e7-4203-99da-9f7cd62159a5" + ], + novi_trusted_li: [ + "c9ea07b5-06b0-4a43-a2d0-8d06558c8a82", + "58db22ee-4b0a-49a7-9f34-53d2ba85a84b", + ], 'ds': {}, diff --git a/src/routes/idaa/(idaa)/+layout.svelte b/src/routes/idaa/(idaa)/+layout.svelte index 5bfc16c3..c9a8f830 100644 --- a/src/routes/idaa/(idaa)/+layout.svelte +++ b/src/routes/idaa/(idaa)/+layout.svelte @@ -3,6 +3,7 @@ export let data: any; import { browser } from '$app/environment'; import { ae_snip, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$lib/ae_stores'; +import { idaa_loc, idaa_sess, idaa_slct } from '$lib/ae_idaa_stores'; let log_lvl = 0; @@ -10,7 +11,41 @@ $ae_loc.url_origin = data.url.origin; $ae_loc.params = data.params; console.log(`+layout.svelte data:`, data); +if (browser) { + $idaa_loc.novi_uuid = data.url.searchParams.get('uuid'); // data.params.uuid; + $idaa_loc.novi_email = decodeURIComponent(data.url.searchParams.get('email')); + $idaa_loc.novi_full_name = decodeURIComponent(data.url.searchParams.get('full_name')); + $idaa_loc.novi_admin_li = $ae_loc.site_cfg_json?.novi_admin_li ?? []; + $idaa_loc.novi_trusted_li = $ae_loc.site_cfg_json?.novi_trusted_li ?? []; + // console.log(`$idaa_loc.novi_uuid:`, $idaa_loc.novi_uuid); + // console.log(`$idaa_loc.novi_admin_li:`, $idaa_loc.novi_admin_li); + // NOTE: Check if the novi_uuid is in the novi_admin_li list + if ($idaa_loc.novi_uuid && $idaa_loc.novi_admin_li) { + if ($idaa_loc.novi_admin_li.includes($idaa_loc.novi_uuid)) { + $ae_loc.access_type = 'administrator'; + $ae_loc.super_access = false; + $ae_loc.manager_access = false; + $ae_loc.administrator_access = true; + $ae_loc.trusted_access = true; + $ae_loc.public_access = true; + $ae_loc.authenticated_access = true; + } + } + // NOTE: Check if the novi_uuid is in the novi_trusted_li list + if ($idaa_loc.novi_uuid && $idaa_loc.novi_trusted_li) { + if ($idaa_loc.novi_trusted_li.includes($idaa_loc.novi_uuid)) { + $ae_loc.access_type = 'trusted'; + $ae_loc.super_access = false; + $ae_loc.manager_access = false; + $ae_loc.administrator_access = false; + $ae_loc.trusted_access = true; + $ae_loc.public_access = true; + $ae_loc.authenticated_access = true; + } + } + +} let iframe = data.url.searchParams.get('iframe'); if (browser && iframe == 'true') { diff --git a/src/routes/idaa/(idaa)/archives/+layout.svelte b/src/routes/idaa/(idaa)/archives/+layout.svelte index c627d36d..0bbbe28b 100644 --- a/src/routes/idaa/(idaa)/archives/+layout.svelte +++ b/src/routes/idaa/(idaa)/archives/+layout.svelte @@ -1,7 +1,8 @@