POC sign is mostly working now
This commit is contained in:
@@ -168,6 +168,7 @@ onMount(() => {
|
||||
let url_person_pass = data.url.searchParams.get('person_pass');
|
||||
let url_presentation_id = data.url.searchParams.get('presentation_id');
|
||||
let url_presenter_id = data.url.searchParams.get('presenter_id');
|
||||
let url_session_id = data.url.searchParams.get('session_id');
|
||||
|
||||
// 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) {
|
||||
@@ -180,9 +181,10 @@ onMount(() => {
|
||||
$events_sess.auth__person.id = url_person_id;
|
||||
$events_sess.auth__person.presentation_id = url_presentation_id;
|
||||
$events_sess.auth__person.presenter_id = url_presenter_id;
|
||||
$events_sess.auth__person.session_id = url_session_id; // For POC or LCI Champions for sessions. Do not set for a presenter!
|
||||
|
||||
$events_sess.auth__kv.person[url_person_id] = true;
|
||||
// $events_sess.auth__kv.session[$events_slct.event_session_id] = true;
|
||||
$events_sess.auth__kv.session[$events_slct.event_session_id] = true; // For POC or LCI Champions for sessions. Do not set for a presenter!
|
||||
$events_sess.auth__kv.presentation[url_presentation_id] = true;
|
||||
$events_sess.auth__kv.presenter[url_presenter_id] = true;
|
||||
|
||||
@@ -214,17 +216,38 @@ onMount(() => {
|
||||
// let new_url = data.url.toString()
|
||||
// console.log(new_url);
|
||||
// goto(new_url, {replaceState: true});
|
||||
if (url_presenter_id) {
|
||||
presenter_sign_in();
|
||||
}
|
||||
|
||||
presenter_sign_in();
|
||||
if (url_session_id) {
|
||||
session_sign_in();
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
// console.log(`$ae_loc = `, $ae_loc);
|
||||
|
||||
function presenter_sign_in() {
|
||||
console.log('Sign in with URL values');
|
||||
console.log('Presenter sign in with URL values');
|
||||
|
||||
// This needs to be moved to a function!
|
||||
$events_loc.auth__person.id = $events_sess.auth__entered_key; // person_id
|
||||
$events_loc.auth__person.entered_key = $events_sess.auth__entered_key; // also person_id in this case
|
||||
$events_loc.auth__person.email = 'test@example.com';
|
||||
$events_loc.auth__person.full_name = 'Test Person';
|
||||
|
||||
$events_loc.auth__kv.person[$events_sess.entered_key] = true;
|
||||
$events_loc.auth__kv.session[$events_slct.event_session_id] = false; // Set to false for presenters.
|
||||
$events_loc.auth__kv.presentation[$events_sess.auth__person.presentation_id] = true;
|
||||
$events_loc.auth__kv.presenter[$events_sess.auth__person.presenter_id] = true;
|
||||
|
||||
// Setting again here... just because for now.
|
||||
$events_slct.event_presentation_id = $events_sess.auth__person.presentation_id;
|
||||
$events_slct.event_presenter_id = $events_sess.auth__person.presenter_id;
|
||||
}
|
||||
|
||||
function session_sign_in() {
|
||||
console.log('Session sign in with URL values');
|
||||
|
||||
$events_loc.auth__person.id = $events_sess.auth__entered_key; // person_id
|
||||
$events_loc.auth__person.entered_key = $events_sess.auth__entered_key; // also person_id in this case
|
||||
@@ -233,12 +256,28 @@ function presenter_sign_in() {
|
||||
|
||||
$events_loc.auth__kv.person[$events_sess.entered_key] = true;
|
||||
$events_loc.auth__kv.session[$events_slct.event_session_id] = true;
|
||||
$events_loc.auth__kv.presentation[$events_sess.auth__person.presentation_id] = true;
|
||||
$events_loc.auth__kv.presenter[$events_sess.auth__person.presenter_id] = true;
|
||||
$events_loc.auth__kv.presentation[$events_sess.auth__person.presentation_id] = false; // Set to false for session POC (LCI Champions).
|
||||
$events_loc.auth__kv.presenter[$events_sess.auth__person.presenter_id] = false; // Set to false for session POC (LCI Champions).
|
||||
|
||||
// Setting again here... just because for now.
|
||||
$events_slct.event_presentation_id = $events_sess.auth__person.presentation_id;
|
||||
$events_slct.event_presenter_id = $events_sess.auth__person.presenter_id;
|
||||
// $events_slct.event_presentation_id = $events_sess.auth__person.presentation_id;
|
||||
// $events_slct.event_presenter_id = $events_sess.auth__person.presenter_id;
|
||||
}
|
||||
|
||||
function sign_out() {
|
||||
$events_loc.auth__person = {
|
||||
id: null,
|
||||
email: null,
|
||||
full_name: null,
|
||||
entered_key: null,
|
||||
entered_passcode: null,
|
||||
};
|
||||
$events_loc.auth__kv = {
|
||||
session: {},
|
||||
presentation: {},
|
||||
presenter: {},
|
||||
person: {},
|
||||
};
|
||||
}
|
||||
|
||||
$: if ($slct_trigger == 'load__event_file_obj_li') {
|
||||
@@ -337,6 +376,57 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
<li>
|
||||
<strong class="text-sm">Location/Room:</strong> {$lq__event_session_obj.event_location_name ? $lq__event_session_obj.event_location_name : '-- not set --'}
|
||||
</li>
|
||||
<li>
|
||||
<strong class="text-sm">Moderator/Champion:</strong> {$lq__event_session_obj.poc_person_full_name ? $lq__event_session_obj.poc_person_full_name : '-- not set --'}
|
||||
|
||||
<span class="float-right">
|
||||
{#if $events_loc.auth__kv.session[$events_slct.event_session_id]}
|
||||
<span class="text-green-500">Signed In</span>
|
||||
{/if}
|
||||
{#if $ae_loc.trusted_access || !$events_loc.auth__person.id }
|
||||
|
||||
<button
|
||||
type="button"
|
||||
disabled
|
||||
on:click={() => {
|
||||
console.log('Email the access link');
|
||||
if (!$lq__event_session_obj.poc_person_primary_email) {
|
||||
alert('No email address found for this presenter.');
|
||||
return;
|
||||
}
|
||||
if (confirm(`This will send the sign in email to ${$lq__event_session_obj.poc_person_primary_email}`)) {
|
||||
console.log('Send the email to the presenter.');
|
||||
} else {
|
||||
console.log('Cancelled sending the email.');
|
||||
return false;
|
||||
}
|
||||
}}
|
||||
class="btn btn-sm variant-ghost-primary hover:variant-filled-primary"
|
||||
title="Email the access link to the POC (moderator/champion)"
|
||||
>
|
||||
<span class="fas fa-envelope mx-1"></span>
|
||||
Email Access Link
|
||||
</button>
|
||||
|
||||
{/if}
|
||||
|
||||
{#if $ae_loc.trusted_access}
|
||||
<!-- A button to copy the access link to the clipboard. -->
|
||||
<!-- Example: /events_pres_mgmt/session/Wh8UnJlbIA0?person_id=fV1dl_IJ0yY&person_pass=abc123 -->
|
||||
<button
|
||||
type="button"
|
||||
use:clipboard={encodeURI(`${$ae_loc.url_origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${$events_slct.presenter_obj.person_id_random}&person_pass=${$events_slct.presenter_obj.person_passcode}&session_id=${$events_slct.event_session_id}`)}
|
||||
class="btn btn-sm variant-ghost-warning m-1"
|
||||
title="Copy the POC (moderator/champion) access link to the clipboard."
|
||||
>
|
||||
<span class="fas fa-copy mx-1"></span>
|
||||
Copy Access Link
|
||||
</button>
|
||||
{/if}
|
||||
</span>
|
||||
|
||||
</li>
|
||||
|
||||
{#if $ae_loc.trusted_access}
|
||||
<li>
|
||||
<strong class="text-sm">Session passcode:</strong> {$lq__event_session_obj.passcode ? $lq__event_session_obj.passcode : '-- not set --'}
|
||||
@@ -386,11 +476,15 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
</label> -->
|
||||
|
||||
<div class="m-1 flex flex-col flex-wrap gap-1 items-center">
|
||||
{#if $ae_loc.trusted_access || $events_loc.auth__kv.session[$events_slct.event_session_id]}
|
||||
{#if $ae_loc.trusted_access || $events_loc.auth__person.id }
|
||||
|
||||
{#if $events_loc.auth__kv.session[$events_slct.event_session_id]}
|
||||
<h3 class="h3">Welcome {$lq__event_session_obj?.poc_person_full_name ?? 'Session POC'}</h3>
|
||||
{:else}
|
||||
<h3 class="h3">Welcome {$lq__event_presenter_obj?.full_name ?? 'Presenter'}</h3>
|
||||
{/if}
|
||||
|
||||
{#if $ae_loc.trusted_access || ($events_loc.auth__kv.presenter[$events_slct.event_presenter_id] && $lq__event_presenter_obj?.agree)}
|
||||
{#if $ae_loc.trusted_access || $events_loc.auth__kv.session[$events_slct.event_session_id] || ($events_loc.auth__kv.presenter[$events_slct.event_presenter_id] && $lq__event_presenter_obj?.agree)}
|
||||
<a
|
||||
class="btn btn-md variant-ghost-primary hover:variant-filled-primary"
|
||||
href="https://static.oneskyit.com/c/LCI/files/LCI_Congress_Template_2024.pptx"
|
||||
@@ -422,19 +516,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
type="button"
|
||||
class="btn btn-sm variant-soft-warning hover:variant-ghost-warning"
|
||||
on:click={() => {
|
||||
$events_loc.auth__person = {
|
||||
id: null,
|
||||
email: null,
|
||||
full_name: null,
|
||||
entered_key: null,
|
||||
entered_passcode: null,
|
||||
};
|
||||
$events_loc.auth__kv = {
|
||||
session: {},
|
||||
presentation: {},
|
||||
presenter: {},
|
||||
person: {},
|
||||
};
|
||||
sign_out();
|
||||
alert('You have been signed out.');
|
||||
}}
|
||||
>
|
||||
@@ -456,6 +538,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
</p>
|
||||
</div>
|
||||
|
||||
{#if ($events_sess.auth__person.presenter_id) || ($events_sess.auth__person.session_id)}
|
||||
<div
|
||||
class="border border-gray-200 p-2 rounded-md m-2 text-center space-y-2"
|
||||
>
|
||||
@@ -484,7 +567,11 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
on:click={() => {
|
||||
console.log('Sign in with URL values');
|
||||
|
||||
presenter_sign_in();
|
||||
if ($events_sess.auth__person.presenter_id) {
|
||||
presenter_sign_in();
|
||||
} else if ($events_sess.auth__person.session_id) {
|
||||
session_sign_in();
|
||||
}
|
||||
|
||||
// This needs to be moved to a function!
|
||||
|
||||
@@ -511,7 +598,10 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
<div
|
||||
class="text-sm text-gray-500"
|
||||
>
|
||||
For: presentation: {$events_sess.auth__person.presentation_id} presenter: {$events_sess.auth__person.presenter_id}
|
||||
For:
|
||||
session: {$events_sess.auth__person.session_id}
|
||||
presentation: {$events_sess.auth__person.presentation_id}
|
||||
presenter: {$events_sess.auth__person.presenter_id}
|
||||
<br>
|
||||
|
||||
{$lq__event_presentation_obj?.name ? `Name: "${$lq__event_presentation_obj.name}"` : '-- not set --'}
|
||||
@@ -523,19 +613,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
type="button"
|
||||
class="btn btn-sm variant-soft-warning"
|
||||
on:click={() => {
|
||||
$events_loc.auth__person = {
|
||||
id: null,
|
||||
email: null,
|
||||
full_name: null,
|
||||
entered_key: null,
|
||||
entered_passcode: null,
|
||||
};
|
||||
$events_loc.auth__kv = {
|
||||
session: {},
|
||||
presentation: {},
|
||||
presenter: {},
|
||||
person: {},
|
||||
};
|
||||
sign_out();
|
||||
alert('You have been signed out.');
|
||||
}}
|
||||
>
|
||||
@@ -544,6 +622,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
</button>
|
||||
{/if}
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
{/if}
|
||||
</div>
|
||||
@@ -633,7 +712,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
<li>
|
||||
<button
|
||||
type="button"
|
||||
disabled={!$ae_loc.trusted_access && (!$events_loc.auth__kv.presenter[event_presenter_obj.event_presenter_id_random] || !event_presenter_obj.agree)}
|
||||
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');
|
||||
@@ -658,7 +737,8 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
|
||||
{#if $ae_loc.trusted_access || !$events_loc.auth__person.id }
|
||||
<button
|
||||
class="btn btn-md variant-ghost-primary hover:variant-filled-primary"
|
||||
type="button"
|
||||
disabled
|
||||
on:click={() => {
|
||||
console.log('Email the access link');
|
||||
if (!event_presenter_obj.email) {
|
||||
@@ -692,6 +772,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
|
||||
// body: `Hello ${event_presenter_obj.full_name},\n\nHere is the access link for the session: ${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}\n\nThank you,\n\nThe LCI Team`,
|
||||
// });
|
||||
}}
|
||||
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>
|
||||
|
||||
Reference in New Issue
Block a user