diff --git a/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_print_controls.svelte b/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_print_controls.svelte index 410dca67..acd17dcb 100644 --- a/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_print_controls.svelte +++ b/src/routes/events/[event_id]/(badges)/badges/[badge_id]/ae_comp__badge_print_controls.svelte @@ -22,7 +22,7 @@ import { ae_api, ae_loc } from '$lib/stores/ae_stores'; import { events_func } from '$lib/ae_events_functions'; import { browser } from '$app/environment'; - import { Check, ChevronDown, Eye, EyeOff, Info, LoaderCircle, Pencil, Printer, RotateCcw, X } from '@lucide/svelte'; + import { Check, ChevronDown, ChevronRight, Eye, EyeOff, Info, LoaderCircle, Pencil, Printer, RotateCcw, X } from '@lucide/svelte'; interface Props { event_id: string; event_badge_id: string; @@ -98,6 +98,22 @@ // — used here to allow reprinting an already-printed badge when global edit mode is active. let is_global_edit_mode = $derived($ae_loc.edit_mode === true); + // --- Section collapse state --- + // Attendee fields start open (primary use); staff starts closed to save space. + // Toggling one collapses the other (auto-collapse, same pattern as launcher sections). + let attendee_open = $state(true); + let staff_open = $state(false); + + function toggle_section(which: 'attendee' | 'staff') { + if (which === 'attendee') { + attendee_open = !attendee_open; + if (attendee_open) staff_open = false; + } else { + staff_open = !staff_open; + if (staff_open) attendee_open = false; + } + } + // --- Print --- let print_count = $derived($lq__event_badge_obj?.print_count ?? 0); let is_printed = $derived(print_count >= 1); @@ -405,7 +421,7 @@ key === 'name' ? font_size_name : key === 'title' ? font_size_title : key === 'affiliations' ? font_size_affiliations : font_size_location} -
Already printed {print_count}× @@ -541,15 +575,31 @@
Attendee info
+ + + +Name
{#if get_display('full_name_override', 'full_name')} @@ -608,7 +658,7 @@Title
{#if get_display('professional_title_override', 'professional_title')} @@ -661,7 +711,7 @@Affiliations
{#if get_display('affiliations_override', 'affiliations')} @@ -714,7 +764,7 @@Location
{#if get_display('location_override', 'location')} @@ -767,7 +817,7 @@Lead Scanning
@@ -851,7 +901,7 @@
Pronouns
{#if get_display('pronouns_override', 'pronouns')} @@ -898,19 +948,33 @@