Things are working!

This commit is contained in:
Scott Idem
2024-03-14 19:43:54 -04:00
parent a97e5666a7
commit 20b42ac6aa

View File

@@ -181,19 +181,63 @@ async function handle_load_ae_obj_id__event_exhibit({event_exhibit_id, try_cache
return ae_event_exhibit_get_promise; return ae_event_exhibit_get_promise;
} }
async function handle_submit_form_other(event) { async function handle_submit_form_license_update(event) {
console.log('*** handle_submit_form_license_update() ***');
// Data in
let tmp_obj = $event_exhibit_obj; let tmp_obj = $event_exhibit_obj;
tmp_obj.license_li_json.push($events_sess.leads.tmp_license); if ($events_sess.leads.tmp_license.index >= 0 && $events_sess.leads.tmp_license.email && $events_sess.leads.tmp_license.full_name) {
console.log('Add License:', tmp_obj); tmp_obj.license_li_json[$events_sess.leads.tmp_license.index] = $events_sess.leads.tmp_license;
console.log('Update license:', tmp_obj);
} else if ($events_sess.leads.tmp_license.index >= 0 && !$events_sess.leads.tmp_license.email && !$events_sess.leads.tmp_license.full_name) {
console.log('No license email and full_name to update and there is an index number. Remove the license.');
console.log('Remove License');
let tmp_obj = $event_exhibit_obj;
tmp_obj.license_li_json.splice($events_sess.leads.tmp_license.index, 1);
console.log('Removed license:', tmp_obj);
} else if ($events_sess.leads.tmp_license.email && $events_sess.leads.tmp_license.full_name) {
tmp_obj.license_li_json.push($events_sess.leads.tmp_license);
console.log('Add license:', tmp_obj);
} else if ($events_sess.leads.tmp_license.index === -1) {
// console.log('No license email and full_name to add or update and index is -1. This was already deleted based on the old index number! Just submit what is already there?', tmp_obj);
} else {
return false;
}
// tmp_obj.license_li_json.push($events_sess.leads.tmp_license);
// Save to local IDB
await db_events.exhibits.put(tmp_obj); await db_events.exhibits.put(tmp_obj);
// Save to the database
// Data out
let exhibit_do: key_val = {};
exhibit_do['license_li_json'] = $event_exhibit_obj?.license_li_json;
console.log('exhibit_do:', exhibit_do);
console.log(`ae_ Exhibit Update:`, exhibit_do);
exhibit_submit_results = handle_update__exhibit({
obj_type: 'event_exhibit',
obj_id: $events_slct.exhibit_id,
data: exhibit_do
})
.then( function (exhibit_results) {
console.log(`ae_ Exhibit Update Results:`, exhibit_results);
if (exhibit_results) {
}
return exhibit_results;
})
.finally(function () {
$events_trigger == 'load__event_exhibit_obj'
// $ae_sess.ds.submit_status = 'updated';
});
$events_sess.leads.show_form__license = false; $events_sess.leads.show_form__license = false;
$events_loc.leads.edit_license_li = false; $events_loc.leads.edit_license_li = false;
// This still needs to be saved to the database.
} }
@@ -497,12 +541,13 @@ function send_init_confirm_email({to_email}) {
<h2 class="h3">License List (max {$event_exhibit_obj?.license_max})</h2> <h2 class="h3">License List (max {$event_exhibit_obj?.license_max})</h2>
<section class="ae_license_list"> <section class="ae_license_list">
{#if $event_exhibit_obj?.license_li_json.length < $event_exhibit_obj?.license_max} {#if $event_exhibit_obj?.license_li_json && $event_exhibit_obj?.license_li_json.length < $event_exhibit_obj?.license_max}
<button <button
class="btn btn-sm variant-soft-primary w-40" class="btn btn-sm variant-soft-primary w-40"
on:click={() => { on:click={() => {
// let tmp_obj = $event_exhibit_obj; // let tmp_obj = $event_exhibit_obj;
$events_sess.leads.tmp_license = { $events_sess.leads.tmp_license = {
// 'index': $event_exhibit_obj?.license_li_json.length, // This is the index of the new license in the list.
'email': 'test+z@oneskyit.com', 'email': 'test+z@oneskyit.com',
'full_name': 'Scott X', 'full_name': 'Scott X',
'passcode': 'abcdefg', 'passcode': 'abcdefg',
@@ -521,7 +566,7 @@ function send_init_confirm_email({to_email}) {
Add License Add License
</button> </button>
{:else} {:else}
<button <!-- <button
class="btn btn-sm variant-soft-warning w-40" class="btn btn-sm variant-soft-warning w-40"
on:click={() => { on:click={() => {
console.log('No more licenses available. Remove the last one from the list?'); console.log('No more licenses available. Remove the last one from the list?');
@@ -534,7 +579,7 @@ function send_init_confirm_email({to_email}) {
> >
<span class="fas fa-trash mx-1"></span> <span class="fas fa-trash mx-1"></span>
Delete License Delete License
</button> </button> -->
{/if} <!-- $event_exhibit_obj?.license_li_json.length < $event_exhibit_obj?.license_max --> {/if} <!-- $event_exhibit_obj?.license_li_json.length < $event_exhibit_obj?.license_max -->
<div>Use one of the options below to log in using one of the licenses.</div> <div>Use one of the options below to log in using one of the licenses.</div>
@@ -628,6 +673,7 @@ function send_init_confirm_email({to_email}) {
type="button" type="button"
use:clipboard={$events_slct.exhibit_obj.url} use:clipboard={$events_slct.exhibit_obj.url}
class="btn btn-sm text-sm variant-soft-tertiary" class="btn btn-sm text-sm variant-soft-tertiary"
class:hidden={!$ae_loc.trusted_access || !$events_loc.show_details}
title={`Copy link to this exhibit (ID: ${$events_slct.exhibit_id})`} title={`Copy link to this exhibit (ID: ${$events_slct.exhibit_id})`}
> >
<span class="fas fa-copy mx-1"></span> <span class="fas fa-copy mx-1"></span>
@@ -699,7 +745,7 @@ function send_init_confirm_email({to_email}) {
</td> </td>
<td> <td>
{#if $events_loc.leads.edit_license_li} <!-- {#if $events_loc.leads.edit_license_li}
<button <button
type="submit" type="submit"
disabled={index >= $event_exhibit_obj?.license_max} disabled={index >= $event_exhibit_obj?.license_max}
@@ -707,25 +753,47 @@ function send_init_confirm_email({to_email}) {
<span class="fas fa-save mx-1"></span> <span class="fas fa-save mx-1"></span>
Save Save
</button> </button>
{:else} {:else} -->
<div class="btn-group">
<button <button
type="button" type="button"
on:click={() => { on:click={() => {
console.log('Edit License'); console.log('Edit License');
$events_loc.leads.edit_license_li = true;
$events_sess.leads.tmp_license = license;
$events_sess.leads.tmp_license['index'] = index; // This is the index of the license in the list. It will need to be removed before saving back to the list based on the index value.
$events_sess.leads.tmp_license['updated_on'] = new Date().toISOString();
// $events_loc.leads.edit_license_li = true;
$events_sess.leads.show_form__license = true;
}} }}
class="btn btn-sm variant-soft-warning"> class="btn btn-sm variant-soft-warning">
<span class="fas fa-edit mx-1"></span> <span class="fas fa-edit mx-1"></span>
Edit Edit
</button> </button>
{/if} <button
<!-- <button type="button"
type="submit" on:click={() => {
disabled={index >= $event_exhibit_obj?.license_max} console.log('Remove License');
class="btn btn-sm variant-soft-warning"> // let tmp_obj = $event_exhibit_obj;
<span class="fas fa-save mx-1"></span> // tmp_obj?.license_li_json.splice(index, 1);
Save // console.log('Remove License:', tmp_obj);
</button> --> // db_events.exhibits.put(tmp_obj);
// This still needs to be saved to the database.
// $events_sess.leads.tmp_license.index = -1;
// Signal that this license should be removed from the list.
$events_sess.leads.tmp_license.index = index;
$events_sess.leads.tmp_license.email = null;
$events_sess.leads.tmp_license.full_name = null;
handle_submit_form_license_update(event);
}}
class="btn btn-sm variant-soft-error">
<span class="fas fa-trash mx-1"></span>
Remove
</button>
</div>
</td> </td>
{#if $events_loc.show_details} {#if $events_loc.show_details}
@@ -764,6 +832,17 @@ function send_init_confirm_email({to_email}) {
{#if $events_loc?.leads.auth_exhibit_li && $events_loc.leads.auth_exhibit_li[$events_slct.exhibit_id]} {#if $events_loc?.leads.auth_exhibit_li && $events_loc.leads.auth_exhibit_li[$events_slct.exhibit_id]}
<div>Manage: Logged in. Nothing here yet</div> <div>Manage: Logged in. Nothing here yet</div>
<button
type="button"
on:click={() => {
console.log('Show/Hide Details');
$events_loc.show_details = !$events_loc.show_details;
}}
>
<span class="fas fa-eye mx-1"></span>
Show/Hide Details
</button>
{#if $events_loc?.leads.auth_exhibit_li && $events_loc.leads.auth_exhibit_li[$events_slct.exhibit_id]} {#if $events_loc?.leads.auth_exhibit_li && $events_loc.leads.auth_exhibit_li[$events_slct.exhibit_id]}
<button <button
type="button" type="button"
@@ -846,7 +925,7 @@ function send_init_confirm_email({to_email}) {
<form <form
id="form__license_single" id="form__license_single"
class="form" class="form"
on:submit|preventDefault={handle_submit_form_other} on:submit|preventDefault={handle_submit_form_license_update}
> >
<!-- <input <!-- <input