From 1faf7fb18f581c1c73aec04a09da8c05c3337688 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Mon, 16 Sep 2024 14:43:28 -0400 Subject: [PATCH] Adding more options related to session content. --- src/lib/ae_events__event.ts | 66 ++- src/lib/ae_stores.ts | 1 + src/lib/element_access_type.svelte | 49 +- .../events_pres_mgmt/session_page_menu.svelte | 438 +++++++++++------- .../events_pres_mgmt/session_view.svelte | 61 +-- 5 files changed, 399 insertions(+), 216 deletions(-) diff --git a/src/lib/ae_events__event.ts b/src/lib/ae_events__event.ts index 79d51791..22d26010 100644 --- a/src/lib/ae_events__event.ts +++ b/src/lib/ae_events__event.ts @@ -219,14 +219,24 @@ export function sync_config__event_pres_mgmt( // Locking the config is targeted at the trusted staff level and below. It is more or less ignored at the global manager and super levels. It may be enforced at the staff admin level? - pres_mgmt_cfg_local.lock_config = pres_mgmt_cfg_remote?.lock_config ?? true; // This disables the sync local config button and options. + pres_mgmt_cfg_local.lock_config = pres_mgmt_cfg_remote?.lock_config ? true : false; // This disables the sync local config button and options. if (pres_mgmt_cfg_local.lock_config) { + console.log(`The config should be locked! Forcing the sync!`); // This is to forcibly sync the local config with the remote config. - pres_mgmt_cfg_local.sync_local_config = pres_mgmt_cfg_remote?.sync_local_config ?? true; + pres_mgmt_cfg_local.sync_local_config = true; } else { // Do not override the preference for syncing the local config with the remote config. + console.log(`The config is not locked. Currently set to sync: ${pres_mgmt_cfg_local.sync_local_config}`); + + // Check if the sync_local_config is undefined versus just false. + if (pres_mgmt_cfg_local?.sync_local_config === undefined) { + pres_mgmt_cfg_local.sync_local_config = true; + } else { + pres_mgmt_cfg_local.sync_local_config = pres_mgmt_cfg_remote?.sync_local_config ?? false; + } } + // Deal with things that can not be overridden first: // Labels: pres_mgmt_cfg_local.label__presenter_external_id = pres_mgmt_cfg_remote?.label__presenter_external_id ?? 'External ID'; @@ -235,21 +245,21 @@ export function sync_config__event_pres_mgmt( pres_mgmt_cfg_local.label__session_poc_name = pres_mgmt_cfg_remote?.label__session_poc_name ?? 'Point of Contact'; // Hide content: - pres_mgmt_cfg_local.hide__location_code = pres_mgmt_cfg_remote?.hide__location_code ?? false; + // pres_mgmt_cfg_local.hide__location_code = pres_mgmt_cfg_remote?.hide__location_code ?? false; - pres_mgmt_cfg_local.hide__presentation_code = pres_mgmt_cfg_remote?.hide__presentation_code ?? false; + // pres_mgmt_cfg_local.hide__presentation_code = pres_mgmt_cfg_remote?.hide__presentation_code ?? false; - pres_mgmt_cfg_local.hide__presenter_code = pres_mgmt_cfg_remote?.hide__presenter_code ?? false; - pres_mgmt_cfg_local.hide__presenter_biography = pres_mgmt_cfg_remote?.hide__presenter_biography ?? false; + // pres_mgmt_cfg_local.hide__presenter_code = pres_mgmt_cfg_remote?.hide__presenter_code ?? false; + // pres_mgmt_cfg_local.hide__presenter_biography = pres_mgmt_cfg_remote?.hide__presenter_biography ?? false; - pres_mgmt_cfg_local.hide__session_code = pres_mgmt_cfg_remote?.hide__session_code ?? false; - pres_mgmt_cfg_local.hide__session_description = pres_mgmt_cfg_remote?.hide__session_description ?? false; - pres_mgmt_cfg_local.hide__session_location = pres_mgmt_cfg_remote?.hide__session_location ?? false; + // pres_mgmt_cfg_local.hide__session_code = pres_mgmt_cfg_remote?.hide__session_code ?? false; + // pres_mgmt_cfg_local.hide__session_description = pres_mgmt_cfg_remote?.hide__session_description ?? false; + // pres_mgmt_cfg_local.hide__session_location = pres_mgmt_cfg_remote?.hide__session_location ?? false; pres_mgmt_cfg_local.hide__session_poc = pres_mgmt_cfg_remote?.hide__session_poc ?? false; - pres_mgmt_cfg_local.hide__session_poc_profile = pres_mgmt_cfg_remote?.hide__session_poc_profile ?? false; // This should still allow the POC name to be shown. - pres_mgmt_cfg_local.hide__session_poc_biography = pres_mgmt_cfg_remote?.hide__session_poc_biography ?? false; // New and in progress - pres_mgmt_cfg_local.hide__session_poc_profile_pic = pres_mgmt_cfg_remote?.hide__session_poc_profile_pic ?? false; // New and in progress + // pres_mgmt_cfg_local.hide__session_poc_profile = pres_mgmt_cfg_remote?.hide__session_poc_profile ?? false; // This should still allow the POC name to be shown. + // pres_mgmt_cfg_local.hide__session_poc_biography = pres_mgmt_cfg_remote?.hide__session_poc_biography ?? false; // New and in progress + // pres_mgmt_cfg_local.hide__session_poc_profile_pic = pres_mgmt_cfg_remote?.hide__session_poc_profile_pic ?? false; // New and in progress // pres_mgmt_cfg_local.hide__report_kv = pres_mgmt_cfg_remote?.hide__report_kv ?? null; @@ -261,11 +271,37 @@ export function sync_config__event_pres_mgmt( pres_mgmt_cfg_local.require__session_agree = pres_mgmt_cfg_remote?.require__session_agree ?? false; // New and in progress // Show content: - pres_mgmt_cfg_local.show__email_access_link = pres_mgmt_cfg_remote?.show__email_access_link ?? false; - pres_mgmt_cfg_local.show__launcher_link = pres_mgmt_cfg_remote?.show__launcher_link ?? false; - pres_mgmt_cfg_local.show__launcher_link_legacy = pres_mgmt_cfg_remote?.show__launcher_link_legacy ?? false; + // pres_mgmt_cfg_local.show__copy_access_link = pres_mgmt_cfg_remote?.show__copy_access_link ?? false; + // pres_mgmt_cfg_local.show__email_access_link = pres_mgmt_cfg_remote?.show__email_access_link ?? false; + // pres_mgmt_cfg_local.show__launcher_link = pres_mgmt_cfg_remote?.show__launcher_link ?? false; + // pres_mgmt_cfg_local.show__launcher_link_legacy = pres_mgmt_cfg_remote?.show__launcher_link_legacy ?? false; // pres_mgmt_cfg_local.show__navigation = pres_mgmt_cfg_remote?.show__navigation ?? false; + + // Deal with things that can be overridden: + if (pres_mgmt_cfg_remote?.sync_local_config) { + // Hide content: + pres_mgmt_cfg_local.hide__location_code = pres_mgmt_cfg_remote?.hide__location_code ?? false; + + pres_mgmt_cfg_local.hide__presentation_code = pres_mgmt_cfg_remote?.hide__presentation_code ?? false; + + pres_mgmt_cfg_local.hide__presenter_code = pres_mgmt_cfg_remote?.hide__presenter_code ?? false; + pres_mgmt_cfg_local.hide__presenter_biography = pres_mgmt_cfg_remote?.hide__presenter_biography ?? false; + + pres_mgmt_cfg_local.hide__session_code = pres_mgmt_cfg_remote?.hide__session_code ?? false; + pres_mgmt_cfg_local.hide__session_description = pres_mgmt_cfg_remote?.hide__session_description ?? false; + pres_mgmt_cfg_local.hide__session_location = pres_mgmt_cfg_remote?.hide__session_location ?? false; + + pres_mgmt_cfg_local.hide__session_poc_profile = pres_mgmt_cfg_remote?.hide__session_poc_profile ?? false; // This should still allow the POC name to be shown. + pres_mgmt_cfg_local.hide__session_poc_biography = pres_mgmt_cfg_remote?.hide__session_poc_biography ?? false; // New and in progress + pres_mgmt_cfg_local.hide__session_poc_profile_pic = pres_mgmt_cfg_remote?.hide__session_poc_profile_pic ?? false; // New and in progress + + pres_mgmt_cfg_local.show__copy_access_link = pres_mgmt_cfg_remote?.show__copy_access_link ?? false; + pres_mgmt_cfg_local.show__email_access_link = pres_mgmt_cfg_remote?.show__email_access_link ?? false; + pres_mgmt_cfg_local.show__launcher_link = pres_mgmt_cfg_remote?.show__launcher_link ?? false; + pres_mgmt_cfg_local.show__launcher_link_legacy = pres_mgmt_cfg_remote?.show__launcher_link_legacy ?? false; + } + if (log_lvl) { console.log(`pres_mgmt_cfg_local:`, pres_mgmt_cfg_local); } diff --git a/src/lib/ae_stores.ts b/src/lib/ae_stores.ts index 68c7b530..cd14014a 100644 --- a/src/lib/ae_stores.ts +++ b/src/lib/ae_stores.ts @@ -60,6 +60,7 @@ export let ae_app_local_data_struct: key_val = { debug: false, // A simple flag to know if we should show debug information. edit_mode: false, // A simple flag to know if we should show edit mode options. + sync_local_config: true, // A simple flag to know if we should sync local config with the remote API server. 'account_id': ae_account_id, // OSIT Demo _XY7DXtc9MY 'account_code': 'not_set', diff --git a/src/lib/element_access_type.svelte b/src/lib/element_access_type.svelte index 1062b54a..c81306a8 100644 --- a/src/lib/element_access_type.svelte +++ b/src/lib/element_access_type.svelte @@ -5,7 +5,8 @@ import { createEventDispatcher, onMount, tick } from 'svelte'; import { ae_util } from '$lib/ae_utils'; import { ae_loc, ae_sess, ae_api, slct, slct_trigger } from '$lib/ae_stores'; -// import { events_loc } from '$lib/ae_events_stores'; +// Ideally the Event related stores should not be imported here? +import { events_loc } from '$lib/ae_events_stores'; // import { db_events } from "$lib/db_events"; let entered_passcode: null|string = null; @@ -194,24 +195,68 @@ function dispatch_edit_mode_changed() {
{#if $ae_loc.trusted_access} + {#if $ae_loc.manager_access} + {#if $ae_loc?.sync_local_config} + + {:else} + + {/if} + {/if} + {#if $ae_loc.edit_mode} {:else} {:else} - { - console.log(`ae_crud_updated:`, e.detail); +
- events_func.load_ae_obj_id__event_session({ - api_cfg: $ae_api, - event_session_id: $lq__event_session_obj?.event_session_id_random, - log_lvl: log_lvl - }); - }} - > - - - - - - { - console.log(`ae_crud_updated:`, e.detail); - - events_func.load_ae_obj_id__event_session({ - api_cfg: $ae_api, - event_session_id: $lq__event_session_obj?.event_session_id_random, - log_lvl: log_lvl - }); - }} - > - - - - - - - { - console.log(`ae_crud_updated:`, e.detail); - - events_func.load_ae_obj_id__event_session({ - api_cfg: $ae_api, - event_session_id: $lq__event_session_obj?.event_session_id_random, - log_lvl: log_lvl - }) - .then(function (load_results) { - // Maybe reload page? - // window.location.reload(); - }); - }} - > - - - - - - - - - - - - {#if $ae_loc.authenticated_access} - {#if $events_loc.pres_mgmt.show_content__session_qr} + - {:else} + + + + { + console.log(`ae_crud_updated:`, e.detail); + + events_func.load_ae_obj_id__event_session({ + api_cfg: $ae_api, + event_session_id: $lq__event_session_obj?.event_session_id_random, + log_lvl: log_lvl + }); + }} + > + + + + + + { + console.log(`ae_crud_updated:`, e.detail); + + events_func.load_ae_obj_id__event_session({ + api_cfg: $ae_api, + event_session_id: $lq__event_session_obj?.event_session_id_random, + log_lvl: log_lvl + }) + .then(function (load_results) { + // Maybe reload page? + // window.location.reload(); + }); + }} + > + + + + + + + + + + +
+ +
+ + {#if $ae_loc.authenticated_access} + {#if !$events_loc.pres_mgmt.hide__session_code} + + {:else} + + {/if} {/if} - {/if} + + {#if $ae_loc.trusted_access} + {#if $events_loc.pres_mgmt.show__copy_access_link} + + {:else} + + {/if} + {/if} + + {#if $ae_loc.trusted_access} + {#if $events_loc.pres_mgmt.show__email_access_link} + + {:else} + + {/if} + {/if} + + + {#if $ae_loc.authenticated_access} + {#if $events_loc.pres_mgmt.show_content__session_qr} + + {:else} + + {/if} + {/if} + +
{#if $ae_loc.trusted_access} {#if $ae_loc.edit_mode} {:else} + : + {ae_util.iso_datetime_formatter($lq__event_session_obj.start_datetime, 'dddd')}, - + {ae_util.iso_datetime_formatter($lq__event_session_obj.start_datetime, $events_loc.pres_mgmt.datetime_format)} - - {ae_util.iso_datetime_formatter($lq__event_session_obj.end_datetime, $events_loc.launcher.time_format)} + {ae_util.iso_datetime_formatter($lq__event_session_obj.end_datetime, $events_loc.pres_mgmt.time_format)}
  • - Location/Room: + Location/room: @@ -451,7 +456,7 @@ $: if ($lq__event_session_obj) { class="text-blue-500 hover:text-blue-800 hover:underline" title="View Person: {$lq__event_session_obj?.poc_person_full_name} {$lq__event_session_obj?.poc_person_id_random}" > - {@html $lq__event_session_obj.poc_person_full_name ? $lq__event_session_obj.poc_person_full_name : ae_snip.html__not_set} + {@html $lq__event_session_obj?.poc_person_full_name ? $lq__event_session_obj.poc_person_full_name : ae_snip.html__not_set} {/if} @@ -463,8 +468,8 @@ $: if ($lq__event_session_obj) { class="btn btn-sm variant-soft-primary hover:variant-filled-primary" on:click={() => ($events_sess.pres_mgmt.show__session_poc_profile = true)}> - {$events_loc.pres_mgmt?.label__session_poc_name}'s - Profile + + {$lq__event_session_obj?.poc_person_full_name}'s Profile @@ -706,7 +711,10 @@ $: if ($lq__event_session_obj) { {#if $events_loc.auth__kv.session[$events_slct.event_session_id] === true} Signed In {/if} - {#if $lq__event_session_obj.poc_person_primary_email && ($ae_loc.trusted_access || !$events_loc.auth__person.id && $events_loc.pres_mgmt?.show__email_access_link)} + {#if $events_loc.pres_mgmt?.show__email_access_link + && $lq__event_session_obj.poc_person_primary_email + && ($ae_loc.trusted_access || !$events_loc.auth__kv.session[$lq__event_session_obj?.event_session_id_random]) + }