feat(go): M6.6.1 — QR payment popup modal on /adults and /juniors #33
Reference in New Issue
Block a user
Delete Branch "feat/go-m6-6-1-payment-qr-modal"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
<a href=/qr>Pay/Pay-All links with<button type="button" class="pay-btn" data-*>elements on/adultsand/juniors#qrModalmarkup to both templates; toggled via.activeclass (same convention as#memberModalfrom M6.5)payment-qr.jsIIFE module: event-delegated click on.pay-btn, builds SPD message (Name: MM/YYYY), sets#qrImg.srcto/qr?…, opens modal; Esc closes it; coexists withmember-detail.js#qrModal { display:none; }+.active { display:flex; }CSS rules (content rules were already present from M6.1)qrHref/qrHrefAlltemplate helpers fromrender.gohtml_handler_test.go: assert modal IDs, script tag,data-bank-account, no barehref=/qrTest plan
make go-build go-test go-lint— all green ✅:8080/adults: click Pay →#qrModalopens with title, account, amount, message, QR image; tab stays on/adultsPay All→ modal shows+-joinedMM/YYYY+MM/YYYYmessage[close]and Esc close the modal/juniorssame checks; member-detail[i]modal still works alongsideSPD*1.0*ACC:…payload correct🤖 Generated with Claude Code
- GET /qr: Czech QR Platba PNG; ports Python qr_code() exactly (account validation, amount clamping, * stripping, SPD format) - GET /sync-bank: Fio sync → infer → cache flush with captured log - GET+POST /flush-cache: form + action, shows deleted count - GET /version: JSON alias of /api/version (Python parity) - FlushCache() added to membership.Sources; wired through api.Handler - web.ActionHandlers{BankSync} closure-based dep injection for sync - New dep: github.com/skip2/go-qrcode - TestQRBuildSPD (9 cases), TestServeQR, TestServeFlushCache{GET,POST}, TestServeSync, TestServeVersion added Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>