-
6c89fea118
feat(backend): update scheduling handlers

popertotsandSisyphus
2026-06-18 16:26:39 +01:00
-
6ff35a5cc7
feat(backend): update portfolio images handler

popertotsandSisyphus
2026-06-18 16:26:37 +01:00
-
aeab289be9
feat(backend): add payment discount preview and status tests

popertotsandSisyphus
2026-06-18 16:26:34 +01:00
-
3cb5a3e360
feat(backend): add loyalty and refund features

popertotsandSisyphus
2026-06-18 16:26:32 +01:00
-
31cc3ef5c3
feat(backend): update payments handlers and service

popertotsandSisyphus
2026-06-18 16:26:29 +01:00
-
81e2005114
feat(backend): update notifications handler

popertotsandSisyphus
2026-06-18 16:26:27 +01:00
-
e1f51420f7
feat(backend): add booking dedup, deposit tests and test main

popertotsandSisyphus
2026-06-18 16:26:24 +01:00
-
c805fea7df
feat(backend): update reservations

popertotsandSisyphus
2026-06-18 16:26:22 +01:00
-
2493137c39
feat(backend): update bookings tests

popertotsandSisyphus
2026-06-18 16:26:21 +01:00
-
493e2ae76f
feat(backend): update bookings core handlers

popertotsandSisyphus
2026-06-18 16:26:18 +01:00
-
032a6dedf7
feat(backend): update admin reserve handler

popertotsandSisyphus
2026-06-18 16:26:17 +01:00
-
3582965492
feat(backend): update admin settings and test infrastructure

popertotsandSisyphus
2026-06-18 16:26:12 +01:00
-
f689202984
feat(backend): update admin custom services handler

popertotsandSisyphus
2026-06-18 16:26:11 +01:00
-
7ef3f6dcf7
feat(backend): update admin discount campaigns handler

popertotsandSisyphus
2026-06-18 16:26:09 +01:00
-
b253ab9732
feat(backend): update rate limiting middleware

popertotsandSisyphus
2026-06-18 16:26:06 +01:00
-
b6a23f8889
feat(backend): update local auth handler and tests

popertotsandSisyphus
2026-06-18 16:26:05 +01:00
-
37e1069404
feat(backend): update auth middleware

popertotsandSisyphus
2026-06-18 16:26:02 +01:00
-
b5c1eef8c2
feat(backend): update JWT auth implementation and tests

popertotsandSisyphus
2026-06-18 16:26:00 +01:00
-
2d0071c453
feat(backend): update DB layer with tests

popertotsandSisyphus
2026-06-18 16:25:57 +01:00
-
982eb64098
deps(backend): update Go module dependencies

popertotsandSisyphus
2026-06-18 16:25:47 +01:00
-
6ace9abab8
feat(frontend): add deposit and payment warnings to cancel modal

popertotsandSisyphus
2026-06-15 23:19:39 +01:00
-
e46df47a8f
fix(backend): delete admin_notifications before booking hard-delete

popertotsandSisyphus
2026-06-15 23:19:35 +01:00
-
4cacb3461b
feat(frontend): apply Playfair Display heading to login page

popertotsandSisyphus
2026-06-15 22:07:01 +01:00
-
a72a806248
feat(frontend): refine prices page layout and card styling

popertotsandSisyphus
2026-06-15 21:45:16 +01:00
-
799510c934
feat(frontend): apply Playfair Display heading to admin, schedule, and today pages

popertotsandSisyphus
2026-06-15 21:45:12 +01:00
-
7e1a2bdf9b
feat(frontend): redesign schedule page with grouped card layout

popertotsandSisyphus
2026-06-15 21:27:39 +01:00
-
af73afe401
feat(frontend): add Playfair Display heading font to layout and pages

popertotsandSisyphus
2026-06-15 21:27:34 +01:00
-
2574baf099
feat(backend): fetch standard and custom services in bookings list

popertotsandSisyphus
2026-06-15 21:27:29 +01:00
-
597a527d44
docs: update manuals for daily summary, per_page cap, and testing patterns

popertotsandSisyphus
2026-06-15 20:27:52 +01:00
-
bf90b0fa42
feat(frontend): add done-for-day summary card to CurrentAppointment, fix schedule z-index

popertotsandSisyphus
2026-06-15 20:27:47 +01:00
-
459adf7001
feat(backend): increase per_page cap to 500 in bookings list handler

popertotsandSisyphus
2026-06-15 20:27:41 +01:00
-
2b942a48bd
feat(backend): add done-for-day summary with DailySummary, week aggregation, exceptional hours support

popertotsandSisyphus
2026-06-15 20:27:36 +01:00
-
6c27a44302
docs: update documentation for custom services feature

