General work through out the day. Lots of interruptions from the dogs.
This commit is contained in:
@@ -5,6 +5,7 @@ import { ae_util } from '$lib/ae_utils';
|
||||
import { liveQuery } from "dexie";
|
||||
import { db_events } from "$lib/db_events";
|
||||
import { ae_loc, ae_sess, ae_api, slct, slct_trigger } from '$lib/ae_stores';
|
||||
// import { core_func } from '$lib/ae_core_functions';
|
||||
import { events_loc, events_sess, events_slct, events_trigger } from '$lib/ae_events_stores';
|
||||
import { events_func } from '$lib/ae_events_functions';
|
||||
|
||||
@@ -16,15 +17,24 @@ $events_sess.leads.show_form__search = true;
|
||||
// TEMPORARY: For testing and development
|
||||
|
||||
|
||||
let event_exhibit_obj = liveQuery(
|
||||
$: event_exhibit_obj = liveQuery(
|
||||
() => db_events.exhibits.get($events_slct.exhibit_id)
|
||||
);
|
||||
|
||||
$: event_exhibit_tracking_obj = liveQuery(
|
||||
() => db_events.exhibit_tracking.get($events_slct.exhibit_tracking_id)
|
||||
);
|
||||
|
||||
$events_sess.leads.entered_search_str = 'Albert Einstein';
|
||||
// $events_sess.leads.entered_search_str = 'Albert Einstein';
|
||||
|
||||
let tmp_search_terms = $events_sess.leads.entered_search_str.split(' ')
|
||||
|
||||
|
||||
$: event_badge_obj = liveQuery(
|
||||
() => db_events.badges.get($events_slct.badge_id)
|
||||
);
|
||||
|
||||
// Version 2: This does not work yet
|
||||
let event_badge_obj_li = liveQuery(
|
||||
// () => db_events.exhibits.toArray()
|
||||
@@ -72,7 +82,7 @@ async function handle_submit_form_search(event) {
|
||||
$events_slct.badge_obj_li = search_submit_results;
|
||||
}
|
||||
|
||||
|
||||
let load_event_badge_results = null;
|
||||
function handle_qr_scan_result(event) {
|
||||
console.log('*** handle_qr_scan_result() ***');
|
||||
|
||||
@@ -89,6 +99,13 @@ function handle_qr_scan_result(event) {
|
||||
|
||||
$events_sess.leads.qr_scan_result = `Found a badge type with ID: ${event_badge_id}`;
|
||||
|
||||
load_event_badge_results = events_func.handle_load_ae_obj_id__badge({api_cfg: $ae_api, badge_id: event_badge_id })
|
||||
.then((result) => {
|
||||
$events_slct.badge_id = event_badge_id;
|
||||
$events_slct.badge_obj = result;
|
||||
console.log(result);
|
||||
});
|
||||
|
||||
// event_exhibit_tracking_obj_create_promise = await handle_create_event_exhibit_tracking_obj($slct.event_exhibit_id, event_badge_id);
|
||||
// console.log(event_exhibit_tracking_obj_create_promise);
|
||||
// if (event_exhibit_tracking_obj_create_promise) {
|
||||
@@ -111,6 +128,9 @@ function handle_qr_scan_result(event) {
|
||||
// console.log('Something unexpected happened???');
|
||||
// }
|
||||
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[event_badge_id] = true;
|
||||
|
||||
} else if (qr_scan_obj.type && qr_scan_obj.id && qr_scan_obj.type == 'event_exhibit') {
|
||||
console.log(`Ignoring.`);
|
||||
} else if (qr_scan_obj.type && qr_scan_obj.id && qr_scan_obj.type == 'event_person') {
|
||||
@@ -346,6 +366,7 @@ function handle_qr_camera(event) {
|
||||
</button>
|
||||
|
||||
<!-- This block needs to be moved or something. It takes up too much space! -->
|
||||
<!-- This uses the event_badge_obj_v2 from the for each loop. -->
|
||||
{#if $events_sess.leads.show_confirm__add_lead[index]}
|
||||
<div class="ae_quick_modal_container">
|
||||
<section
|
||||
@@ -361,7 +382,7 @@ function handle_qr_camera(event) {
|
||||
"
|
||||
>
|
||||
<header class="popover__header flex gap-1 justify-between items-center p-1 border-b">
|
||||
<h2 class="h3">Add?</h2>
|
||||
<h2 class="h3">Add Selected?</h2>
|
||||
|
||||
<div class="popover__actions">
|
||||
<button
|
||||
@@ -386,6 +407,7 @@ function handle_qr_camera(event) {
|
||||
class="btn variant-soft-primary"
|
||||
on:click={() => {
|
||||
console.log(`Do not add ${event_badge_obj_v2.full_name} ${event_badge_obj_v2.email} to the leads list`);
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[index] = false;
|
||||
}}
|
||||
>
|
||||
@@ -403,10 +425,35 @@ function handle_qr_camera(event) {
|
||||
events_func.handle_create_ae_obj__exhibit_tracking({api_cfg: $ae_api, exhibit_id: $events_slct.exhibit_id, event_badge_id: event_badge_obj_v2.event_badge_id_random, external_person_id: $events_loc.leads.auth_exhibit_kv[$events_slct.exhibit_id].key, })
|
||||
.then((result) => {
|
||||
console.log(result);
|
||||
let exhibit_tracking_id = null;
|
||||
let exhibit_tracking_obj = {};
|
||||
if (result) {
|
||||
exhibit_tracking_id = result.event_exhibit_tracking_id_random;
|
||||
exhibit_tracking_obj = result;
|
||||
|
||||
$events_slct.exhibit_tracking_id = exhibit_tracking_id;
|
||||
$events_slct.exhibit_tracking_obj = exhibit_tracking_obj;
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[index] = false;
|
||||
} else {
|
||||
console.log('Something went wrong with adding the lead to the list.');
|
||||
console.log('This badge ID has probably already been added to the lead list for this exhibit.');
|
||||
|
||||
// Need to look the old record up and set it to not hidden.
|
||||
// events_func.handle_update_ae_obj_id_crud({api_cfg: $ae_api, object_type: 'event_exhibit_tracking', object_id: $events_slct.exhibit_tracking_id, field_name: 'hide', new_field_value: false})
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[index] = false;
|
||||
}
|
||||
|
||||
if ($events_loc.leads.auto_view) {
|
||||
$events_sess.leads.show_form__search = false;
|
||||
$events_sess.leads.show_form__scan = false;
|
||||
|
||||
// $events_slct.exhibit_tracking_id = exhibit_tracking_id;
|
||||
// $events_slct.exhibit_tracking_obj = exhibit_tracking_id;
|
||||
|
||||
$events_loc.leads.tab[$events_slct.exhibit_id] = 'leads';
|
||||
|
||||
$events_sess.leads.show_form__view_lead = $events_slct.exhibit_tracking_id;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -616,6 +663,115 @@ function handle_qr_camera(event) {
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<!-- This block needs to be moved or something. It takes up too much space! -->
|
||||
<!-- This uses the events_slct with badge_id and badge_obj. -->
|
||||
{#if $events_sess.leads.show_confirm__add_lead[$events_slct.badge_id] && $event_badge_obj}
|
||||
<div class="ae_quick_modal_container">
|
||||
<section
|
||||
class="
|
||||
ae_quick_popover_small
|
||||
events__leads__scan
|
||||
z-50
|
||||
flex
|
||||
flex-col
|
||||
gap-4
|
||||
justify-stretch
|
||||
|
||||
"
|
||||
>
|
||||
<header class="popover__header flex gap-1 justify-between items-center p-1 border-b">
|
||||
<h2 class="h3">Add Scanned?</h2>
|
||||
|
||||
<div class="popover__actions">
|
||||
<button
|
||||
type="button"
|
||||
class="btn variant-soft-primary"
|
||||
on:click={() => {
|
||||
$events_slct.badge_id = null;
|
||||
$events_slct.badge_obj = null;
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[$events_slct.badge_id] = false;
|
||||
}}
|
||||
>
|
||||
<span class="fas fa-times mx-1"></span>
|
||||
Close
|
||||
</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<section class="popover__content grow flex flex-col gap-4 items-center ae_modal_scrollfix">
|
||||
<p>Are you sure you want to add <strong>{$event_badge_obj.full_name}</strong> to the leads list?</p>
|
||||
<p>Badge ID: <strong>{$event_badge_obj.event_badge_id_random}</strong></p>
|
||||
<div class="flex flex-row gap-16 justify-center items-center">
|
||||
<button
|
||||
type="button"
|
||||
class="btn variant-soft-primary"
|
||||
on:click={() => {
|
||||
console.log(`Do not add ${$event_badge_obj.full_name} ${$event_badge_obj.email} to the leads list`);
|
||||
|
||||
$events_slct.badge_id = null;
|
||||
$events_slct.badge_obj = null;
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[$events_sess.leads.qr_scan_result] = false;
|
||||
}}
|
||||
>
|
||||
<span class="fas fa-times mx-1"></span>
|
||||
No
|
||||
</button>
|
||||
|
||||
<button
|
||||
type="button"
|
||||
class="btn variant-soft-primary"
|
||||
on:click={() => {
|
||||
console.log(`Add ${event_badge_obj.full_name} ${event_badge_obj.email} to the leads list`);
|
||||
|
||||
|
||||
events_func.handle_create_ae_obj__exhibit_tracking({api_cfg: $ae_api, exhibit_id: $events_slct.exhibit_id, event_badge_id: $events_slct.badge_id, external_person_id: $events_loc.leads.auth_exhibit_kv[$events_slct.exhibit_id].key, })
|
||||
.then((result) => {
|
||||
console.log(result);
|
||||
let exhibit_tracking_id = null;
|
||||
let exhibit_tracking_obj = {};
|
||||
if (result) {
|
||||
exhibit_tracking_id = result.event_exhibit_tracking_id_random;
|
||||
exhibit_tracking_obj = result;
|
||||
|
||||
$events_slct.exhibit_tracking_id = exhibit_tracking_id;
|
||||
$events_slct.exhibit_tracking_obj = exhibit_tracking_obj;
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[$events_slct.badge_id] = false;
|
||||
} else {
|
||||
console.log('This badge ID has probably already been added to the lead list for this exhibit.');
|
||||
|
||||
// Need to look the old record up and set it to not hidden.
|
||||
|
||||
$events_sess.leads.show_confirm__add_lead[$events_slct.badge_id] = false;
|
||||
}
|
||||
|
||||
if ($events_loc.leads.auto_view) {
|
||||
$events_sess.leads.show_form__search = false;
|
||||
$events_sess.leads.show_form__scan = false;
|
||||
|
||||
$events_loc.leads.tab[$events_slct.exhibit_id] = 'leads';
|
||||
|
||||
$events_sess.leads.show_form__view_lead = $events_slct.exhibit_tracking_id;
|
||||
}
|
||||
});
|
||||
|
||||
// $events_sess.leads.show_confirm__add_lead[$events_slct.badge_id] = false;
|
||||
}}
|
||||
>
|
||||
<span class="fas fa-check mx-1"></span>
|
||||
Yes
|
||||
</button>
|
||||
</div>
|
||||
</section> <!-- .popover__content -->
|
||||
</section> <!-- .ae_quick_popover -->
|
||||
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
|
||||
</section> <!-- .popover__content -->
|
||||
|
||||
<footer class="popover__footer flex gap-1 justify-between items-center p-1 border-t">
|
||||
|
||||
Reference in New Issue
Block a user