Enable emailing sign in links

This commit is contained in:
Scott Idem
2024-06-18 18:49:30 -04:00
parent baf354fd46
commit 5ef2d05e9c
3 changed files with 80 additions and 16 deletions

View File

@@ -1563,12 +1563,6 @@ function handle_db_save_ae_obj_li__event_session({obj_type, obj_li}) {
event_location_id_random: obj.event_location_id_random,
poc_person_id_random: obj.poc_person_id_random,
poc_person_given_name: obj.poc_person_given_name,
poc_person_family_name: obj.poc_person_family_name,
poc_person_full_name: obj.poc_person_full_name,
poc_person_primary_email: obj.poc_person_primary_email,
poc_kv_json: obj.poc_kv_json,
name: obj.name,
description: obj.description,
@@ -1597,6 +1591,14 @@ function handle_db_save_ae_obj_li__event_session({obj_type, obj_li}) {
// From SQL view
// event_name: obj.event_name,
file_count: obj.file_count,
poc_person_given_name: obj.poc_person_given_name,
poc_person_family_name: obj.poc_person_family_name,
poc_person_full_name: obj.poc_person_full_name,
poc_person_primary_email: obj.poc_person_primary_email,
poc_person_passcode: obj.poc_person_passcode,
poc_kv_json: obj.poc_kv_json,
event_location_code: obj.event_location_code,
event_location_name: obj.event_location_name,
});

View File

@@ -233,11 +233,6 @@ export interface Session {
event_location_id_random: string;
poc_person_id_random: string;
poc_person_given_name: string;
poc_person_family_name: string;
poc_person_full_name: string;
poc_person_primary_email: string;
poc_kv_json: null|string;
name: string;
description: null|string;
@@ -265,6 +260,14 @@ export interface Session {
// Additional fields for convenience (database views)
file_count: number;
poc_person_given_name: string;
poc_person_family_name: string;
poc_person_full_name: string;
poc_person_primary_email: string;
poc_person_passcode: string;
poc_kv_json: null|string;
event_location_code: string;
event_location_name: string;
}
@@ -357,6 +360,8 @@ export interface Presenter {
// Additional fields for convenience (database views)
file_count: number;
person_passcode: string;
person_primary_email: string;
}

View File

@@ -316,7 +316,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
let body_html = `
<div>${to_name},
<p>Your link to sign in to the presentation management hub for LCI Congress 2024 is below. If you did not request this, please delete and ignore the 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>
@@ -342,6 +342,54 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
}
function send_sign_in_poc_email({
to_email,
to_name,
person_id,
person_passcode,
session_id,
session_name
}: {
to_email: string,
to_name: string,
person_id: string,
person_passcode: string,
session_id: string,
session_name: string
}
) {
console.log(`*** send_sign_in_poc_email() *** to ${to_email}.`);
// 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 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 = `
<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: ${$lq__event_session_obj?.name}<br>
Session ID: ${$lq__event_session_obj?.event_session_id_random}
</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: $ae_api,
from_email: 'noreply+agree@oneskyit.com',
from_name: 'LCI 2024 Pres Mgmt Hub',
to_email: to_email,
subject: subject,
body_html: body_html,
});
}
</script>
@@ -387,7 +435,6 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
<button
type="button"
disabled
on:click={() => {
console.log('Email the access link');
if (!$lq__event_session_obj.poc_person_primary_email) {
@@ -400,6 +447,17 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
console.log('Cancelled sending the email.');
return false;
}
send_sign_in_poc_email(
{
to_email: $lq__event_session_obj.poc_person_primary_email,
to_name: $lq__event_session_obj.poc_person_full_name,
person_id: $lq__event_session_obj.poc_person_id_random,
person_passcode: $lq__event_session_obj.poc_person_passcode,
session_id: $lq__event_session_obj.event_session_id_random,
session_name: $lq__event_session_obj.name,
}
);
}}
class="btn btn-sm variant-ghost-primary hover:variant-filled-primary"
title="Email the access link to the POC (moderator/champion)"
@@ -415,7 +473,7 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
<!-- 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}`)}
use:clipboard={encodeURI(`${$ae_loc.url_origin}/events_pres_mgmt/session/${$events_slct.event_session_id}?person_id=${$lq__event_session_obj.poc_person_id_random}&person_pass=${$lq__event_session_obj.poc_person_passcode}&session_id=${$lq__event_session_obj.event_session_id_random}`)}
class="btn btn-sm variant-ghost-warning m-1"
title="Copy the POC (moderator/champion) access link to the clipboard."
>
@@ -735,10 +793,9 @@ function send_init_confirm_email({to_email, to_name, person_id, person_passcode,
{#if $ae_loc.trusted_access || !$events_loc.auth__person.id }
{#if $ae_loc.trusted_access || !$events_loc.auth__person?.id }
<button
type="button"
disabled
on:click={() => {
console.log('Email the access link');
if (!event_presenter_obj.email) {