The badge view ID now correctly renders a badge! This took way too long. So many $ were removed and things missed.
This commit is contained in:
@@ -96,6 +96,14 @@ export async function load_ae_obj_id__event({
|
||||
log_lvl
|
||||
});
|
||||
}
|
||||
if (inc_template_li) {
|
||||
ae_promises.load__event_obj.event_badge_template_obj_li =
|
||||
await load_ae_obj_li__event_badge_template({
|
||||
api_cfg,
|
||||
event_id,
|
||||
log_lvl
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
return ae_promises.load__event_obj;
|
||||
|
||||
@@ -197,6 +197,9 @@ export interface Badge_template {
|
||||
id: string;
|
||||
// id_random: string;
|
||||
|
||||
event_badge_template_id?: null | string;
|
||||
event_badge_template_id_random?: null | string;
|
||||
|
||||
event_id: string;
|
||||
event_id_random: string;
|
||||
|
||||
@@ -824,7 +827,7 @@ export class MySubClassedDexie extends Dexie {
|
||||
enable, hide, priority, sort, group, notes, created_on, updated_on`,
|
||||
|
||||
badge_template: `
|
||||
id, event_id, event_id_random`,
|
||||
id, id_random, event_badge_template_id, badge_template_id, event_id, event_id_random`,
|
||||
|
||||
device: `
|
||||
id, id_random, event_device_id_random, event_device_id,
|
||||
|
||||
@@ -58,6 +58,30 @@
|
||||
})
|
||||
);
|
||||
|
||||
let lq__event_badge_template_obj = $derived(
|
||||
liveQuery(async () => {
|
||||
let results = await db_events.badge_template.get($lq__event_badge_obj?.event_badge_template_id ?? ''); // null or undefined does not reset things like '' does
|
||||
|
||||
if (log_lvl) {
|
||||
console.log(
|
||||
`*** LiveQuery: lq__event_badge_template_obj *** event_badge_template_id=${
|
||||
$lq__event_badge_obj?.event_badge_template_id ?? ''
|
||||
}`,
|
||||
results
|
||||
);
|
||||
}
|
||||
|
||||
// Check if results are different than the current session version stored under $events_slct
|
||||
// if ($events_slct.event_badge_obj && results) {
|
||||
// if (JSON.stringify($events_slct.event_badge_obj) !== JSON.stringify(results)) {
|
||||
// $events_slct.event_badge_obj = { ...results };
|
||||
// }
|
||||
// }
|
||||
|
||||
return results;
|
||||
})
|
||||
);
|
||||
|
||||
let is_review_mode: boolean = $state(false);
|
||||
|
||||
// *** Functions and Logic
|
||||
@@ -134,6 +158,7 @@
|
||||
{event_badge_id}
|
||||
lq__event_badge_obj={lq__event_badge_obj}
|
||||
{is_review_mode}
|
||||
lq__event_badge_template_obj={lq__event_badge_template_obj}
|
||||
/>
|
||||
{/if}
|
||||
{:else}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
event_id: string;
|
||||
event_badge_id: string;
|
||||
lq__event_badge_obj?: any;
|
||||
lq__event_badge_template_obj?: any;
|
||||
update_status?: string;
|
||||
update_complete?: boolean;
|
||||
is_review_mode?: boolean;
|
||||
@@ -13,6 +14,7 @@
|
||||
event_id,
|
||||
event_badge_id,
|
||||
lq__event_badge_obj,
|
||||
lq__event_badge_template_obj,
|
||||
update_status = $bindable('idle'),
|
||||
update_complete = $bindable(true),
|
||||
is_review_mode = false,
|
||||
@@ -109,7 +111,7 @@
|
||||
$lq__event_badge_obj.affiliations_override ?? $lq__event_badge_obj.affiliations;
|
||||
editable_location_override =
|
||||
$lq__event_badge_obj.location_override ?? $lq__event_badge_obj.location;
|
||||
editable_allow_tracking = lq__event_badge_obj.allow_tracking ?? null;
|
||||
editable_allow_tracking = $lq__event_badge_obj.allow_tracking ?? null;
|
||||
editable_email = $lq__event_badge_obj.email ?? null;
|
||||
editable_badge_type_code = $lq__event_badge_obj.badge_type_code ?? null;
|
||||
|
||||
@@ -175,35 +177,6 @@
|
||||
|
||||
// WARNING: This does not currently take into account the total lengths of the strings, only the longest part when split by spaces. This help with wrapping in the tighter spaces of the badge.
|
||||
|
||||
let lq__event_badge_template_obj = $derived(
|
||||
liveQuery(async () => {
|
||||
let results = await db_events.badge_template.get($lq__event_badge_obj?.event_badge_id ?? ''); // null or undefined does not reset things like '' does
|
||||
|
||||
// Check if results are different than the current session version stored under $events_slct
|
||||
// if ($events_slct.event_badge_obj && results) {
|
||||
// if (JSON.stringify($events_slct.event_badge_obj) !== JSON.stringify(results)) {
|
||||
// $events_slct.event_badge_obj = { ...results };
|
||||
// }
|
||||
// }
|
||||
|
||||
return results;
|
||||
})
|
||||
);
|
||||
|
||||
// let lq__event_badge_template_obj: any = $state(null);
|
||||
|
||||
// $effect(() => {
|
||||
// if ($lq__event_badge_obj?.event_badge_template_id) {
|
||||
// const sub = liveQuery(() =>
|
||||
// db_events.badge_template.get($lq__event_badge_obj.event_badge_template_id)
|
||||
// ).subscribe((val) => {
|
||||
// lq__event_badge_template_obj = val;
|
||||
// });
|
||||
// return () => sub.unsubscribe();
|
||||
// } else {
|
||||
// lq__event_badge_template_obj = null;
|
||||
// }
|
||||
// });
|
||||
|
||||
$effect(() => {
|
||||
// Re-calculate font sizes based on potentially edited values
|
||||
@@ -370,8 +343,8 @@
|
||||
}
|
||||
|
||||
async function handle_save_changes() {
|
||||
if (!$lq__event_badge_obj?.event_badge_id_random) {
|
||||
console.error('Cannot save changes: event_badge_id_random is missing.');
|
||||
if (!$lq__event_badge_obj?.event_badge_id) {
|
||||
console.error('Cannot save changes: event_badge_id is missing.');
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -431,7 +404,7 @@
|
||||
await events_func.update_ae_obj__event_badge({
|
||||
api_cfg: $ae_api,
|
||||
event_id: event_id,
|
||||
event_badge_id: $lq__event_badge_obj.event_badge_id_random,
|
||||
event_badge_id: $lq__event_badge_obj.event_badge_id,
|
||||
data_kv: data_to_update,
|
||||
log_lvl: log_lvl
|
||||
});
|
||||
@@ -476,12 +449,12 @@
|
||||
<!--
|
||||
onclick={() => {
|
||||
$slct.event_badge_obj = event_badge_obj;
|
||||
$slct.event_badge_id = $lq__event_badge_obj.event_badge_id_random;
|
||||
$slct.event_badge_id = $lq__event_badge_obj.event_badge_id;
|
||||
slct_this_badge = true
|
||||
}}
|
||||
onkeypress={() => {
|
||||
// event_badge_obj = event_badge_obj;
|
||||
// event_badge_id = $lq__event_badge_obj.event_badge_id_random;
|
||||
// event_badge_id = $lq__event_badge_obj.event_badge_id;
|
||||
// slct_this_badge = true
|
||||
}} -->
|
||||
|
||||
@@ -506,6 +479,15 @@ onkeypress={() => {
|
||||
max-w-[8.5in] overflow-visible
|
||||
"
|
||||
>
|
||||
|
||||
<!-- <pre>
|
||||
{$lq__event_badge_obj?.event_id}
|
||||
{$lq__event_badge_obj?.event_badge_id}
|
||||
{$lq__event_badge_obj?.event_badge_template_id}
|
||||
{$lq__event_badge_template_obj?.id}
|
||||
{$lq__event_badge_template_obj?.name}
|
||||
</pre> -->
|
||||
|
||||
{#if $lq__event_badge_obj && $lq__event_badge_template_obj}
|
||||
<!-- max-w-lg -->
|
||||
<!-- *** badge_front section start *** -->
|
||||
@@ -849,7 +831,6 @@ onkeypress={() => {
|
||||
class="badge_footer
|
||||
{editable_badge_type_code?.toLowerCase()}
|
||||
justify-self-end
|
||||
min-h-[.25in]
|
||||
max-h-[.50in]
|
||||
max-w-full
|
||||
m-0 p-0
|
||||
@@ -907,7 +888,7 @@ onkeypress={() => {
|
||||
Generating...
|
||||
{:then result}
|
||||
{#if initial_loading_promise}
|
||||
<img class="mecard_qr qr_code" style="" src="/event/qr_image/event_badge_obj_{$lq__event_badge_obj.event_badge_id_random}?qr_filename=attendee_qr.png" alt="missing QR code">
|
||||
<img class="mecard_qr qr_code" style="" src="/event/qr_image/event_badge_obj_{$lq__event_badge_obj.event_badge_id}?qr_filename=attendee_qr.png" alt="missing QR code">
|
||||
{/if}
|
||||
{/await}
|
||||
</div>
|
||||
@@ -917,7 +898,7 @@ onkeypress={() => {
|
||||
Generating...
|
||||
{:then result}
|
||||
{#if initial_loading_promise}
|
||||
<img class="qr_code mecard_qr" style="" src="/event/qr_image/event_badge_mecard_{$lq__event_badge_obj.event_badge_id_random}?qr_filename=attendee_qr.png" alt="missing QR code">
|
||||
<img class="qr_code mecard_qr" style="" src="/event/qr_image/event_badge_mecard_{$lq__event_badge_obj.event_badge_id}?qr_filename=attendee_qr.png" alt="missing QR code">
|
||||
{/if}
|
||||
{/await} -->
|
||||
|
||||
@@ -939,7 +920,7 @@ onkeypress={() => {
|
||||
hide_qr ? (hide_qr = false) : (hide_qr = true);
|
||||
}}
|
||||
/>
|
||||
<!-- src="{$cfg.api['base_url']}/qr/{$ae_loc.account_id}/{$lq__event_badge_obj.event_badge_id_random}?filename=qr_{$ae_loc.account_id}_{$lq__event_badge_obj.event_badge_id_random}_mecard.png" -->
|
||||
<!-- src="{$cfg.api['base_url']}/qr/{$ae_loc.account_id}/{$lq__event_badge_obj.event_badge_id}?filename=qr_{$ae_loc.account_id}_{$lq__event_badge_obj.event_badge_id}_mecard.png" -->
|
||||
{/if}
|
||||
{/await}
|
||||
{/if}
|
||||
@@ -954,7 +935,6 @@ onkeypress={() => {
|
||||
class="badge_back
|
||||
flex flex-col gap-1
|
||||
items-center justify-between
|
||||
min-h-[6.0in]
|
||||
max-h-[6.0in]
|
||||
w-[4in]
|
||||
max-w-fit
|
||||
@@ -979,7 +959,6 @@ onkeypress={() => {
|
||||
<div
|
||||
class="badge_back_header
|
||||
image
|
||||
min-h-[1.00in]
|
||||
max-h-[1.00in]
|
||||
max-w-full
|
||||
m-0 p-0
|
||||
@@ -1189,7 +1168,7 @@ onkeypress={() => {
|
||||
z-10
|
||||
"
|
||||
>
|
||||
{$lq__event_badge_obj.event_badge_id_random}
|
||||
{$lq__event_badge_obj.event_badge_id}
|
||||
</span>
|
||||
</div>
|
||||
{#await qr_data_url}
|
||||
@@ -1222,7 +1201,7 @@ onkeypress={() => {
|
||||
italic
|
||||
"
|
||||
>
|
||||
{#if allow_tracking}
|
||||
{#if $lq__event_badge_obj.allow_tracking}
|
||||
<p>
|
||||
This was <strong>allowed</strong> at the time your badge
|
||||
was printed. You may opt-out at anytime.
|
||||
@@ -1413,6 +1392,9 @@ onkeypress={() => {
|
||||
<!-- End if for $lq__event_badge_template_obj -->
|
||||
</section>
|
||||
|
||||
|
||||
<div>
|
||||
<h1 class="text-lg font-bold mt-4">Debug Information</h1>
|
||||
<pre
|
||||
class="whitespace-pre-wrap break-words text-xs max-h-32 overflow-auto p-2 bg-surface-200 border border-surface-300 rounded
|
||||
mt-4
|
||||
@@ -1427,4 +1409,5 @@ onkeypress={() => {
|
||||
print:hidden
|
||||
">
|
||||
{JSON.stringify($lq__event_badge_template_obj, null, 2)}
|
||||
</pre>
|
||||
</pre>
|
||||
</div>
|
||||
@@ -63,6 +63,7 @@ export async function load({ params, parent, url }) {
|
||||
// ae_acct.slct.event_device_obj_li = load_event_obj.event_device_obj_li;
|
||||
ae_acct.slct.event_location_obj_li = load_event_obj.event_location_obj_li;
|
||||
ae_acct.slct.event_session_obj_li = load_event_obj.event_session_obj_li;
|
||||
ae_acct.slct.badge_template_obj_li = load_event_obj.event_badge_template_obj_li;
|
||||
}
|
||||
|
||||
// WARNING: Precaution against shared data between sites and sessions.
|
||||
|
||||
Reference in New Issue
Block a user