General work through out the day. Lots of interruptions from the dogs.
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
<script lang="ts">
|
||||
/** @type {import('./$types').LayoutData} */
|
||||
export let data;
|
||||
export let data: any;
|
||||
|
||||
import { goto } from '$app/navigation';
|
||||
import { onMount } from 'svelte';
|
||||
|
||||
@@ -8,11 +9,26 @@ import { ae_loc, ae_sess, ae_api, slct, slct_trigger } from '$lib/ae_stores';
|
||||
import { events_loc, events_slct, events_trigger } from '$lib/ae_events_stores';
|
||||
import { ae_util } from '$lib/ae_utils';
|
||||
|
||||
if (!$ae_api.account_id || !$ae_api.headers['x-account-id']) {
|
||||
console.log(`Account ID not set. Redirecting to root if can not fix.`);
|
||||
|
||||
if ($ae_loc.account_id) {
|
||||
$ae_api.account_id = $ae_loc.account_id;
|
||||
$ae_api.headers['x-account-id'] = $ae_loc.account_id;
|
||||
} else {
|
||||
goto('/');
|
||||
}
|
||||
}
|
||||
|
||||
$events_loc.qry__enabled = 'enabled';
|
||||
$events_loc.qry__hidden = 'not_hidden';
|
||||
$events_loc.qry__limit = 25;
|
||||
$events_loc.qry__offset = 0;
|
||||
|
||||
$events_slct.event_id = data.ae_slct.event_id
|
||||
$events_slct.event_obj = data.ae_slct.event_obj
|
||||
$events_slct.exhibit_obj_li = data.ae_slct.event_exhibit_obj_li
|
||||
|
||||
onMount(() => {
|
||||
console.log('Events Leads: +layout.svelte');
|
||||
|
||||
|
||||
39
src/routes/events_leads/+layout.ts
Normal file
39
src/routes/events_leads/+layout.ts
Normal file
@@ -0,0 +1,39 @@
|
||||
/** @type {import('./$types').LayoutLoad} */
|
||||
console.log(`ae_events_leads +layout.ts start`);
|
||||
|
||||
import { events_func } from '$lib/ae_events_functions';
|
||||
|
||||
export async function load({ parent }) {
|
||||
|
||||
let data = await parent();
|
||||
|
||||
if (data.ae_loc.account_id) {
|
||||
} else {
|
||||
console.log(`The account_id was not found in the data.ae_loc!!!`);
|
||||
return false;
|
||||
}
|
||||
|
||||
let event_id = null;
|
||||
if (data.url.searchParams.get('event_id')) {
|
||||
event_id = data.url.searchParams.get('event_id');
|
||||
} else if (data.ae_loc.site_cfg_json.slct__event_id) {
|
||||
event_id = data.ae_loc.site_cfg_json.slct__event_id;
|
||||
} else if (data.ae_loc.default__event_id) {
|
||||
event_id = data.ae_loc.default__event_id;
|
||||
} else {
|
||||
console.log(`The slct__event_id was not found in the data.ae_loc.site_cfg_json!!!`);
|
||||
return false;
|
||||
}
|
||||
|
||||
let load_event_obj = events_func.handle_load_ae_obj_id__event({api_cfg: data.ae_api, event_id: event_id, try_cache: false});
|
||||
|
||||
data.ae_slct.event_id = event_id;
|
||||
data.ae_slct.event_obj = await load_event_obj;
|
||||
|
||||
let load_event_exhibit_obj_li = events_func.handle_load_ae_obj_li__exhibit({api_cfg: data.ae_api, event_id: event_id, try_cache: false});
|
||||
console.log(`load_event_exhibit_obj_li = `, load_event_exhibit_obj_li);
|
||||
data.ae_slct.event_exhibit_obj_li = load_event_exhibit_obj_li;
|
||||
|
||||
return data;
|
||||
|
||||
}
|
||||
@@ -1,5 +1,5 @@
|
||||
<script lang="ts">
|
||||
export let data;
|
||||
export let data: any;
|
||||
// console.log(`ae_events_leads +page data:`, data);
|
||||
// console.log(`ae_events_leads Data Params:`, data.url.searchParams.get('event_id'));
|
||||
|
||||
@@ -67,6 +67,21 @@ onMount(() => {
|
||||
});
|
||||
|
||||
|
||||
$: if ($events_loc.leads.auth_exhibit_kv && $events_slct.exhibit_obj && $events_slct.exhibit_obj.event_exhibit_id_random && $events_loc.leads.auth_exhibit_kv[$events_slct.exhibit_obj.event_exhibit_id_random]) {
|
||||
disable_open_lead_retrieval_btn = false;
|
||||
disable_reset_passcode_btn = false;
|
||||
|
||||
$events_sess.leads.open_href = `/events_leads/exhibit/${$events_slct.exhibit_obj.id_random}`;
|
||||
|
||||
if ($events_loc.leads.auto_view) {
|
||||
goto($events_sess.leads.open_href, {invalidateAll: true});
|
||||
}
|
||||
} else {
|
||||
disable_open_lead_retrieval_btn = true;
|
||||
disable_reset_passcode_btn = true;
|
||||
}
|
||||
|
||||
|
||||
$: if ($events_sess.leads.entered_passcode && $events_sess.leads.entered_passcode >= 5) {
|
||||
// disable_open_lead_retrieval_btn = false;
|
||||
// Convert the passcode to a string before checking it.
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
/** @type {import('./$types').PageLoad} */
|
||||
console.log(`ae_events_leads +page.ts start`);
|
||||
|
||||
import { events_func } from '$lib/ae_events_functions';
|
||||
|
||||
@@ -11,11 +12,11 @@ export async function load({ params, parent, url }) { // route
|
||||
// console.log(`ae_events_leads +page.ts data:`, data);
|
||||
|
||||
// console.log(`ae_events_leads +page.ts data.ae_loc:`, data.ae_loc);
|
||||
if (data.ae_loc.account_id) {
|
||||
} else {
|
||||
console.log(`The account_id was not found in the data.ae_loc!!!`);
|
||||
return false;
|
||||
}
|
||||
// if (data.ae_loc.account_id) {
|
||||
// } else {
|
||||
// console.log(`The account_id was not found in the data.ae_loc!!!`);
|
||||
// return false;
|
||||
// }
|
||||
|
||||
data.ae_events_leads_page_ts = true;
|
||||
|
||||
@@ -27,12 +28,12 @@ export async function load({ params, parent, url }) { // route
|
||||
data.submenu = submenu
|
||||
|
||||
// Do not wait on these:
|
||||
let event_id = url.searchParams.get('event_id');
|
||||
let load_event_obj = events_func.handle_load_ae_obj_id__event({api_cfg: data.ae_api, event_id: event_id, try_cache: false});
|
||||
// let event_id = url.searchParams.get('event_id');
|
||||
// let load_event_obj = events_func.handle_load_ae_obj_id__event({api_cfg: data.ae_api, event_id: event_id, try_cache: false});
|
||||
// console.log(`load_event_obj = `, load_event_obj);
|
||||
|
||||
let load_event_exhibit_obj_li = events_func.handle_load_ae_obj_li__exhibit({api_cfg: data.ae_api, event_id: event_id, try_cache: false});
|
||||
console.log(`load_event_exhibit_obj_li = `, load_event_exhibit_obj_li);
|
||||
// let load_event_exhibit_obj_li = events_func.handle_load_ae_obj_li__exhibit({api_cfg: data.ae_api, event_id: event_id, try_cache: false});
|
||||
// console.log(`load_event_exhibit_obj_li = `, load_event_exhibit_obj_li);
|
||||
|
||||
// let exhibit_id = data.params.slug;
|
||||
// let load_event_exhibit_obj = events_func.handle_load_ae_obj_id__exhibit({api_cfg: data.ae_api, exhibit_id: exhibit_id, try_cache: false});
|
||||
|
||||
@@ -5,6 +5,8 @@ export let data;
|
||||
import { onMount } from 'svelte';
|
||||
import { goto, invalidate, pushState, replaceState } from '$app/navigation';
|
||||
|
||||
import { clipboard, FileDropzone, getModalStore, localStorageStore, ProgressRadial, RadioGroup, RadioItem, TabGroup, Tab, TabAnchor } from '@skeletonlabs/skeleton';
|
||||
|
||||
import type { key_val } from '$lib/ae_stores';
|
||||
import { ae_util } from '$lib/ae_utils';
|
||||
import { api } from '$lib/api';
|
||||
@@ -14,28 +16,26 @@ import { ae_loc, ae_sess, ae_api, ae_trig, slct, slct_trigger } from '$lib/ae_st
|
||||
import { events_loc, events_sess, events_slct, events_trigger } from '$lib/ae_events_stores';
|
||||
import { events_func } from '$lib/ae_events_functions';
|
||||
|
||||
$events_slct.exhibit_id = data.ae_slct.event_exhibit_id;
|
||||
$events_slct.exhibit_obj = data.ae_slct.event_exhibit_obj;
|
||||
$events_slct.exhibit_tracking_obj_li = data.ae_slct.event_exhibit_tracking_obj_li;
|
||||
|
||||
import { clipboard, FileDropzone, getModalStore, localStorageStore, ProgressRadial, RadioGroup, RadioItem, TabGroup, Tab, TabAnchor } from '@skeletonlabs/skeleton';
|
||||
|
||||
// import type { Writable } from 'svelte/store';
|
||||
|
||||
// import Element_data_store from '$lib/element_data_store.svelte';
|
||||
// import Element_qr_scanner from '$lib/element_qr_scanner.svelte';
|
||||
|
||||
import Leads_add_scan from './leads_add_scan.svelte';
|
||||
import Leads_list from './leads_list.svelte';
|
||||
import Leads_manage from './leads_manage.svelte';
|
||||
import Leads_payment from './leads_payment.svelte';
|
||||
|
||||
let param_slug_event_exhibit_id = data.params.slug;
|
||||
// let param_slug_event_exhibit_id = data.params.slug;
|
||||
let url_passcode = data.url.searchParams.get('passcode');
|
||||
console.log(`ae_events_leads exhibit [slug] +page.svelte: param_slug_event_exhibit_id=${param_slug_event_exhibit_id}; passcode=${url_passcode}`);
|
||||
if (url_passcode) {
|
||||
console.log(`ae_events_leads exhibit [slug] +page.svelte: event_exhibit_id=${$events_slct.exhibit_id}; passcode=${url_passcode}`);
|
||||
$events_sess.leads.entered_passcode = url_passcode;
|
||||
}
|
||||
|
||||
let event_exhibit_obj = liveQuery(
|
||||
() => db_events.exhibits.get(param_slug_event_exhibit_id)
|
||||
() => db_events.exhibits.get($events_slct.exhibit_id)
|
||||
// () => db_events.exhibits.get(param_slug_event_exhibit_id)
|
||||
// () => db_events.exhibits.toArray()
|
||||
// () => db_events.exhibits
|
||||
// .where('id_random')
|
||||
@@ -45,12 +45,12 @@ let event_exhibit_obj = liveQuery(
|
||||
// .toArray()
|
||||
);
|
||||
|
||||
let event_exhibit_obj_v2 = db_events.exhibits.get(param_slug_event_exhibit_id);
|
||||
let event_exhibit_obj_v2 = db_events.exhibits.get($events_slct.exhibit_id);
|
||||
|
||||
// Load the Event Exhibit Obj with ID based on the slug param.
|
||||
$events_slct.exhibit_id = param_slug_event_exhibit_id;
|
||||
console.log('Selected Event Exhibit ID:', $events_slct.exhibit_id);
|
||||
$events_trigger = 'load__event_exhibit_obj';
|
||||
// $events_slct.exhibit_id = param_slug_event_exhibit_id;
|
||||
// console.log('Selected Event Exhibit ID:', $events_slct.exhibit_id);
|
||||
// $events_trigger = 'load__event_exhibit_obj';
|
||||
|
||||
let license_submit_results: Promise<any>|key_val;
|
||||
|
||||
@@ -83,11 +83,9 @@ onMount(() => {
|
||||
|
||||
// console.log(`ae_events_leads exhibit [slug] +page.svelte data:`, data);
|
||||
|
||||
if ($events_slct.exhibit_id) {
|
||||
console.log(`Got an ID. Let's do something!?`);
|
||||
} else {
|
||||
console.log(`No ID. Nothing to show. Try setting the ID again.`);
|
||||
$events_slct.exhibit_id = param_slug_event_exhibit_id;
|
||||
if (!$events_slct.exhibit_id) {
|
||||
console.log(`No ID! Nothing to show. Try setting the ID again.`);
|
||||
$events_slct.exhibit_id = $events_slct.exhibit_id;
|
||||
}
|
||||
|
||||
// We need to remove the url_passcode from the URL GET params after we use it. It should be safe to assume that onMount is a safe place to do this.
|
||||
@@ -102,7 +100,6 @@ onMount(() => {
|
||||
// console.log(`$ae_loc = `, $ae_loc);
|
||||
|
||||
$: if ($events_slct.exhibit_obj && $events_sess.leads.entered_passcode) {
|
||||
console.log('Check the passcode?');
|
||||
if ($events_sess.leads.entered_passcode.length > 4) {
|
||||
console.log('Check the passcode');
|
||||
handle_check_event_exhibit_staff_passcode();
|
||||
@@ -236,7 +233,7 @@ async function handle_submit_form_license_update(event) {
|
||||
return exhibit_results;
|
||||
})
|
||||
.finally(function () {
|
||||
$events_trigger == 'load__event_exhibit_obj'
|
||||
$events_trigger = 'load__event_exhibit_obj';
|
||||
// $ae_sess.ds.submit_status = 'updated';
|
||||
});
|
||||
|
||||
@@ -327,7 +324,7 @@ async function handle_submit_form(event) {
|
||||
return exhibit_results;
|
||||
})
|
||||
.finally(function () {
|
||||
$events_trigger == 'load__event_exhibit_obj'
|
||||
$events_trigger = 'load__event_exhibit_obj';
|
||||
// $ae_sess.ds.submit_status = 'updated';
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
/** @type {import('./$types').PageLoad} */
|
||||
console.log(`ae_events_leads slug +page.ts start`);
|
||||
|
||||
import { events_func } from '$lib/ae_events_functions';
|
||||
|
||||
@@ -10,35 +11,30 @@ export async function load({ params, parent, url }) { // route
|
||||
let data = await parent();
|
||||
// console.log(`ae_events_leads +page.ts data:`, data);
|
||||
|
||||
// console.log(`ae_events_leads +page.ts data.ae_loc:`, data.ae_loc);
|
||||
if (data.ae_loc.account_id) {
|
||||
} else {
|
||||
console.log(`The account_id was not found in the data.ae_loc!!!`);
|
||||
return false;
|
||||
}
|
||||
|
||||
data.ae_events_leads_exhibit_slug_page_ts = true;
|
||||
|
||||
// let submenu = {
|
||||
// main: {name: 'Main', href: '/events_leads', access: false},
|
||||
// manage: {name: 'Manage', href: '/events_leads/manage', access: 'administrator', disable: true, hide: true},
|
||||
// review: {name: 'Exhibitor', href: '/events_leads/exhibitor', access: false, disable: false, hide: false},
|
||||
// };
|
||||
// data.submenu = submenu
|
||||
|
||||
// Do not wait on these:
|
||||
// let event_id = url.searchParams.get('event_id');
|
||||
// let load_event_obj = events_func.handle_load_ae_obj_id__event({api_cfg: data.ae_api, event_id: event_id, try_cache: false});
|
||||
// console.log(`load_event_obj = `, load_event_obj);
|
||||
|
||||
let param_slug_event_exhibit_id = data.params.slug;
|
||||
|
||||
let load_event_exhibit_tracking_obj_li = events_func.handle_load_ae_obj_li__exhibit_tracking({api_cfg: data.ae_api, exhibit_id: param_slug_event_exhibit_id, try_cache: false});
|
||||
// console.log(`load_event_exhibit_tracking_obj_li = `, load_event_exhibit_tracking_obj_li);
|
||||
let event_exhibit_id = null;
|
||||
if (param_slug_event_exhibit_id) {
|
||||
event_exhibit_id = param_slug_event_exhibit_id;
|
||||
} else if (data.url.searchParams.get('event_exhibit_id')) {
|
||||
event_exhibit_id = data.url.searchParams.get('event_exhibit_id');
|
||||
} else {
|
||||
console.log(`The slct__event_exhibit_id was not found in the data.params.slug or data.url!!!`);
|
||||
return false;
|
||||
}
|
||||
|
||||
// let exhibit_id = data.params.slug;
|
||||
// let load_event_exhibit_obj = events_func.handle_load_ae_obj_id__exhibit({api_cfg: data.ae_api, exhibit_id: exhibit_id, try_cache: false});
|
||||
// console.log(`load_event_exhibit_obj = `, load_event_exhibit_obj);
|
||||
data.ae_slct.event_exhibit_id = event_exhibit_id;
|
||||
|
||||
let load_event_exhibit_obj = events_func.handle_load_ae_obj_id__exhibit({api_cfg: data.ae_api, exhibit_id: event_exhibit_id, try_cache: false});
|
||||
|
||||
data.ae_slct.event_exhibit_obj = await load_event_exhibit_obj;
|
||||
|
||||
let load_event_exhibit_tracking_obj_li = events_func.handle_load_ae_obj_li__exhibit_tracking({api_cfg: data.ae_api, exhibit_id: event_exhibit_id, try_cache: false});
|
||||
console.log(`load_event_exhibit_tracking_obj_li = `, load_event_exhibit_tracking_obj_li);
|
||||
|
||||
data.ae_slct.event_exhibit_tracking_obj_li = load_event_exhibit_tracking_obj_li;
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
@@ -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