CampgroundTickets/app
Hank 049f433930 Fix ice bag count + default ice check-in to 1 bag
The form sends payment_ice as a descriptive label, e.g. "One Ice
ticket good for one bag per day (3 total bags)". The old parser pulled
the first number ("3") and treated it as 3 tickets, then multiplied by
3 bags/ticket → 9 bags for one ice ticket (18 for two). New
iceBagsFromPayment reads the "(N total bags)" the label states
directly, with worded-count and numeric dollar/count fallbacks for
forward compatibility. 1 ice → 3 bags, 2 → 6. 5 new tests.

Scanner: Ice mode now defaults the check-in count to 1 (a bag at a
time) instead of all remaining bags; staff can bump it up.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 07:40:05 +00:00
..
app Fix ice bag count + default ice check-in to 1 bag 2026-07-20 07:40:05 +00:00
assets Add bear + QR app icon 2026-07-09 16:42:35 +00:00
components Add event report dashboard, slide-out drawer, in-app comp portal + creator tracking 2026-07-13 17:30:18 +00:00
lib Vendor webhooks, free kids through 12, multi-origin lookup CORS 2026-07-16 05:13:07 +00:00
public Add bear + QR app icon 2026-07-09 16:42:35 +00:00
scripts Initial Camp Scan ticketing system 2026-07-08 03:47:59 +00:00
app.json Add bear + QR app icon 2026-07-09 16:42:35 +00:00
package-lock.json Fix blank web page: align react and react-dom versions 2026-07-08 05:37:45 +00:00
package.json Fix blank web page: align react and react-dom versions 2026-07-08 05:37:45 +00:00
tsconfig.json Initial Camp Scan ticketing system 2026-07-08 03:47:59 +00:00