From 51cfcbf2d681dacf35f590ddd762ba7048792943 Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Mon, 2 Mar 2026 16:06:51 -0500 Subject: [PATCH] =?UTF-8?q?feat(badges):=20wire=20duplex=20field=20?= =?UTF-8?q?=E2=80=94=20hide=20badge=20back=20for=20single-sided=20template?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add duplex + style_href to properties_to_save so they're cached in IDB - Derive show_badge_back: true when duplex is null/unset (safe default for existing templates) or 1; false when duplex=0 (single-sided, e.g. Axonius NYC using Zebra ZC10L PVC cards) - Wrap entire badge_back section in {#if show_badge_back} so the DOM node is fully removed rather than just hidden — cleaner than a CSS class approach Co-Authored-By: Claude Sonnet 4.6 --- src/lib/ae_events/ae_events__event_badge_template.ts | 2 ++ .../badges/[badge_id]/ae_comp__badge_obj_view.svelte | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/src/lib/ae_events/ae_events__event_badge_template.ts b/src/lib/ae_events/ae_events__event_badge_template.ts index f368d9d9..8ddca427 100644 --- a/src/lib/ae_events/ae_events__event_badge_template.ts +++ b/src/lib/ae_events/ae_events__event_badge_template.ts @@ -35,6 +35,8 @@ export const properties_to_save = [ 'show_qr_back', 'layout', 'style_filename', + 'style_href', + 'duplex', 'enable', 'hide', 'priority', diff --git a/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte b/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte index c0101dc6..cb459e83 100644 --- a/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte +++ b/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_obj_view.svelte @@ -78,6 +78,12 @@ } }); + // Show the badge back section when duplex=1 (or when duplex is not yet set, as a safe default). + // duplex=0/false → single-sided print (e.g. Zebra ZC10L PVC cards); back section is hidden. + let show_badge_back = $derived( + $lq__event_badge_template_obj?.duplex == null || !!$lq__event_badge_template_obj?.duplex + ); + // *** Set initial variables $effect(() => { $slct.event_badge_id = event_badge_id; // $page['page_for']['event_badge_id']; @@ -1066,6 +1072,8 @@ onkeypress={() => { + + {#if show_badge_back}