From 767eb8a339ff82768a3d144cebcadd804ac35b33 Mon Sep 17 00:00:00 2001 From: Dilan Gilluly Date: Wed, 14 Jan 2026 21:41:07 -0500 Subject: [PATCH] (add): rest of search form --- webapp/src/app.html | 2 +- webapp/src/lib/components/SearchHeader.svelte | 163 ++++++++++++ webapp/src/routes/+page.svelte | 3 +- .../src/routes/api/search/tickets/+server.js | 21 ++ webapp/src/routes/search/tickets/+page.svelte | 248 ++++++++++++++++++ 5 files changed, 435 insertions(+), 2 deletions(-) create mode 100644 webapp/src/lib/components/SearchHeader.svelte create mode 100644 webapp/src/routes/search/tickets/+page.svelte diff --git a/webapp/src/app.html b/webapp/src/app.html index 6f21893..14cce6b 100644 --- a/webapp/src/app.html +++ b/webapp/src/app.html @@ -3,7 +3,7 @@ - + %sveltekit.head% diff --git a/webapp/src/lib/components/SearchHeader.svelte b/webapp/src/lib/components/SearchHeader.svelte new file mode 100644 index 0000000..c7883b1 --- /dev/null +++ b/webapp/src/lib/components/SearchHeader.svelte @@ -0,0 +1,163 @@ + + +
+
+
+
+
First Name
+ +
+
+
Last Name
+ +
+
+
Phone Number
+ +
+ +
+
+
+
+ + + + + + +
+
+ +
+
+
+ + diff --git a/webapp/src/routes/+page.svelte b/webapp/src/routes/+page.svelte index 0d22169..f8ce7c3 100644 --- a/webapp/src/routes/+page.svelte +++ b/webapp/src/routes/+page.svelte @@ -17,7 +17,7 @@ current_prefix = {...new_prefix}; } }) - + if (browser) { document.title = `${venue} - Main Menu`; hotkeys.filter = function(event) {return true}; @@ -73,6 +73,7 @@

Admin Mode:

Prefix Editor + Search Tickets Backup/Restore Settings
diff --git a/webapp/src/routes/api/search/tickets/+server.js b/webapp/src/routes/api/search/tickets/+server.js index c09e77c..fde3c61 100644 --- a/webapp/src/routes/api/search/tickets/+server.js +++ b/webapp/src/routes/api/search/tickets/+server.js @@ -10,6 +10,27 @@ export async function GET({ url }) { sPhoneNumber = url.searchParams.get("phone_number") || ""; if (env.TAM3_REMOTE) { + const searchParams = new URLSearchParams({ + api_key: env.TAM3_REMOTE_KEY, + first_name: sFirstName, + last_name: sLastName, + phone_number: sPhoneNumber, + }); + const res = await fetch( + `${env.TAM3_REMOTE}/api/search/tickets/?${searchParams.toString()}`, + ); + if (!res.ok) { + return new Response(JSON.stringify([]), { + status: res.status, + statusText: res.statusText, + }); + } + const data = await res.json(); + return new Response(JSON.stringify(data), { + status: 200, + statusText: "Fetched successfully", + headers: { "Content-Type": "application/json" }, + }); } else { const results = await db .select() diff --git a/webapp/src/routes/search/tickets/+page.svelte b/webapp/src/routes/search/tickets/+page.svelte new file mode 100644 index 0000000..f730084 --- /dev/null +++ b/webapp/src/routes/search/tickets/+page.svelte @@ -0,0 +1,248 @@ + + +

Ticket Search

+ + + + + + + + + + + + + + + {#each current_tickets as ticket, idx} + (current_idx = idx)}> + + + + + + + + + {/each} + +
PrefixTicket IDFirst NameLast NamePhone NumberPreferenceChanged
{ticket.prefix}{ticket.t_id} (ticket.changed = true)} + /> (ticket.changed = true)} + /> (ticket.changed = true)} + />
+ +