popertotsandSisyphus
2026-06-15 17:02:57 +01:00
-
867f86978b
feat(frontend): integrate custom services across booking flow and routes

popertotsandSisyphus
2026-06-15 16:58:37 +01:00
-
8f8bf83b64
feat(frontend): add custom services management UI components

popertotsandSisyphus
2026-06-15 16:58:28 +01:00
-
c62e8322b5
test(backend): add comprehensive test suite for custom services feature

popertotsandSisyphus
2026-06-15 16:58:19 +01:00
-
ad0af39237
feat(backend): integrate custom services across booking, payment, scheduling, today, and user modules

popertotsandSisyphus
2026-06-15 16:58:10 +01:00
-
ede0873c08
feat(backend): implement custom services CRUD handlers

popertotsandSisyphus
2026-06-15 16:58:01 +01:00
-
3eaa59343f
feat(db): add custom_services and booking_custom_services tables

popertotsandSisyphus
2026-06-15 16:57:51 +01:00
-
baecc9c8ea
chore: add custom_services and booking_custom_services to test DB cleanup lists

popertotsandSisyphus
2026-06-15 16:57:42 +01:00
-
d77f330bda
chore: commit pending changes before custom services implementation
popertots
2026-06-13 11:27:47 +01:00
-
45814a4040
feat: implement portfolio carousel with swipe/nav, FLIP close button, 250ms slide

popertotsandSisyphus
2026-06-13 10:41:00 +01:00
-
18eaa00479
refactor(frontend): migrate email fields to EmailInput component

popertotsandSisyphus
2026-06-12 10:51:07 +01:00
-
1cadbbe968
feat(frontend): add EmailInput component with validation

popertotsandSisyphus
2026-06-12 10:51:01 +01:00
-
6902eabf47
feat(backend): add idempotency key cleanup scheduler

popertotsandSisyphus
2026-06-12 10:50:54 +01:00
-
3c447a5c33
fix(backend): address gift card review findings

popertotsandSisyphus
2026-06-12 10:50:49 +01:00
-
e7fd9c89eb
style(backend): lowercase error messages across handlers

popertotsandSisyphus
2026-06-12 10:50:43 +01:00
-
b36d8aded8
test(backend): add phone injection-security tests

popertotsandSisyphus
2026-06-12 10:50:39 +01:00
-
5f0248540f
feat(backend): add email validator package

popertotsandSisyphus
2026-06-12 10:50:34 +01:00
-
834c0f1da0
chore: remove Go test binary artifacts

popertotsandSisyphus
2026-06-11 22:08:34 +01:00
-
ceb33f7b3a
chore(obsidian): update workspace state

popertotsandSisyphus
2026-06-11 22:08:33 +01:00
-
181c58147d
docs: add Gift Card Terms, Privacy Policy, Terms, and Testing Architecture

popertotsandSisyphus
2026-06-11 22:08:32 +01:00
-
c1fc1a2314
docs: rewrite README and all Obsidian documentation to match current state

popertotsandSisyphus
2026-06-11 22:08:31 +01:00
-
e7634ba187
feat(frontend): add email check and gift card support to booking flow

popertotsandSisyphus
2026-06-11 22:08:28 +01:00
-
7a459a3986
feat(frontend): add gift card management UI and payment modal updates

popertotsandSisyphus
2026-06-11 22:08:27 +01:00
-
1be82986a5
feat(frontend): add PhoneInput component with UK validation

popertotsandSisyphus
2026-06-11 22:08:26 +01:00
-
8fd42867a4
feat(db): add gift card tables, audit log, expired balances, and VAT functions

popertotsandSisyphus
2026-06-11 22:08:25 +01:00
-
56d91ba4ef
chore(tests): add advisory locks and statement parser for test infrastructure

popertotsandSisyphus
2026-06-11 22:08:23 +01:00
-
6de0371e1d
feat(user): add email check endpoint for registered user detection

popertotsandSisyphus
2026-06-11 22:08:22 +01:00
-
b750b3c203
feat(scheduling): add gift card expiry and idle account cleanup

popertotsandSisyphus
2026-06-11 22:08:21 +01:00
-
44895a3697
feat(admin): add business settings API and routing for gift card config

popertotsandSisyphus
2026-06-11 22:08:21 +01:00
-
30ded0bb95
feat(payments): add gift card system v2 with management, expiry, inventory, audit log

