This should have been saved earlier. Lots of moving code around to and clean up.
This commit is contained in:
@@ -302,6 +302,11 @@ export function handle_db_save_ae_obj_li__event_presenter(
|
|||||||
// From SQL view
|
// From SQL view
|
||||||
file_count: obj.file_count,
|
file_count: obj.file_count,
|
||||||
|
|
||||||
|
event_session_code: obj.event_session_code,
|
||||||
|
event_session_name: obj.event_session_name,
|
||||||
|
event_presentation_code: obj.event_presentation_code,
|
||||||
|
event_presentation_name: obj.event_presentation_name,
|
||||||
|
|
||||||
person_external_id: obj.person_external_id,
|
person_external_id: obj.person_external_id,
|
||||||
person_given_name: obj.person_given_name,
|
person_given_name: obj.person_given_name,
|
||||||
person_family_name: obj.person_family_name,
|
person_family_name: obj.person_family_name,
|
||||||
@@ -325,3 +330,64 @@ export function handle_db_save_ae_obj_li__event_presenter(
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export async function handle_email_sign_in__event_presenter (
|
||||||
|
{
|
||||||
|
api_cfg,
|
||||||
|
to_email,
|
||||||
|
to_name,
|
||||||
|
base_url,
|
||||||
|
person_id,
|
||||||
|
person_passcode,
|
||||||
|
event_session_id,
|
||||||
|
event_presentation_id,
|
||||||
|
event_presenter_id,
|
||||||
|
session_name,
|
||||||
|
presentation_name
|
||||||
|
}: {
|
||||||
|
api_cfg: any,
|
||||||
|
to_email: string,
|
||||||
|
to_name: string,
|
||||||
|
base_url: string,
|
||||||
|
person_id: string,
|
||||||
|
person_passcode: string,
|
||||||
|
event_session_id: string,
|
||||||
|
event_presentation_id: string,
|
||||||
|
event_presenter_id: string,
|
||||||
|
session_name: string,
|
||||||
|
presentation_name: string
|
||||||
|
}
|
||||||
|
) {
|
||||||
|
console.log(`*** handle_email_sign_in__event_presenter() *** to_email=${to_email} to_name=${to_name} person_id=${person_id} person_passcode=${person_passcode} presentation_id=${event_presentation_id} presenter_id=${event_presenter_id}`);
|
||||||
|
|
||||||
|
let subject = `LCI Congress 2024 - Pres Mgmt Hub Sign In Link for ${session_name} (ID: ${event_session_id})`;
|
||||||
|
|
||||||
|
let sign_in_url = encodeURI(`${base_url}/events_pres_mgmt/session/${event_session_id}?person_id=${person_id}&person_pass=${person_passcode}&presentation_id=${event_presentation_id}&presenter_id=${event_presenter_id}`)
|
||||||
|
|
||||||
|
let body_html = `
|
||||||
|
<div>${to_name},
|
||||||
|
<p>Your link to sign into the presentation management hub for LCI Congress 2024 is below. If you did not request this, please delete and ignore this email. If you need to make any changes or updates to your submission, you may use this link again later.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<strong>26th Annual Lean Construction Congress (2024)</strong>:<br>
|
||||||
|
<p>
|
||||||
|
Session Name: ${session_name}<br>
|
||||||
|
Session ID: ${event_session_id}<br>
|
||||||
|
Presentation Name: ${presentation_name}<br>
|
||||||
|
Presentation ID: ${event_presentation_id}
|
||||||
|
</p>
|
||||||
|
<p>Use this link to view or update your LCI 2024 presentation information.<br>
|
||||||
|
Copy and paste link: <a href="${sign_in_url}">${sign_in_url}</a></p>
|
||||||
|
</div>`;
|
||||||
|
|
||||||
|
api.send_email({
|
||||||
|
api_cfg: api_cfg,
|
||||||
|
from_email: 'noreply+presmgmt@oneskyit.com',
|
||||||
|
from_name: 'LCI 2024 Pres Mgmt Hub',
|
||||||
|
to_email: to_email,
|
||||||
|
subject: subject,
|
||||||
|
body_html: body_html,
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -327,3 +327,58 @@ export function handle_db_save_ae_obj_li__event_session(
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// This is intended for the Point of Contact (POC) for the session.
|
||||||
|
// Updated 2024-07-01
|
||||||
|
export async function handle_email_sign_in__event_session (
|
||||||
|
{
|
||||||
|
api_cfg,
|
||||||
|
to_email,
|
||||||
|
to_name,
|
||||||
|
base_url,
|
||||||
|
person_id,
|
||||||
|
person_passcode,
|
||||||
|
event_session_id,
|
||||||
|
session_name,
|
||||||
|
}: {
|
||||||
|
api_cfg: any,
|
||||||
|
to_email: string,
|
||||||
|
to_name: string,
|
||||||
|
base_url: string,
|
||||||
|
person_id: string,
|
||||||
|
person_passcode: string,
|
||||||
|
event_session_id: string,
|
||||||
|
session_name: string,
|
||||||
|
}
|
||||||
|
) {
|
||||||
|
console.log(`*** handle_email_sign_in__event_session() *** to_email=${to_email} to_name=${to_name} person_id=${person_id} person_passcode=${person_passcode} session_id=${event_session_id}`);
|
||||||
|
|
||||||
|
let subject = `LCI Congress 2024 - Pres Mgmt Hub Sign In Link for ${session_name} (ID: ${event_session_id})`;
|
||||||
|
|
||||||
|
let sign_in_url = encodeURI(`${base_url}/events_pres_mgmt/session/${event_session_id}?person_id=${person_id}&person_pass=${person_passcode}&session_id=${event_session_id}`)
|
||||||
|
|
||||||
|
let body_html = `
|
||||||
|
<div>${to_name},
|
||||||
|
<p>Your link to sign into the presentation management hub as a session Champion for LCI Congress 2024 is below. If you did not request this, please delete and ignore this email. If you need to make any changes or updates to your submission, you may use this link again later.</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
<strong>26th Annual Lean Construction Congress (2024)</strong>:<br>
|
||||||
|
<p>
|
||||||
|
Session Name: ${session_name}<br>
|
||||||
|
Session ID: ${event_session_id}
|
||||||
|
</p>
|
||||||
|
<p>Use this link to view or update your LCI 2024 session information.<br>
|
||||||
|
Copy and paste link: <a href="${sign_in_url}">${sign_in_url}</a></p>
|
||||||
|
</div>`;
|
||||||
|
|
||||||
|
api.send_email({
|
||||||
|
api_cfg: api_cfg,
|
||||||
|
from_email: 'noreply+presmgmt@oneskyit.com',
|
||||||
|
from_name: 'LCI 2024 Pres Mgmt Hub',
|
||||||
|
to_email: to_email,
|
||||||
|
subject: subject,
|
||||||
|
body_html: body_html,
|
||||||
|
});
|
||||||
|
}
|
||||||
@@ -38,6 +38,7 @@ import {
|
|||||||
handle_load_ae_obj_li__event_session,
|
handle_load_ae_obj_li__event_session,
|
||||||
handle_search__event_session,
|
handle_search__event_session,
|
||||||
handle_db_save_ae_obj_li__event_session,
|
handle_db_save_ae_obj_li__event_session,
|
||||||
|
handle_email_sign_in__event_session,
|
||||||
} from "$lib/ae_events__event_session";
|
} from "$lib/ae_events__event_session";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
@@ -53,6 +54,7 @@ import {
|
|||||||
handle_create_ae_obj__event_presenter,
|
handle_create_ae_obj__event_presenter,
|
||||||
handle_update_ae_obj__event_presenter,
|
handle_update_ae_obj__event_presenter,
|
||||||
handle_db_save_ae_obj_li__event_presenter,
|
handle_db_save_ae_obj_li__event_presenter,
|
||||||
|
handle_email_sign_in__event_presenter,
|
||||||
} from "$lib/ae_events__event_presenter";
|
} from "$lib/ae_events__event_presenter";
|
||||||
|
|
||||||
import {
|
import {
|
||||||
@@ -79,6 +81,7 @@ let export_obj = {
|
|||||||
handle_load_ae_obj_id__event_session: handle_load_ae_obj_id__event_session,
|
handle_load_ae_obj_id__event_session: handle_load_ae_obj_id__event_session,
|
||||||
handle_load_ae_obj_li__event_session: handle_load_ae_obj_li__event_session,
|
handle_load_ae_obj_li__event_session: handle_load_ae_obj_li__event_session,
|
||||||
handle_search__event_session: handle_search__event_session,
|
handle_search__event_session: handle_search__event_session,
|
||||||
|
handle_email_sign_in__event_session: handle_email_sign_in__event_session,
|
||||||
|
|
||||||
handle_load_ae_obj_id__event_presentation: handle_load_ae_obj_id__event_presentation,
|
handle_load_ae_obj_id__event_presentation: handle_load_ae_obj_id__event_presentation,
|
||||||
handle_load_ae_obj_li__event_presentation: handle_load_ae_obj_li__event_presentation,
|
handle_load_ae_obj_li__event_presentation: handle_load_ae_obj_li__event_presentation,
|
||||||
@@ -88,6 +91,7 @@ let export_obj = {
|
|||||||
handle_load_ae_obj_li__event_presenter: handle_load_ae_obj_li__event_presenter,
|
handle_load_ae_obj_li__event_presenter: handle_load_ae_obj_li__event_presenter,
|
||||||
handle_create_ae_obj__event_presenter: handle_create_ae_obj__event_presenter,
|
handle_create_ae_obj__event_presenter: handle_create_ae_obj__event_presenter,
|
||||||
handle_update_ae_obj__event_presenter: handle_update_ae_obj__event_presenter,
|
handle_update_ae_obj__event_presenter: handle_update_ae_obj__event_presenter,
|
||||||
|
handle_email_sign_in__event_presenter: handle_email_sign_in__event_presenter,
|
||||||
|
|
||||||
handle_load_ae_obj_id__badge: handle_load_ae_obj_id__badge,
|
handle_load_ae_obj_id__badge: handle_load_ae_obj_id__badge,
|
||||||
handle_load_ae_obj_li__badge: handle_load_ae_obj_li__badge,
|
handle_load_ae_obj_li__badge: handle_load_ae_obj_li__badge,
|
||||||
|
|||||||
@@ -468,6 +468,11 @@ export interface Presenter {
|
|||||||
// Additional fields for convenience (database views)
|
// Additional fields for convenience (database views)
|
||||||
file_count?: null|number;
|
file_count?: null|number;
|
||||||
|
|
||||||
|
event_session_code?: null|string;
|
||||||
|
event_session_name?: null|string;
|
||||||
|
event_presentation_code?: null|string;
|
||||||
|
event_presentation_name?: null|string;
|
||||||
|
|
||||||
person_external_id?: null|string;
|
person_external_id?: null|string;
|
||||||
person_given_name?: null|string;
|
person_given_name?: null|string;
|
||||||
person_family_name?: null|string;
|
person_family_name?: null|string;
|
||||||
|
|||||||
@@ -1,8 +1,12 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { createEventDispatcher, onMount, tick } from 'svelte';
|
import { createEventDispatcher, onMount, tick } from 'svelte';
|
||||||
|
|
||||||
|
// import { liveQuery } from "dexie";
|
||||||
|
|
||||||
import { ae_util } from '$lib/ae_utils';
|
import { ae_util } from '$lib/ae_utils';
|
||||||
import { ae_loc, ae_sess, ae_api, slct, slct_trigger } from '$lib/ae_stores';
|
import { ae_loc, ae_sess, ae_api, slct, slct_trigger } from '$lib/ae_stores';
|
||||||
|
import { events_loc } from '$lib/ae_events_stores';
|
||||||
|
// import { db_events } from "$lib/db_events";
|
||||||
|
|
||||||
let entered_passcode: null|string = null;
|
let entered_passcode: null|string = null;
|
||||||
let show_passcode_input: boolean = false;
|
let show_passcode_input: boolean = false;
|
||||||
@@ -158,29 +162,90 @@ function dispatch_access_type_changed() {
|
|||||||
access_type: $ae_loc.access_type
|
access_type: $ae_loc.access_type
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function dispatch_edit_mode_changed() {
|
||||||
|
console.log('*** dispatch_edit_mode_changed() ***');
|
||||||
|
|
||||||
|
console.log(ae_util);
|
||||||
|
console.log($ae_loc);
|
||||||
|
|
||||||
|
window.localStorage.setItem('edit_mode', $ae_loc.edit_mode);
|
||||||
|
|
||||||
|
dispatch('edit_mode_changed', {
|
||||||
|
edit_mode: $ae_loc.edit_mode
|
||||||
|
});
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<section id="AE-Quick-Access-Type" class="ae_access_type bg-surface-100 text-surface-800 transition duration-300 delay-150 hover:delay-1000 hover:ease-out hover:transition-all hidden-print">
|
<section id="AE-Quick-Access-Type" class="ae_access_type bg-surface-100 text-surface-800 transition duration-300 delay-150 hover:delay-1000 hover:ease-out hover:transition-all hidden-print flex flex-col items-end gap-1">
|
||||||
{#if $ae_loc.access_type && $ae_loc.access_type != 'anonymous'}
|
|
||||||
{#if $ae_loc.access_type == 'super'}
|
|
||||||
<span class="fas fa-unlock"></span> Super Access
|
<!-- Show list of authorized sessions and presentations for a user -->
|
||||||
{:else if $ae_loc.access_type == 'manager'}
|
<!-- {#if $ae_loc.access_type == 'administrator'}
|
||||||
<span class="fas fa-unlock"></span> Manager Access
|
{#if $events_loc.auth__kv.session}
|
||||||
{:else if $ae_loc.access_type == 'administrator'}
|
Sessions:
|
||||||
<span class="fas fa-unlock"></span> Administrator Access
|
<ul>
|
||||||
{:else if $ae_loc.access_type == 'trusted'}
|
{#each Object.entries($events_loc.auth__kv.session) as [key, value]}
|
||||||
<span class="fas fa-unlock"></span> Trusted Access
|
<li><a href="/events_pres_mgmt/session/{key}">
|
||||||
{:else if $ae_loc.access_type == 'authenticated'}
|
{key}
|
||||||
<span class="fas fa-unlock"></span> Authenticated Access
|
</a></li>
|
||||||
{:else if $ae_loc.access_type == 'anonymous'}
|
{/each}
|
||||||
<span class="fas fa-unlock"></span> Anonymous Access
|
</ul>
|
||||||
|
{/if}
|
||||||
|
{/if} -->
|
||||||
|
|
||||||
|
|
||||||
|
<div>
|
||||||
|
{#if $ae_loc.access_type && $ae_loc.access_type != 'anonymous' && $ae_loc.access_type != 'authenticated'}
|
||||||
|
{#if $ae_loc.edit_mode}
|
||||||
|
<button
|
||||||
|
on:click={() => {
|
||||||
|
$ae_loc.edit_mode = false;
|
||||||
|
dispatch_edit_mode_changed();
|
||||||
|
}}
|
||||||
|
class="btn btn-sm variant-soft-success"
|
||||||
|
>
|
||||||
|
<span class="fas fa-toggle-on mx-1"></span>
|
||||||
|
Edit Mode On
|
||||||
|
</button>
|
||||||
{:else}
|
{:else}
|
||||||
<span class="fas fa-unlock mx-1"></span> Unknown Access
|
<button
|
||||||
|
on:click={() => {
|
||||||
|
$ae_loc.edit_mode = true;
|
||||||
|
dispatch_edit_mode_changed();
|
||||||
|
}}
|
||||||
|
class="btn btn-sm variant-soft-warning"
|
||||||
|
>
|
||||||
|
<span class="fas fa-toggle-off mx-1"></span>
|
||||||
|
Edit Mode?
|
||||||
|
</button>
|
||||||
|
{/if}
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div>
|
||||||
|
{#if $ae_loc.access_type && $ae_loc.access_type != 'anonymous'}
|
||||||
|
<span class="fas fa-unlock mx-1"></span>
|
||||||
|
|
||||||
|
{#if $ae_loc.access_type == 'super'}
|
||||||
|
<span class="fas fa-secret mx-1"></span> Super
|
||||||
|
{:else if $ae_loc.access_type == 'manager'}
|
||||||
|
<span class="fas fa-user-shield mx-1"></span> Manager
|
||||||
|
{:else if $ae_loc.access_type == 'administrator'}
|
||||||
|
<span class="fas fa-user-ninja mx-1"></span> Administrator
|
||||||
|
{:else if $ae_loc.access_type == 'trusted'}
|
||||||
|
Trusted Access
|
||||||
|
{:else if $ae_loc.access_type == 'authenticated'}
|
||||||
|
Authenticated Access
|
||||||
|
{:else if $ae_loc.access_type == 'anonymous'}
|
||||||
|
Anonymous Access
|
||||||
|
{:else}
|
||||||
|
Unknown Access
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
<button
|
<button
|
||||||
class="btn btn-sm access_type_lock_btn hover:transition-all"
|
class="btn btn-sm variant-soft-warning access_type_lock_btn hover:transition-all"
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
handle_clear_access();
|
handle_clear_access();
|
||||||
}}
|
}}
|
||||||
@@ -190,7 +255,7 @@ function dispatch_access_type_changed() {
|
|||||||
</button>
|
</button>
|
||||||
{:else}
|
{:else}
|
||||||
<button
|
<button
|
||||||
class="btn btn-sm access_type_unlock_btn hover:transition-all"
|
class="btn btn-sm variant-soft-success access_type_unlock_btn hover:transition-all"
|
||||||
on:click={async () => {
|
on:click={async () => {
|
||||||
show_passcode_input = !show_passcode_input;
|
show_passcode_input = !show_passcode_input;
|
||||||
await tick();
|
await tick();
|
||||||
@@ -212,7 +277,8 @@ function dispatch_access_type_changed() {
|
|||||||
placeholder="Access code"
|
placeholder="Access code"
|
||||||
/>
|
/>
|
||||||
<!-- <div class="current_text transition-all">{$ae_loc.access_type}</div> -->
|
<!-- <div class="current_text transition-all">{$ae_loc.access_type}</div> -->
|
||||||
{/if}
|
{/if}
|
||||||
|
</div>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|
||||||
@@ -234,9 +300,9 @@ function dispatch_access_type_changed() {
|
|||||||
/* background-color: hsla(60,100%,90%,.30); */
|
/* background-color: hsla(60,100%,90%,.30); */
|
||||||
/* background-color: rgba(var(--color-surface-500) / .5); */
|
/* background-color: rgba(var(--color-surface-500) / .5); */
|
||||||
|
|
||||||
border-top: solid thin hsla(0,0%,0%,.5);
|
border-top: solid thin hsla(0,0%,0%,.25);
|
||||||
border-left: solid thin hsla(0,0%,0%,.5);
|
border-left: solid thin hsla(0,0%,0%,.25);
|
||||||
border-bottom: solid thin hsla(0,0%,0%,.5);
|
border-bottom: solid thin hsla(0,0%,0%,.25);
|
||||||
border-top-left-radius: .5em;
|
border-top-left-radius: .5em;
|
||||||
border-bottom-left-radius: .5em;
|
border-bottom-left-radius: .5em;
|
||||||
|
|
||||||
@@ -250,7 +316,7 @@ function dispatch_access_type_changed() {
|
|||||||
/* NOTE: transition when no longer hovering */
|
/* NOTE: transition when no longer hovering */
|
||||||
transition-property: opacity, background-color;
|
transition-property: opacity, background-color;
|
||||||
transition-delay: 1.25s;
|
transition-delay: 1.25s;
|
||||||
transition-duration: .5s;
|
transition-duration: .75s;
|
||||||
transition-timing-function: ease-out;
|
transition-timing-function: ease-out;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -268,7 +334,7 @@ function dispatch_access_type_changed() {
|
|||||||
/* NOTE: transition when hover starts */
|
/* NOTE: transition when hover starts */
|
||||||
transition-property: opacity, background-color;
|
transition-property: opacity, background-color;
|
||||||
transition-delay: .5s;
|
transition-delay: .5s;
|
||||||
transition-duration: .10s;
|
transition-duration: .25s;
|
||||||
transition-timing-function: ease-in;
|
transition-timing-function: ease-in;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -106,17 +106,17 @@ function dispatch_something_changed() {
|
|||||||
<div>
|
<div>
|
||||||
{#if $ae_loc.access_type && $ae_loc.access_type != 'anonymous'}
|
{#if $ae_loc.access_type && $ae_loc.access_type != 'anonymous'}
|
||||||
{#if $ae_loc.access_type == 'super'}
|
{#if $ae_loc.access_type == 'super'}
|
||||||
<span class="fas fa-secret"></span> Super Access
|
<span class="fas fa-secret mx-1"></span> Super Access
|
||||||
{:else if $ae_loc.access_type == 'manager'}
|
{:else if $ae_loc.access_type == 'manager'}
|
||||||
<span class="fas fa-user-shield"></span> Manager Access
|
<span class="fas fa-user-shield mx-1"></span> Manager Access
|
||||||
{:else if $ae_loc.access_type == 'administrator'}
|
{:else if $ae_loc.access_type == 'administrator'}
|
||||||
<span class="fas fa-user-ninja"></span> Administrator Access
|
<span class="fas fa-user-ninja mx-1"></span> Administrator Access
|
||||||
{:else if $ae_loc.access_type == 'trusted'}
|
{:else if $ae_loc.access_type == 'trusted'}
|
||||||
<span class="fas fa-user-nurse"></span> Trusted Access
|
<span class="fas fa-user-nurse mx-1"></span> Trusted Access
|
||||||
{:else if $ae_loc.access_type == 'authenticated'}
|
{:else if $ae_loc.access_type == 'authenticated'}
|
||||||
<span class="fas fa-user-friends"></span> Authenticated Access
|
<span class="fas fa-user-friends mx-1"></span> Authenticated Access
|
||||||
{:else if $ae_loc.access_type == 'anonymous'}
|
{:else if $ae_loc.access_type == 'anonymous'}
|
||||||
<span class="fas fa-users"></span> Anonymous Access
|
<span class="fas fa-users mx-1"></span> Anonymous Access
|
||||||
{:else}
|
{:else}
|
||||||
<span class="fas fa-unlock mx-1"></span> Unknown Access
|
<span class="fas fa-unlock mx-1"></span> Unknown Access
|
||||||
{/if}
|
{/if}
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ let ds_submit_results: Promise<any>|key_val;
|
|||||||
let val_json: key_val;
|
let val_json: key_val;
|
||||||
let val_html: key_val;
|
let val_html: key_val;
|
||||||
let val_md: key_val;
|
let val_md: key_val;
|
||||||
export let val_sql: key_val;
|
export let val_sql: null|key_val = null;
|
||||||
let val_text: string;
|
let val_text: string;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ onMount(() => {
|
|||||||
>
|
>
|
||||||
Manage Files:
|
Manage Files:
|
||||||
<span class="font-bold bg-success-100 px-4 border rounded-lg border-success-200"
|
<span class="font-bold bg-success-100 px-4 border rounded-lg border-success-200"
|
||||||
title="Files for {link_to_type ?? '-- not set --'} {link_to_id ?? '-- not set --'}: {$events_slct.session_obj_li.length ?? 'None'}"
|
title="Files for {link_to_type ?? '-- not set --'}: {link_to_id ?? '-- not set --'} (files: {$lq__event_file_obj_li?.length ?? 'None'})"
|
||||||
>
|
>
|
||||||
<span class="fas fa-folder-open mx-1"></span>
|
<span class="fas fa-folder-open mx-1"></span>
|
||||||
{$lq__event_file_obj_li ? `${$lq__event_file_obj_li.length}x` : '-- none --'}
|
{$lq__event_file_obj_li ? `${$lq__event_file_obj_li.length}x` : '-- none --'}
|
||||||
|
|||||||
@@ -0,0 +1,332 @@
|
|||||||
|
<script lang="ts">
|
||||||
|
// Imports
|
||||||
|
import { createEventDispatcher, onMount } from 'svelte';
|
||||||
|
|
||||||
|
import type { key_val } from '$lib/ae_stores';
|
||||||
|
import { ae_util } from '$lib/ae_utils';
|
||||||
|
import { api, send_email } from '$lib/api';
|
||||||
|
import Element_ae_crud from '$lib/element_ae_crud.svelte';
|
||||||
|
import Element_data_store from '$lib/element_data_store.svelte';
|
||||||
|
|
||||||
|
import { liveQuery } from "dexie";
|
||||||
|
import { core_func } from '$lib/ae_core_functions';
|
||||||
|
import { db_events } from "$lib/db_events";
|
||||||
|
import { ae_html, ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$lib/ae_stores';
|
||||||
|
import { events_loc, events_sess, events_slct, events_trigger, events_trig_kv } from '$lib/ae_events_stores';
|
||||||
|
import { events_func } from '$lib/ae_events_functions';
|
||||||
|
|
||||||
|
// Exports
|
||||||
|
export let container_class_li: string|Array<string> = [];
|
||||||
|
export let link_to_type: string;
|
||||||
|
export let link_to_id: string;
|
||||||
|
export let allow_basic: boolean = false;
|
||||||
|
export let allow_moderator: boolean = false;
|
||||||
|
|
||||||
|
// Variables
|
||||||
|
// This more or less overrides the default access control. Some elements may have their own access control.
|
||||||
|
if ($ae_loc.administrator_access) {
|
||||||
|
allow_basic = true;
|
||||||
|
allow_moderator = true;
|
||||||
|
} else if ($ae_loc.trusted_access) {
|
||||||
|
allow_basic = true;
|
||||||
|
allow_moderator = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
let ae_promises: key_val = {};
|
||||||
|
let ae_tmp: key_val = {};
|
||||||
|
let ae_triggers: key_val = {};
|
||||||
|
|
||||||
|
let dq__where_type_val: string = link_to_type; // "event", "event_session", "event_presentation"
|
||||||
|
let dq__where_type_id_val: string = `${link_to_type}_id_random`;
|
||||||
|
let dq__where_eq_id_val: string = link_to_id;
|
||||||
|
|
||||||
|
// if (dq__where_type_val == 'event_presentation') {
|
||||||
|
// dq__where_type_val = 'event_session';
|
||||||
|
// dq__where_id_val = 'event_id_random';
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
// Functions and Logic
|
||||||
|
import { browser } from '$app/environment';
|
||||||
|
if (browser) {
|
||||||
|
console.log('Browser environment detected.');
|
||||||
|
}
|
||||||
|
|
||||||
|
let lq__event_presentation_obj = liveQuery(
|
||||||
|
() => db_events.presentations.get($events_slct.event_presentation_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
// let lq__event_presentation_obj_li = liveQuery(
|
||||||
|
// () => db_events.presentations
|
||||||
|
// // .where({event_session_id_random: $events_slct.event_session_id})
|
||||||
|
// .where('event_session_id_random')
|
||||||
|
// .equals($events_slct.event_session_id)
|
||||||
|
// .sortBy('name')
|
||||||
|
// );
|
||||||
|
|
||||||
|
// let lq__event_presenter_obj = liveQuery(
|
||||||
|
// () => db_events.presenters.get($events_slct.event_presenter_id)
|
||||||
|
// );
|
||||||
|
|
||||||
|
// let lq__event_presenter_obj_li = liveQuery(
|
||||||
|
// () => db_events.presenters
|
||||||
|
// // .where({event_presentation_id_random: $events_slct.event_presentation_id})
|
||||||
|
// .where('event_presentation_id_random')
|
||||||
|
// .equals($events_slct.event_presentation_id)
|
||||||
|
// .sortBy('name')
|
||||||
|
// );
|
||||||
|
|
||||||
|
let lq__event_presenter_obj_li = liveQuery(
|
||||||
|
() => db_events.presenters
|
||||||
|
.where(dq__where_type_id_val)
|
||||||
|
.equals(dq__where_eq_id_val)
|
||||||
|
.sortBy('name')
|
||||||
|
);
|
||||||
|
|
||||||
|
// $slct.person_obj_kv = {}; // This is intended for a person lookup list when generated.
|
||||||
|
|
||||||
|
|
||||||
|
onMount(() => {
|
||||||
|
console.log('Pres Mgmt [comp]: +ae_comp__event_presenter_obj_li.svelte');
|
||||||
|
console.log(`link_to_type: ${link_to_type}; link_to_id: ${link_to_id}`);
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<section class="ae_comp event_presenter_obj_li {container_class_li}">
|
||||||
|
|
||||||
|
<!-- Show presenters for this presentation -->
|
||||||
|
<!-- This needs to be moved to a separate component. -->
|
||||||
|
{#if $lq__event_presenter_obj_li && $lq__event_presenter_obj_li?.length > 0}
|
||||||
|
<strong class="text-sm">Presenters:
|
||||||
|
<!-- ({$lq__event_presenter_obj_li?.length}) -->
|
||||||
|
</strong>
|
||||||
|
<ul
|
||||||
|
class="space-y-2 px-4"
|
||||||
|
>
|
||||||
|
{#each $lq__event_presenter_obj_li as event_presenter_obj}
|
||||||
|
<!-- This is a hack. I can not get the LiveQuery to work with specific presentation IDs. It only works with the session ID. I need to figure out how to get the presenters for the specific presentation. -->
|
||||||
|
<!-- {#if event_presenter_obj.event_presentation_id_random == event_presentation_obj.event_presentation_id_random} -->
|
||||||
|
<li>
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
disabled={!($ae_loc.trusted_access || $events_loc.auth__kv.session[$events_slct.event_session_id]) && (!$events_loc.auth__kv.presenter[event_presenter_obj.event_presenter_id_random] || !event_presenter_obj.agree)}
|
||||||
|
on:click={
|
||||||
|
() => {
|
||||||
|
console.log('View presenter details');
|
||||||
|
|
||||||
|
$events_slct.event_presentation_id = event_presenter_obj.event_presentation_id_random;
|
||||||
|
$events_slct.event_presentation_obj = $lq__event_presentation_obj;
|
||||||
|
|
||||||
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
|
$events_sess.pres_mgmt.show_content__presenter_start = event_presenter_obj.event_presenter_id_random;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
class="btn btn-md variant-ghost-primary hover:variant-filled-primary font-bold min-w-64"
|
||||||
|
title="Person ID: {event_presenter_obj.person_id_random}; Email: {event_presenter_obj.email}"
|
||||||
|
>
|
||||||
|
<span class="fas fa-user mx-1"></span>
|
||||||
|
<span class="text-center grow">
|
||||||
|
{event_presenter_obj.full_name}
|
||||||
|
</span>
|
||||||
|
</button>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{#if $ae_loc.trusted_access || !$events_loc.auth__person?.id }
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
on:click={() => {
|
||||||
|
console.log('Email the access link');
|
||||||
|
if (!event_presenter_obj.email) {
|
||||||
|
alert('No email address found for this presenter.');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (confirm(`This will send the sign in email to ${event_presenter_obj.email}`)) {
|
||||||
|
console.log('Send the email to the presenter.');
|
||||||
|
} else {
|
||||||
|
console.log('Cancelled sending the email.');
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
events_func.handle_email_sign_in__event_presenter(
|
||||||
|
{
|
||||||
|
api_cfg: $ae_api,
|
||||||
|
to_email: event_presenter_obj.email,
|
||||||
|
to_name: event_presenter_obj?.full_name?? '-- not set --',
|
||||||
|
base_url: $ae_loc.url_origin,
|
||||||
|
person_id: event_presenter_obj?.person_id_random?? '-- not set --',
|
||||||
|
person_passcode: event_presenter_obj.person_passcode?? '-- not set --',
|
||||||
|
event_session_id: event_presenter_obj.event_session_id_random,
|
||||||
|
event_presentation_id: event_presenter_obj.event_presentation_id_random,
|
||||||
|
event_presenter_id: event_presenter_obj.event_presenter_id_random,
|
||||||
|
session_name: event_presenter_obj?.event_session_name?? '-- not set --',
|
||||||
|
presentation_name: event_presenter_obj?.event_presentation_name?? '-- not set --',
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}}
|
||||||
|
class="btn btn-md variant-ghost-primary hover:variant-filled-primary"
|
||||||
|
title="Email the access link to the presenter"
|
||||||
|
>
|
||||||
|
<span class="fas fa-envelope mx-1"></span>
|
||||||
|
Email Access Link
|
||||||
|
</button>
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
|
||||||
|
{#if event_presenter_obj.agree}
|
||||||
|
<!-- {#if $ae_loc.trusted_access || $events_loc.auth__kv.presenter[event_presenter_obj.event_presenter_id_random]} -->
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
disabled={!$ae_loc.trusted_access && !$events_loc.auth__kv.presenter[event_presenter_obj.event_presenter_id_random]}
|
||||||
|
on:click={
|
||||||
|
() => {
|
||||||
|
console.log('View terms and conditions');
|
||||||
|
$events_slct.event_presentation_id = event_presenter_obj.event_presentation_id_random;
|
||||||
|
$events_slct.event_presentation_obj = $lq__event_presentation_obj;
|
||||||
|
|
||||||
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
|
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
class="btn btn-md variant-ghost-success hover:variant-filled-success"
|
||||||
|
title="Agreed to terms and conditions"
|
||||||
|
>
|
||||||
|
<span class="fas fa-check text-green-500 px-1" title="Agreed to terms and conditions"></span>
|
||||||
|
Agreed
|
||||||
|
</button>
|
||||||
|
{:else}
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
disabled={!$ae_loc.trusted_access && !$events_loc.auth__kv.presenter[event_presenter_obj.event_presenter_id_random]}
|
||||||
|
on:click={
|
||||||
|
() => {
|
||||||
|
console.log('View terms and conditions');
|
||||||
|
|
||||||
|
$events_slct.event_presentation_id = event_presenter_obj.event_presentation_id_random;
|
||||||
|
$events_slct.event_presentation_obj = $lq__event_presentation_obj;
|
||||||
|
|
||||||
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
|
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
class="btn btn-md variant-ghost-warning hover:variant-filled-warning"
|
||||||
|
title="View terms and conditions"
|
||||||
|
>
|
||||||
|
<span class="fas fa-times bg-red-500 text-white px-1 mx-1" title="Not agreed to terms and conditions"></span>
|
||||||
|
Not yet agreed
|
||||||
|
</button>
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{#if $ae_loc.trusted_access}
|
||||||
|
<!-- <span class="fas fa-envelope"></span>
|
||||||
|
<a
|
||||||
|
href="mailto:{event_presenter_obj.email}"
|
||||||
|
class="text-blue-500"
|
||||||
|
>{event_presenter_obj.email}</a> -->
|
||||||
|
|
||||||
|
|
||||||
|
{#if event_presenter_obj.file_count}
|
||||||
|
<span>
|
||||||
|
<span class="fas fa-file mx-1"></span>
|
||||||
|
{event_presenter_obj.file_count ? `(${event_presenter_obj.file_count}x files)` : '(0 files)'}
|
||||||
|
</span>
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
<!-- {#if event_presenter_obj.person_passcode}
|
||||||
|
<span>
|
||||||
|
<span class="fas fa-user-secret"></span>
|
||||||
|
Passcode: {event_presenter_obj.person_passcode}
|
||||||
|
</span>
|
||||||
|
{/if} -->
|
||||||
|
|
||||||
|
<!-- {#if event_presenter_obj.passcode}
|
||||||
|
<span class="bg-red-100 p-1 rounded-md">
|
||||||
|
<span class="fas fa-key"></span>
|
||||||
|
Passcode: {event_presenter_obj.passcode}
|
||||||
|
</span>
|
||||||
|
{/if} -->
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
|
||||||
|
<!-- A button to copy the access link to the clipboard. -->
|
||||||
|
<!-- Example: /events_pres_mgmt/session/Wh8UnJlbIA0?person_id=fV1dl_IJ0yY&person_pass=abc123 -->
|
||||||
|
<!-- {#if $ae_loc.trusted_access}
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
class="btn btn-sm variant-soft-primary"
|
||||||
|
|
||||||
|
use:clipboard={encodeURI(`${data.url.origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${event_presenter_obj.person_id_random}&person_pass=${event_presenter_obj.person_passcode}&presentation_id=${event_presentation_obj.event_presentation_id_random}&presenter_id=${event_presenter_obj.event_presenter_id_random}`)}
|
||||||
|
>
|
||||||
|
<span class="fas fa-copy mx-1"></span>
|
||||||
|
Copy Access Link
|
||||||
|
</button>
|
||||||
|
{/if} -->
|
||||||
|
|
||||||
|
<div class="float-right space-2 flex flex-row items-center">
|
||||||
|
{#if $ae_loc.administrator_access && !event_presenter_obj.person_id_random}
|
||||||
|
<button
|
||||||
|
type="button"
|
||||||
|
on:click={async () => {
|
||||||
|
console.log('Add Person');
|
||||||
|
|
||||||
|
let person_data = {
|
||||||
|
account_id_random: $slct.account_id,
|
||||||
|
// user_id_random: user_obj.user_id_random,
|
||||||
|
given_name: 'New',
|
||||||
|
family_name: 'Presenter',
|
||||||
|
primary_email: 'test+newpres@oneskyit.com',
|
||||||
|
code: 'new_presenter',
|
||||||
|
// Random number between 100000 and 999999
|
||||||
|
passcode: Math.floor(Math.random() * 900000) + 100000,
|
||||||
|
enable: true,
|
||||||
|
}
|
||||||
|
|
||||||
|
let new_person_obj = await core_func.handle_create_ae_obj__person({
|
||||||
|
api_cfg: $ae_api,
|
||||||
|
// user_id: $ae_loc.user_id,
|
||||||
|
data_kv: person_data,
|
||||||
|
log_lvl: 1,
|
||||||
|
})
|
||||||
|
|
||||||
|
console.log('new_person_obj:', new_person_obj);
|
||||||
|
|
||||||
|
// We then need to update the event_presenter with the new person_id.
|
||||||
|
events_func.handle_update_ae_obj__event_presenter({
|
||||||
|
api_cfg: $ae_api,
|
||||||
|
event_presenter_id: event_presenter_obj.event_presenter_id_random,
|
||||||
|
data_kv: {person_id_random: new_person_obj.person_id_random},
|
||||||
|
log_lvl: 1,
|
||||||
|
})
|
||||||
|
}}
|
||||||
|
class="btn btn-sm variant-soft-warning hover:variant-filled-warning"
|
||||||
|
>
|
||||||
|
<span class="fas fa-plus mx-1"></span>
|
||||||
|
Add Person
|
||||||
|
</button>
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</li>
|
||||||
|
<!-- {/if} -->
|
||||||
|
{/each}
|
||||||
|
</ul>
|
||||||
|
{:else}
|
||||||
|
<p>No presenters available to show for this presentation at this time</p>
|
||||||
|
<!-- {$lq__event_presenter_obj_li?.length} -->
|
||||||
|
<!-- {$events_slct.event_presentation_id} -->
|
||||||
|
<!-- {$lq__event_presentation_obj} -->
|
||||||
|
{/if}
|
||||||
|
|
||||||
|
</section>
|
||||||
|
|
||||||
@@ -109,7 +109,7 @@ $: if ($events_trigger == 'load__event_session_obj_li' && $events_slct.event_id)
|
|||||||
console.log('Trusted access search');
|
console.log('Trusted access search');
|
||||||
handle_search__event_session($events_sess.pres_mgmt.fulltext_search_qry_str);
|
handle_search__event_session($events_sess.pres_mgmt.fulltext_search_qry_str);
|
||||||
} else if (!$events_sess.pres_mgmt.fulltext_search_qry_str || $events_sess?.pres_mgmt.fulltext_search_qry_str.length <= 1 ) {
|
} else if (!$events_sess.pres_mgmt.fulltext_search_qry_str || $events_sess?.pres_mgmt.fulltext_search_qry_str.length <= 1 ) {
|
||||||
$events_slct.session_obj_li = [];
|
$events_slct.event_session_obj_li = [];
|
||||||
// $events_sess.pres_mgmt.fulltext_search_qry_str = '';
|
// $events_sess.pres_mgmt.fulltext_search_qry_str = '';
|
||||||
// return false;
|
// return false;
|
||||||
} else {
|
} else {
|
||||||
@@ -183,7 +183,7 @@ function handle_search__event_session(search_str: string) {
|
|||||||
log_lvl: 1,
|
log_lvl: 1,
|
||||||
})
|
})
|
||||||
.then(function (search_results) {
|
.then(function (search_results) {
|
||||||
$events_slct.session_obj_li = search_results;
|
$events_slct.event_session_obj_li = search_results;
|
||||||
console.log(search_results);
|
console.log(search_results);
|
||||||
$events_sess.status_qry__search = 'done';
|
$events_sess.status_qry__search = 'done';
|
||||||
});
|
});
|
||||||
@@ -208,7 +208,7 @@ function handle_search__event_session(search_str: string) {
|
|||||||
log_lvl: 1,
|
log_lvl: 1,
|
||||||
})
|
})
|
||||||
.then(function (search_results) {
|
.then(function (search_results) {
|
||||||
$events_slct.session_obj_li = search_results;
|
$events_slct.event_session_obj_li = search_results;
|
||||||
console.log(search_results);
|
console.log(search_results);
|
||||||
$events_sess.status_qry__search = 'done';
|
$events_sess.status_qry__search = 'done';
|
||||||
});
|
});
|
||||||
@@ -367,19 +367,19 @@ function handle_search__event_session(search_str: string) {
|
|||||||
{/await}
|
{/await}
|
||||||
|
|
||||||
|
|
||||||
{#if $events_slct?.session_obj_li && $events_slct.session_obj_li.length > 0}
|
{#if $events_slct?.event_session_obj_li && $events_slct.event_session_obj_li.length > 0}
|
||||||
<section class="ae_h_scrollfix py-2 space-y-2">
|
<section class="ae_h_scrollfix py-2 space-y-2">
|
||||||
<h2 class="h3">
|
<h2 class="h3">
|
||||||
<span class="text-md">
|
<span class="text-md">
|
||||||
Results:
|
Results:
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
{#if $events_slct.session_obj_li.length}
|
{#if $events_slct.event_session_obj_li.length}
|
||||||
<span class="text-3xl font-bold bg-success-100 px-4 border rounded-lg border-success-500"
|
<span class="text-3xl font-bold bg-success-100 px-4 border rounded-lg border-success-500"
|
||||||
title="Count {$events_slct.session_obj_li.length ?? 'None'}"
|
title="Count {$events_slct.event_session_obj_li.length ?? 'None'}"
|
||||||
>
|
>
|
||||||
<span class="fas fa-list-ol mx-4"></span>
|
<span class="fas fa-list-ol mx-4"></span>
|
||||||
{$events_slct.session_obj_li.length ?? 'None'}
|
{$events_slct.event_session_obj_li.length ?? 'None'}
|
||||||
</span>
|
</span>
|
||||||
{/if}
|
{/if}
|
||||||
</h2>
|
</h2>
|
||||||
@@ -394,7 +394,7 @@ function handle_search__event_session(search_str: string) {
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{#each $events_slct.session_obj_li as session_obj}
|
{#each $events_slct.event_session_obj_li as session_obj}
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<a
|
<a
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ import { events_func } from '$lib/ae_events_functions';
|
|||||||
|
|
||||||
import Form_agree from './form_agree.svelte';
|
import Form_agree from './form_agree.svelte';
|
||||||
import Presenter_view from './presenter_view.svelte';
|
import Presenter_view from './presenter_view.svelte';
|
||||||
|
import Comp_event_presenter_obj_li from '../../ae_comp__event_presenter_obj_li.svelte';
|
||||||
import Element_manage_event_file_li from '$lib/element_manage_event_file_li.svelte';
|
import Element_manage_event_file_li from '$lib/element_manage_event_file_li.svelte';
|
||||||
|
|
||||||
import { browser } from '$app/environment';
|
import { browser } from '$app/environment';
|
||||||
@@ -208,7 +209,7 @@ onMount(() => {
|
|||||||
|
|
||||||
// This should be turned into a function to correctly authenticate the person and allow them access to their presentations and presenter details.
|
// This should be turned into a function to correctly authenticate the person and allow them access to their presentations and presenter details.
|
||||||
if (url_person_pass) {
|
if (url_person_pass) {
|
||||||
console.log(`ae_events_pres_mgmt session [slug] +page.svelte: event_session_id=${$events_slct.session_id}; person_id=${url_person_id}; person_pass=${url_person_pass}; presentation_id=${url_presentation_id}; presenter_id=${url_presenter_id}`);
|
console.log(`ae_events_pres_mgmt session [slug] +page.svelte: event_session_id=${$events_slct.event_session_id}; person_id=${url_person_id}; person_pass=${url_person_pass}; presentation_id=${url_presentation_id}; presenter_id=${url_presenter_id}`);
|
||||||
|
|
||||||
// Using temporary session values first.
|
// Using temporary session values first.
|
||||||
$events_sess.auth__entered_key = url_person_id;
|
$events_sess.auth__entered_key = url_person_id;
|
||||||
@@ -233,10 +234,10 @@ onMount(() => {
|
|||||||
// // We need to load the presentation and presenter objects based on the IDs.
|
// // We need to load the presentation and presenter objects based on the IDs.
|
||||||
// if ($events_slct.event_presentation_obj_li && $events_slct.event_presentation_obj_li.length > 0) {
|
// if ($events_slct.event_presentation_obj_li && $events_slct.event_presentation_obj_li.length > 0) {
|
||||||
// let event_presentation_obj = $events_slct.event_presentation_obj_li.find((obj) => obj.event_presentation_id_random == url_presentation_id);
|
// let event_presentation_obj = $events_slct.event_presentation_obj_li.find((obj) => obj.event_presentation_id_random == url_presentation_id);
|
||||||
// $events_slct.presentation_obj = event_presentation_obj;
|
// $events_slct.event_presentation_obj = event_presentation_obj;
|
||||||
// if (event_presentation_obj.event_presenter_li && event_presentation_obj.event_presenter_li.length > 0) {
|
// if (event_presentation_obj.event_presenter_li && event_presentation_obj.event_presenter_li.length > 0) {
|
||||||
// let event_presenter_obj = event_presentation_obj.event_presenter_li.find((obj) => obj.event_presenter_id_random == url_presenter_id);
|
// let event_presenter_obj = event_presentation_obj.event_presenter_li.find((obj) => obj.event_presenter_id_random == url_presenter_id);
|
||||||
// $events_slct.presenter_obj = event_presenter_obj;
|
// $events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
@@ -350,109 +351,109 @@ $: if ($slct_trigger == 'load__event_presenter_obj_li') {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function send_init_confirm_email(
|
// function send_init_confirm_email(
|
||||||
{
|
// {
|
||||||
to_email,
|
// to_email,
|
||||||
to_name,
|
// to_name,
|
||||||
person_id,
|
// person_id,
|
||||||
person_passcode,
|
// person_passcode,
|
||||||
presentation_id,
|
// presentation_id,
|
||||||
presenter_id,
|
// presenter_id,
|
||||||
presentation_name
|
// presentation_name
|
||||||
}: {
|
// }: {
|
||||||
to_email: string,
|
// to_email: string,
|
||||||
to_name: string,
|
// to_name: string,
|
||||||
person_id: string,
|
// person_id: string,
|
||||||
person_passcode: string,
|
// person_passcode: string,
|
||||||
presentation_id: string,
|
// presentation_id: string,
|
||||||
presenter_id: string,
|
// presenter_id: string,
|
||||||
presentation_name: string
|
// presentation_name: string
|
||||||
}
|
// }
|
||||||
) {
|
// ) {
|
||||||
console.log(`*** send_init_confirm_email() *** to ${to_email}.`);
|
// console.log(`*** send_init_confirm_email() *** to ${to_email}.`);
|
||||||
|
|
||||||
// let new_passcode = Math.floor(Math.random() * 900000) + 100000
|
// // let new_passcode = Math.floor(Math.random() * 900000) + 100000
|
||||||
|
|
||||||
// to_email = 'test+agree@oneskyit.com';
|
// // to_email = 'test+agree@oneskyit.com';
|
||||||
|
|
||||||
let sign_in_url = encodeURI(`${data.url.origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${person_id}&person_pass=${person_passcode}&presentation_id=${presentation_id}&presenter_id=${presenter_id}`)
|
// let sign_in_url = encodeURI(`${data.url.origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${person_id}&person_pass=${person_passcode}&presentation_id=${presentation_id}&presenter_id=${presenter_id}`)
|
||||||
|
|
||||||
let subject = `LCI Congress 2024 - Pres Mgmt Hub Sign In Link for ${$lq__event_session_obj?.name} (ID: ${$events_slct.event_session_id})`;
|
// let subject = `LCI Congress 2024 - Pres Mgmt Hub Sign In Link for ${$lq__event_session_obj?.name} (ID: ${$events_slct.event_session_id})`;
|
||||||
|
|
||||||
let body_html = `
|
// let body_html = `
|
||||||
<div>${to_name},
|
// <div>${to_name},
|
||||||
<p>Your link to sign into the presentation management hub for LCI Congress 2024 is below. If you did not request this, please delete and ignore this email. If you need to make any changes or updates to your submission, you may use this link again later.</p>
|
// <p>Your link to sign into the presentation management hub for LCI Congress 2024 is below. If you did not request this, please delete and ignore this email. If you need to make any changes or updates to your submission, you may use this link again later.</p>
|
||||||
</div>
|
// </div>
|
||||||
|
|
||||||
<div>
|
// <div>
|
||||||
<strong>26th Annual Lean Construction Congress (2024)</strong>:<br>
|
// <strong>26th Annual Lean Construction Congress (2024)</strong>:<br>
|
||||||
<p>
|
// <p>
|
||||||
Session Name: ${$lq__event_session_obj?.name}<br>
|
// Session Name: ${$lq__event_session_obj?.name}<br>
|
||||||
Session ID: ${$lq__event_session_obj?.event_session_id_random}<br>
|
// Session ID: ${$lq__event_session_obj?.event_session_id_random}<br>
|
||||||
Presentation Name: ${presentation_name}<br>
|
// Presentation Name: ${presentation_name}<br>
|
||||||
Presentation ID: ${presentation_id}
|
// Presentation ID: ${presentation_id}
|
||||||
</p>
|
// </p>
|
||||||
<p>Use this link to view or update your LCI 2024 presentation information.<br>
|
// <p>Use this link to view or update your LCI 2024 presentation information.<br>
|
||||||
Copy and paste link: <a href="${sign_in_url}">${sign_in_url}</a></p>
|
// Copy and paste link: <a href="${sign_in_url}">${sign_in_url}</a></p>
|
||||||
</div>`;
|
// </div>`;
|
||||||
|
|
||||||
api.send_email({
|
// api.send_email({
|
||||||
api_cfg: $ae_api,
|
// api_cfg: $ae_api,
|
||||||
from_email: 'noreply+presmgmt@oneskyit.com',
|
// from_email: 'noreply+presmgmt@oneskyit.com',
|
||||||
from_name: 'LCI 2024 Pres Mgmt Hub',
|
// from_name: 'LCI 2024 Pres Mgmt Hub',
|
||||||
to_email: to_email,
|
// to_email: to_email,
|
||||||
subject: subject,
|
// subject: subject,
|
||||||
body_html: body_html,
|
// body_html: body_html,
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
function send_sign_in_poc_email(
|
// function send_sign_in_poc_email(
|
||||||
{
|
// {
|
||||||
to_email,
|
// to_email,
|
||||||
to_name,
|
// to_name,
|
||||||
person_id,
|
// person_id,
|
||||||
person_passcode,
|
// person_passcode,
|
||||||
session_id,
|
// session_id,
|
||||||
}: {
|
// }: {
|
||||||
to_email: string,
|
// to_email: string,
|
||||||
to_name: string,
|
// to_name: string,
|
||||||
person_id: string,
|
// person_id: string,
|
||||||
person_passcode: string,
|
// person_passcode: string,
|
||||||
session_id: string,
|
// session_id: string,
|
||||||
}
|
// }
|
||||||
) {
|
// ) {
|
||||||
console.log(`*** send_sign_in_poc_email() *** to ${to_email}.`);
|
// console.log(`*** send_sign_in_poc_email() *** to ${to_email}.`);
|
||||||
|
|
||||||
// to_email = 'test+agree@oneskyit.com';
|
// // to_email = 'test+agree@oneskyit.com';
|
||||||
|
|
||||||
let sign_in_url = encodeURI(`${data.url.origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${person_id}&person_pass=${person_passcode}&session_id=${session_id}`);
|
// let sign_in_url = encodeURI(`${data.url.origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${person_id}&person_pass=${person_passcode}&session_id=${session_id}`);
|
||||||
|
|
||||||
let subject = `LCI Congress 2024 - Pres Mgmt Hub Sign In Link for ${$lq__event_session_obj?.name} (ID: ${$events_slct.event_session_id})`;
|
// let subject = `LCI Congress 2024 - Pres Mgmt Hub Sign In Link for ${$lq__event_session_obj?.name} (ID: ${$events_slct.event_session_id})`;
|
||||||
|
|
||||||
let body_html = `
|
// let body_html = `
|
||||||
<div>${to_name},
|
// <div>${to_name},
|
||||||
<p>Your link to sign into the presentation management hub as a session Champion for LCI Congress 2024 is below. If you did not request this, please delete and ignore this email. If you need to make any changes or updates to your submission, you may use this link again later.</p>
|
// <p>Your link to sign into the presentation management hub as a session Champion for LCI Congress 2024 is below. If you did not request this, please delete and ignore this email. If you need to make any changes or updates to your submission, you may use this link again later.</p>
|
||||||
</div>
|
// </div>
|
||||||
|
|
||||||
<div>
|
// <div>
|
||||||
<strong>26th Annual Lean Construction Congress (2024)</strong>:<br>
|
// <strong>26th Annual Lean Construction Congress (2024)</strong>:<br>
|
||||||
<p>
|
// <p>
|
||||||
Session Name: ${$lq__event_session_obj?.name}<br>
|
// Session Name: ${$lq__event_session_obj?.name}<br>
|
||||||
Session ID: ${$lq__event_session_obj?.event_session_id_random}
|
// Session ID: ${$lq__event_session_obj?.event_session_id_random}
|
||||||
</p>
|
// </p>
|
||||||
<p>Use this link to view or update your LCI 2024 session information.<br>
|
// <p>Use this link to view or update your LCI 2024 session information.<br>
|
||||||
Copy and paste link: <a href="${sign_in_url}">${sign_in_url}</a></p>
|
// Copy and paste link: <a href="${sign_in_url}">${sign_in_url}</a></p>
|
||||||
</div>`;
|
// </div>`;
|
||||||
api.send_email({
|
// api.send_email({
|
||||||
api_cfg: $ae_api,
|
// api_cfg: $ae_api,
|
||||||
from_email: 'noreply+presmgmt@oneskyit.com',
|
// from_email: 'noreply+presmgmt@oneskyit.com',
|
||||||
from_name: 'LCI 2024 Pres Mgmt Hub',
|
// from_name: 'LCI 2024 Pres Mgmt Hub',
|
||||||
to_email: to_email,
|
// to_email: to_email,
|
||||||
subject: subject,
|
// subject: subject,
|
||||||
body_html: body_html,
|
// body_html: body_html,
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -540,7 +541,7 @@ function send_sign_in_poc_email(
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_session_obj?.name}
|
field_value={$lq__event_session_obj?.name}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -565,7 +566,7 @@ function send_sign_in_poc_email(
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_session_obj?.code}
|
field_value={$lq__event_session_obj?.code}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -598,7 +599,7 @@ function send_sign_in_poc_email(
|
|||||||
field_type={'datetime'}
|
field_type={'datetime'}
|
||||||
field_value={$lq__event_session_obj.start_datetime}
|
field_value={$lq__event_session_obj.start_datetime}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -623,7 +624,7 @@ function send_sign_in_poc_email(
|
|||||||
field_type={'datetime'}
|
field_type={'datetime'}
|
||||||
field_value={$lq__event_session_obj.end_datetime}
|
field_value={$lq__event_session_obj.end_datetime}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -642,7 +643,7 @@ function send_sign_in_poc_email(
|
|||||||
<li>
|
<li>
|
||||||
<strong class="text-sm">Location/Room:</strong> {@html $lq__event_session_obj.event_location_name ? $lq__event_session_obj.event_location_name : ae_html.not_set}
|
<strong class="text-sm">Location/Room:</strong> {@html $lq__event_session_obj.event_location_name ? $lq__event_session_obj.event_location_name : ae_html.not_set}
|
||||||
|
|
||||||
{#if $ae_loc.trusted_access}
|
{#if $ae_loc.trusted_access && $ae_loc.edit_mode}
|
||||||
<Element_ae_crud
|
<Element_ae_crud
|
||||||
trigger_patch={ae_triggers.update_event_location}
|
trigger_patch={ae_triggers.update_event_location}
|
||||||
api_cfg={$ae_api}
|
api_cfg={$ae_api}
|
||||||
@@ -753,7 +754,7 @@ function send_sign_in_poc_email(
|
|||||||
{@html $lq__event_session_obj.poc_person_full_name ? $lq__event_session_obj.poc_person_full_name : ae_html.not_set}
|
{@html $lq__event_session_obj.poc_person_full_name ? $lq__event_session_obj.poc_person_full_name : ae_html.not_set}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
{#if $ae_loc.trusted_access}
|
{#if $ae_loc.trusted_access && $ae_loc.edit_mode}
|
||||||
<Element_ae_crud
|
<Element_ae_crud
|
||||||
trigger_patch={ae_triggers.update_person_poc}
|
trigger_patch={ae_triggers.update_person_poc}
|
||||||
api_cfg={$ae_api}
|
api_cfg={$ae_api}
|
||||||
@@ -888,7 +889,7 @@ function send_sign_in_poc_email(
|
|||||||
|
|
||||||
<span class="float-right">
|
<span class="float-right">
|
||||||
{#if $events_loc.auth__kv.session[$events_slct.event_session_id]}
|
{#if $events_loc.auth__kv.session[$events_slct.event_session_id]}
|
||||||
<span class="text-green-500">POC Signed In</span>
|
<span class="text-green-500">Signed In</span>
|
||||||
{/if}
|
{/if}
|
||||||
{#if $ae_loc.trusted_access || !$events_loc.auth__person.id }
|
{#if $ae_loc.trusted_access || !$events_loc.auth__person.id }
|
||||||
|
|
||||||
@@ -907,13 +908,16 @@ function send_sign_in_poc_email(
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
send_sign_in_poc_email(
|
events_func.handle_email_sign_in__event_session(
|
||||||
{
|
{
|
||||||
|
api_cfg: $ae_api,
|
||||||
to_email: $lq__event_session_obj.poc_person_primary_email,
|
to_email: $lq__event_session_obj.poc_person_primary_email,
|
||||||
to_name: $lq__event_session_obj?.poc_person_full_name?? '-- not set --',
|
to_name: $lq__event_session_obj?.poc_person_full_name?? '-- not set --',
|
||||||
|
base_url: $ae_loc.url_origin,
|
||||||
person_id: $lq__event_session_obj?.poc_person_id_random?? '-- not set --',
|
person_id: $lq__event_session_obj?.poc_person_id_random?? '-- not set --',
|
||||||
person_passcode: $lq__event_session_obj?.poc_person_passcode?? '-- not set --',
|
person_passcode: $lq__event_session_obj?.poc_person_passcode?? '-- not set --',
|
||||||
session_id: $lq__event_session_obj?.event_session_id_random?? '-- not set --',
|
event_session_id: $lq__event_session_obj?.event_session_id_random?? '-- not set --',
|
||||||
|
session_name: $lq__event_session_obj?.name?? '-- not set --',
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
}}
|
}}
|
||||||
@@ -959,7 +963,7 @@ function send_sign_in_poc_email(
|
|||||||
field_type={'textarea'}
|
field_type={'textarea'}
|
||||||
field_value={$lq__event_session_obj.description}
|
field_value={$lq__event_session_obj.description}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -1184,7 +1188,7 @@ function send_sign_in_poc_email(
|
|||||||
<section>
|
<section>
|
||||||
|
|
||||||
<div class="float-right space-2 flex flex-row items-center">
|
<div class="float-right space-2 flex flex-row items-center">
|
||||||
{#if $ae_loc.trusted_access }
|
{#if $ae_loc.trusted_access && $ae_loc.edit_mode}
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
@@ -1238,7 +1242,7 @@ function send_sign_in_poc_email(
|
|||||||
>
|
>
|
||||||
|
|
||||||
<div class="float-right space-2 flex flex-row items-center">
|
<div class="float-right space-2 flex flex-row items-center">
|
||||||
{#if $ae_loc.trusted_access }
|
{#if $ae_loc.trusted_access && $ae_loc.edit_mode}
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
@@ -1286,7 +1290,7 @@ function send_sign_in_poc_email(
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={event_presentation_obj.name}
|
field_value={event_presentation_obj.name}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -1327,7 +1331,7 @@ function send_sign_in_poc_email(
|
|||||||
field_type={'textarea'}
|
field_type={'textarea'}
|
||||||
field_value={event_presentation_obj.description}
|
field_value={event_presentation_obj.description}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -1391,10 +1395,21 @@ function send_sign_in_poc_email(
|
|||||||
</Element_ae_crud>
|
</Element_ae_crud>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{#await event_presentation_obj.event_presentation_id_random}
|
||||||
|
<span class="fas fa-spinner fa-spin mx-1"></span>
|
||||||
|
{:then result}
|
||||||
|
<Comp_event_presenter_obj_li
|
||||||
|
link_to_type={'event_presentation'}
|
||||||
|
link_to_id={result}
|
||||||
|
>
|
||||||
|
</Comp_event_presenter_obj_li>
|
||||||
|
{/await}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- Show presenters for this presentation -->
|
<!-- Show presenters for this presentation -->
|
||||||
<!-- This needs to be moved to a separate component. -->
|
<!-- This needs to be moved to a separate component. -->
|
||||||
{#if $lq__event_presenter_obj_li?.length > 0}
|
{#if $lq__event_presenter_obj_li?.length > 0 && 1==2}
|
||||||
<strong class="text-sm">Presenters:
|
<strong class="text-sm">Presenters:
|
||||||
<!-- ({$lq__event_presenter_obj_li?.length}) -->
|
<!-- ({$lq__event_presenter_obj_li?.length}) -->
|
||||||
</strong>
|
</strong>
|
||||||
@@ -1413,10 +1428,10 @@ function send_sign_in_poc_email(
|
|||||||
console.log('View presenter details');
|
console.log('View presenter details');
|
||||||
|
|
||||||
$events_slct.event_presentation_id = event_presentation_obj.event_presentation_id_random;
|
$events_slct.event_presentation_id = event_presentation_obj.event_presentation_id_random;
|
||||||
$events_slct.presentation_obj = event_presentation_obj;
|
$events_slct.event_presentation_obj = event_presentation_obj;
|
||||||
|
|
||||||
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
$events_slct.presenter_obj = event_presenter_obj;
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__presenter_start = event_presenter_obj.event_presenter_id_random;
|
$events_sess.pres_mgmt.show_content__presenter_start = event_presenter_obj.event_presenter_id_random;
|
||||||
}
|
}
|
||||||
@@ -1478,10 +1493,10 @@ function send_sign_in_poc_email(
|
|||||||
() => {
|
() => {
|
||||||
console.log('View terms and conditions');
|
console.log('View terms and conditions');
|
||||||
$events_slct.event_presentation_id = event_presentation_obj.event_presentation_id_random;
|
$events_slct.event_presentation_id = event_presentation_obj.event_presentation_id_random;
|
||||||
$events_slct.presentation_obj = event_presentation_obj;
|
$events_slct.event_presentation_obj = event_presentation_obj;
|
||||||
|
|
||||||
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
$events_slct.presenter_obj = event_presenter_obj;
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
||||||
}
|
}
|
||||||
@@ -1500,10 +1515,10 @@ function send_sign_in_poc_email(
|
|||||||
() => {
|
() => {
|
||||||
console.log('View terms and conditions');
|
console.log('View terms and conditions');
|
||||||
$events_slct.event_presentation_id = event_presentation_obj.event_presentation_id_random;
|
$events_slct.event_presentation_id = event_presentation_obj.event_presentation_id_random;
|
||||||
$events_slct.presentation_obj = event_presentation_obj;
|
$events_slct.event_presentation_obj = event_presentation_obj;
|
||||||
|
|
||||||
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
$events_slct.event_presenter_id = event_presenter_obj.event_presenter_id_random;
|
||||||
$events_slct.presenter_obj = event_presenter_obj;
|
$events_slct.event_presenter_obj = event_presenter_obj;
|
||||||
|
|
||||||
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
$events_sess.pres_mgmt.show_content__agree_text = event_presenter_obj.event_presenter_id_random;
|
||||||
}
|
}
|
||||||
@@ -1612,10 +1627,10 @@ function send_sign_in_poc_email(
|
|||||||
{/each}
|
{/each}
|
||||||
</ul>
|
</ul>
|
||||||
{:else}
|
{:else}
|
||||||
<p>No presenters found...!</p>
|
<!-- <p>OLD: No presenters found...!</p> -->
|
||||||
{$events_slct.event_presentation_id}
|
<!-- {$events_slct.event_presentation_id} -->
|
||||||
{$lq__event_presentation_obj}
|
<!-- {$lq__event_presentation_obj} -->
|
||||||
{$lq__event_presenter_obj_li?.length}
|
<!-- {$lq__event_presenter_obj_li?.length} -->
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,9 @@ let lq__event_presenter_obj = liveQuery(
|
|||||||
() => db_events.presenters.get($events_slct.event_presenter_id)
|
() => db_events.presenters.get($events_slct.event_presenter_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
// $events_slct.event_presenter_obj = $lq__event_presenter_obj;
|
let lq__event_presentation_obj = liveQuery(
|
||||||
|
() => db_events.presentations.get($events_slct.event_presentation_id)
|
||||||
|
);
|
||||||
|
|
||||||
$events_sess.pres_mgmt.disable_submit__opt_out = false;
|
$events_sess.pres_mgmt.disable_submit__opt_out = false;
|
||||||
|
|
||||||
@@ -158,9 +160,9 @@ async function handle_update__event_presenter({
|
|||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#await $lq__event_presenter_obj}
|
<!-- {#await $lq__event_presenter_obj}
|
||||||
Loading...
|
Loading...
|
||||||
{:then result}
|
{:then result} -->
|
||||||
|
|
||||||
{#if $lq__event_presenter_obj}
|
{#if $lq__event_presenter_obj}
|
||||||
<h2 class="h3">
|
<h2 class="h3">
|
||||||
@@ -180,7 +182,7 @@ async function handle_update__event_presenter({
|
|||||||
<p class="text-lg bg-yellow-100 p-2">
|
<p class="text-lg bg-yellow-100 p-2">
|
||||||
<strong>{$lq__event_presenter_obj.full_name} ({$lq__event_presenter_obj.email})</strong> agrees to the following terms and conditions for the presentation:
|
<strong>{$lq__event_presenter_obj.full_name} ({$lq__event_presenter_obj.email})</strong> agrees to the following terms and conditions for the presentation:
|
||||||
</p>
|
</p>
|
||||||
<h3 class="h4">Title: "{$events_slct.presentation_obj.name}"</h3>
|
<h3 class="h4">Title: "{$lq__event_presentation_obj?.name}"</h3>
|
||||||
|
|
||||||
<h3 class="h4">Opt-Out?</h3>
|
<h3 class="h4">Opt-Out?</h3>
|
||||||
<form
|
<form
|
||||||
@@ -358,4 +360,4 @@ async function handle_update__event_presenter({
|
|||||||
|
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
{/await}
|
<!-- {/await} -->
|
||||||
|
|||||||
@@ -41,6 +41,10 @@ let lq__event_presenter_obj = liveQuery(
|
|||||||
() => db_events.presenters.get($events_slct.event_presenter_id)
|
() => db_events.presenters.get($events_slct.event_presenter_id)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
let lq__event_presentation_obj = liveQuery(
|
||||||
|
() => db_events.presentations.get($events_slct.event_presentation_id)
|
||||||
|
);
|
||||||
|
|
||||||
let lq__event_file_obj_li = liveQuery(
|
let lq__event_file_obj_li = liveQuery(
|
||||||
async () => await db_events.files.where('event_presenter_id_random').equals($events_slct.event_presenter_id).toArray()
|
async () => await db_events.files.where('event_presenter_id_random').equals($events_slct.event_presenter_id).toArray()
|
||||||
);
|
);
|
||||||
@@ -242,9 +246,9 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#await $lq__event_presenter_obj}
|
<!-- {#await $lq__event_presenter_obj} -->
|
||||||
Loading...
|
<!-- Loading... -->
|
||||||
{:then result}
|
<!-- {:then result} -->
|
||||||
|
|
||||||
{#if $lq__event_presenter_obj}
|
{#if $lq__event_presenter_obj}
|
||||||
<h2 class="h3">
|
<h2 class="h3">
|
||||||
@@ -263,7 +267,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
type="button"
|
type="button"
|
||||||
|
|
||||||
|
|
||||||
use:clipboard={encodeURI(`${$ae_loc.url_origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${$lq__event_presenter_obj.person_id_random}&person_pass=${$lq__event_presenter_obj.person_passcode}&presentation_id=${$events_slct.presentation_obj.event_presentation_id_random}&presenter_id=${$lq__event_presenter_obj.event_presenter_id_random}`)}
|
use:clipboard={encodeURI(`${$ae_loc.url_origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${$lq__event_presenter_obj.person_id_random}&person_pass=${$lq__event_presenter_obj.person_passcode}&presentation_id=${$lq__event_presenter_obj.event_presentation_id_random}&presenter_id=${$lq__event_presenter_obj.event_presenter_id_random}`)}
|
||||||
class="btn btn-sm variant-ghost-warning float-right m-1"
|
class="btn btn-sm variant-ghost-warning float-right m-1"
|
||||||
title="Copy the presenter access link to the clipboard."
|
title="Copy the presenter access link to the clipboard."
|
||||||
>
|
>
|
||||||
@@ -278,19 +282,24 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
<Element_ae_crud
|
<Element_ae_crud
|
||||||
api_cfg={$ae_api}
|
api_cfg={$ae_api}
|
||||||
object_type={'event_presentation'}
|
object_type={'event_presentation'}
|
||||||
object_id={$events_slct.presentation_obj.event_presentation_id_random}
|
object_id={$lq__event_presenter_obj.event_presentation_id_random}
|
||||||
field_name={'name'}
|
field_name={'name'}
|
||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$events_slct.presentation_obj.name}
|
field_value={$lq__event_presentation_obj?.name}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
class_li={''}
|
class_li={''}
|
||||||
|
on:ae_crud_updated={e => {
|
||||||
|
console.log(`ae_crud_updated:`, e.detail);
|
||||||
|
events_func.handle_load_ae_obj_id__event_presentation({api_cfg: $ae_api, event_presentation_id: $lq__event_presentation_obj?.event_presentation_id_random, log_lvl: 1});
|
||||||
|
}}
|
||||||
>
|
>
|
||||||
Title: "{$events_slct.presentation_obj.name}"
|
Title: "{$lq__event_presentation_obj?.name}"
|
||||||
</Element_ae_crud>
|
</Element_ae_crud>
|
||||||
|
<!-- Title: "{$lq__event_presentation_obj?.name}" -->
|
||||||
</h3>
|
</h3>
|
||||||
|
|
||||||
<h3 class="h4">Presenter:</h3>
|
<h3 class="h4">Presenter:</h3>
|
||||||
@@ -313,7 +322,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.given_name}
|
field_value={$lq__event_presenter_obj.given_name}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -339,7 +348,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.family_name}
|
field_value={$lq__event_presenter_obj.family_name}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -379,7 +388,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.email}
|
field_value={$lq__event_presenter_obj.email}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={false}
|
display_inline={false}
|
||||||
@@ -412,7 +421,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.person_primary_email}
|
field_value={$lq__event_presenter_obj.person_primary_email}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -489,7 +498,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.affiliations}
|
field_value={$lq__event_presenter_obj.affiliations}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={false}
|
display_inline={false}
|
||||||
@@ -518,7 +527,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.person_affiliations}
|
field_value={$lq__event_presenter_obj.person_affiliations}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={true}
|
display_inline={true}
|
||||||
@@ -590,7 +599,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.professional_title}
|
field_value={$lq__event_presenter_obj.professional_title}
|
||||||
allow_null={false}
|
allow_null={false}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={false}
|
display_inline={false}
|
||||||
@@ -618,7 +627,7 @@ async function handle_delete__event_file({event_file_id}) {
|
|||||||
field_type={'text'}
|
field_type={'text'}
|
||||||
field_value={$lq__event_presenter_obj.person_passcode}
|
field_value={$lq__event_presenter_obj.person_passcode}
|
||||||
allow_null={true}
|
allow_null={true}
|
||||||
hide_edit_btn={!$ae_loc.trusted_access}
|
hide_edit_btn={!$ae_loc.trusted_access || !$ae_loc.edit_mode}
|
||||||
outline_element={false}
|
outline_element={false}
|
||||||
show_crud={false}
|
show_crud={false}
|
||||||
display_inline={false}
|
display_inline={false}
|
||||||
@@ -977,4 +986,4 @@ WARNING: The file upload and management is a work in progress. You can upload an
|
|||||||
|
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
{/await}
|
<!-- {/await} -->
|
||||||
|
|||||||
Reference in New Issue
Block a user