popertotsandSisyphus
2026-06-11 22:08:18 +01:00
-
6756723c60
saved cards store
popertots
2026-06-07 12:38:22 +01:00
-
75cca8b158
fixes
popertots
2026-06-06 15:25:58 +01:00
-
59e7dd9fdc
fixes
popertots
2026-06-06 15:23:10 +01:00
-
9c6eeeb426
Fixes
popertots
2026-06-06 15:18:37 +01:00
-
b274d2c47b
fixes for giftcards and phone input
popertots
2026-06-06 15:11:01 +01:00
-
4e174a6123
Fixes for giftcards and phone input
popertots
2026-06-06 15:10:48 +01:00
-
5258f90b06
Add giftcard management
popertots
2026-06-06 14:26:42 +01:00
-
310e6aaa80
Add giftcard management
popertots
2026-06-06 14:26:33 +01:00
-
44c9d423ec
fix: restore cardNum definition in addCard
popertots
2026-06-05 21:15:05 +01:00
-
d2dea38b01
fix: replace crypto.randomUUID with generateIdempotencyKey
popertots
2026-06-05 21:11:47 +01:00
-
883fd3076a
fix: disable pay button unless full valid card is entered
popertots
2026-06-05 21:07:13 +01:00
-
0d4a74bd4a
feat: caret preservation and Luhn validation in card inputs
popertots
2026-06-05 21:05:36 +01:00
-
fd41ca2920
chore: add catch-all for Go test binaries in .gitignore
popertots
2026-06-05 16:37:37 +01:00
-
f4a6033715
feat: financial data retention & aggregation system
popertots
2026-06-05 16:36:46 +01:00
-
06efdfdac0
chore(obsidian): update workspace state

popertotsandSisyphus
2026-06-05 15:40:51 +01:00
-
69420298bd
feat(frontend): add booking stats summary section to GDPR page

popertotsandSisyphus
2026-06-05 15:40:46 +01:00
-
5cc3e25a2c
fix(db): update FK constraints to SET NULL and expand delete_user anonymization

popertotsandSisyphus
2026-06-05 15:40:43 +01:00
-
f88854e5c2
feat(scheduling): add expired loyalty cleanup and extend guest anonymization

popertotsandSisyphus
2026-06-05 15:40:38 +01:00
-
6cc65341a0
docs: update README and Obsidian docs with GDPR compliance system

popertotsandSisyphus
2026-06-05 12:13:34 +01:00
-
36ad38f670
feat(frontend): add /gdpr page with PDF export and JSON download

popertotsandSisyphus
2026-06-05 12:13:07 +01:00
-
b460c2ec20
fix(scheduling): extend AnonymizeStaleGuestAccounts with additional field scrubbing

popertotsandSisyphus
2026-06-05 12:12:38 +01:00
-
40840c0458
feat(user): extend DeleteAccountHandler with external system scrubbing

popertotsandSisyphus
2026-06-05 12:12:12 +01:00
-
f58a4bd2a9
feat(user): add async GDPR export endpoint with 12h cache and 25 tests

popertotsandSisyphus
2026-06-05 12:11:45 +01:00
-
bf0571fe84
fix(db): anonymize_user NOT NULL constraint fix + export_all_user_data extensions

popertotsandSisyphus
2026-06-05 12:11:17 +01:00
-
6d4bc4d637
feat(loyalty-discount): implement loyalty and discount system
popertots
2026-06-04 23:13:02 +01:00
-
79b23a3cf7
New Plan
popertots
2026-06-04 21:12:21 +01:00
-
5e02b90fdc
docs: update route references for /admin/notifications move

popertotsandSisyphus
2026-06-04 20:09:30 +01:00
-
f379e5c09a
refactor(routes): move notifications to /admin/notifications, remove /manage

popertotsandSisyphus
2026-06-04 20:08:34 +01:00
-
24b1823a5d
fix(routes): add pre-hydration auth redirects to all protected pages

popertotsandSisyphus
2026-06-04 20:04:54 +01:00
-
413b28b759
fix(login): redirect authenticated users before hydration

popertotsandSisyphus
2026-06-04 19:50:53 +01:00
-
ae1bc0f91a
fix(login): redirect authenticated users before page render

popertotsandSisyphus
2026-06-04 19:48:08 +01:00
-
f083da6345
fix(login): redirect authenticated users away from login page

popertotsandSisyphus
2026-06-04 19:46:36 +01:00
-
8a1da43131
test(auth): add referral code case-insensitivity tests

popertotsandSisyphus
2026-06-04 12:05:20 +01:00
-
7d1b90a5be
fix(auth): lowercase referral code before validation and lookup

popertotsandSisyphus
2026-06-04 12:02:39 +01:00
-
486173c5ff
fix(user): profile handler and main router updates

popertotsandSisyphus
2026-06-04 01:09:57 +01:00
-
068ae79462
chore: update dev seed data with loyalty stamps

popertotsandSisyphus
2026-06-04 01:09:33 +01:00
-
db78b5186e
chore: update S3 dev configuration with AWS SDK v2

popertotsandSisyphus
2026-06-04 01:09:15 +01:00
-
490274f466
docs: update README and Obsidian documentation

popertotsandSisyphus
2026-06-04 01:09:00 +01:00