Commit Graph

381 Commits

Author SHA1 Message Date
DanielS
304d25f202 feat(ui): add animated horizontal process steps 2026-08-06 17:21:42 +02:00
DanielS
a2305319e1 feat(ui): add scroll indicator component 2026-08-06 17:21:36 +02:00
DanielS
70ed890702 feat(ui): add reactive oklch ascii shader background 2026-08-06 17:21:32 +02:00
DanielS
b978a6bc64 feat(auth): add 10-minute inactivity auto-logout
All checks were successful
Staging Build / build (push) Successful in 2m59s
2026-07-28 11:50:27 +02:00
DanielS
a43d598f54 chore(merge): integrate origin/staging into local staging
All checks were successful
Staging Build / build (push) Successful in 2m57s
Resolved conflict in customer-accordion-list.tsx by keeping
the per-device flattening (DeviceCard) implementation.
2026-07-23 09:47:37 +02:00
DanielS
0e4495292d feat(my-customers): flatten orders into per-device cards
- split orders by device_name into FlattenedDevice entries
- strip device prefixes from product and module names
- render one DeviceCard per Kasse in the customer accordion
- add targeted upgrade URL with orderId, customer_id, device_id
- wizard starts at step 3 in upgrade mode with locked customer
- mark existing licensed modules as read-only with badge
2026-07-23 09:45:14 +02:00
DanielS
c6190b34a8 fix(shop): display Backoffice for Zusatzleistung group in OrderSuccessPage
All checks were successful
Staging Build / build (push) Successful in 2m51s
2026-07-22 17:36:51 +02:00
DanielS
623dab192b feat(shop): display device_name for items in CustomerAccordionList
Some checks failed
Staging Build / build (push) Has been cancelled
2026-07-22 17:36:11 +02:00
DanielS
c5285dc907 feat(shop): list order items individually by device name in orders view
All checks were successful
Staging Build / build (push) Successful in 2m54s
2026-07-22 17:32:02 +02:00
DanielS
6cd5eb917c feat(shop): display company address instead of id in partner selection
All checks were successful
Staging Build / build (push) Successful in 2m53s
2026-07-22 17:25:08 +02:00
DanielS
061147701e style(shop): rename linked fee section to Backoffice in StepSummary
Some checks failed
Staging Build / build (push) Has been cancelled
2026-07-22 17:23:49 +02:00
DanielS
dfdb5d9024 feat(shop): reset customer on partner change and enforce customer selection
Some checks failed
Staging Build / build (push) Has been cancelled
2026-07-22 17:23:19 +02:00
DanielS
66d5d8fc98 fix(shop): map correct orderSnapshot and labels in InvoicePDF and routes
All checks were successful
Staging Build / build (push) Successful in 2m51s
2026-07-22 17:20:16 +02:00
DanielS
f130f24c86 feat(shop): move linked fee configuration to product level
All checks were successful
Staging Build / build (push) Successful in 2m52s
2026-07-22 17:04:38 +02:00
DanielS
06cba405f3 fix(shop): resolve postgrest join ambiguity for product_modules
All checks were successful
Staging Build / build (push) Successful in 2m54s
2026-07-22 15:27:38 +02:00
DanielS
b8820f59b7 style(shop): resolve merge conflict in license lookup placeholder
All checks were successful
Staging Build / build (push) Successful in 2m59s
2026-07-22 15:12:36 +02:00
DanielS
1c31918768 feat(shop): add dynamic linked fees to modules 2026-07-22 15:09:05 +02:00
DanielS
086a893e19 docs(dashboard): clarify calendar popup info for workshops and partners
All checks were successful
Staging Build / build (push) Successful in 2m50s
Update calendar modal description to specify workshops (online/onsite),
trainings, and Blue Wednesday partner registrations.
2026-07-22 12:54:26 +02:00
DanielS
61adf76da5 feat(dashboard): align quick access buttons in 3 columns with calendar popup
All checks were successful
Staging Build / build (push) Successful in 2m59s
Convert quick access grid to 3 columns and open in-app dialog modal for calendar button.
2026-07-22 12:45:15 +02:00
DanielS
2497063e82 fix(dashboard): import Calendar icon in HomeClient
All checks were successful
Staging Build / build (push) Successful in 2m59s
Add missing Calendar import from lucide-react.
2026-07-22 12:39:53 +02:00
DanielS
0a60526800 feat(dashboard): mark calendar button as planned in quick access
Some checks failed
Staging Build / build (push) Failing after 31s
Add planned status badge to appointment calendar quick access button.
2026-07-22 12:33:04 +02:00
DanielS
fef1ccd0f5 style(wizard): rename CAS references to CASPOS
All checks were successful
Staging Build / build (push) Successful in 2m49s
Replace all occurrences of 'CAS-Lizenz' and related strings
with 'CASPOS' across license-lookup-panel, step-billing,
and order-wizard. Update mock key to 995502-00 (GASTRO edition).
2026-07-22 11:07:30 +02:00
DanielS
3200784c51 style(wizard): remove aligned spacing in license-lookup-panel
All checks were successful
Staging Build / build (push) Successful in 2m57s
Update mock license keys to CASPOS format and normalize
object property alignment to standard single-space style.
2026-07-22 09:13:31 +02:00
DanielS
acd8d6575c chore(wizard): update demo license keys in lookup panel 2026-07-21 11:32:30 +02:00
DanielS
3db3606f17 style(wizard): align partner and customer list color scheme
All checks were successful
Staging Build / build (push) Successful in 2m53s
2026-07-21 11:17:56 +02:00
DanielS
f1877cf893 feat(wizard): unify partner and customer selection list UI
All checks were successful
Staging Build / build (push) Successful in 2m57s
2026-07-21 11:07:48 +02:00
DanielS
ac60995c1d feat(wizard): add search filter to admin partner select
All checks were successful
Staging Build / build (push) Successful in 2m56s
2026-07-21 10:58:17 +02:00
DanielS
07208fcad0 feat(wizard): add partner filter and pagination to customer step
All checks were successful
Staging Build / build (push) Successful in 2m52s
2026-07-21 10:43:21 +02:00
DanielS
8b4fd5f02e feat(dashboard): add customer accordion view and extension flow
All checks were successful
Staging Build / build (push) Successful in 3m1s
2026-07-21 08:43:00 +02:00
DanielS
86b63ce77e feat(checkout): implement wizard and admin actions
All checks were successful
Staging Build / build (push) Successful in 3m11s
2026-07-20 23:18:40 +02:00
DanielS
2b372be228 feat(orders): support active status and update RLS
Some checks failed
Staging Build / build (push) Has been cancelled
2026-07-20 23:00:02 +02:00
DanielS
13f647409f fix(sync): query customers by vowels to avoid crash
All checks were successful
Staging Build / build (push) Successful in 2m56s
2026-07-15 23:50:13 +02:00
DanielS
5d3eed874c feat(sync): add customer synchronization from lic server
All checks were successful
Staging Build / build (push) Successful in 3m0s
2026-07-15 22:48:10 +02:00
DanielS
3a090b7664 docs: document licserver management api
All checks were successful
Staging Build / build (push) Successful in 2m59s
2026-07-15 16:18:30 +02:00
DanielS
e2d92a031f feat(licserver): add partner customers proxy API 2026-07-15 16:14:31 +02:00
DanielS
6b9023c871 feat(wizard): connect license lookup panel to real lic server api endpoint
All checks were successful
Staging Build / build (push) Successful in 2m48s
2026-07-15 01:01:01 +02:00
DanielS
f783a98392 docs: add lic server api spec and index in second brain 2026-07-15 00:58:13 +02:00
DanielS
d5593900fb feat(cron): add automated sync endpoint and vercel cron configuration for partners
All checks were successful
Staging Build / build (push) Successful in 2m57s
2026-07-15 00:30:13 +02:00
DanielS
92eb7454dc docs: update database schema documentation in second brain and grand functions 2026-07-15 00:27:03 +02:00
DanielS
cb4787e595 style(admin): replace browser alert and confirm with dialog modals
All checks were successful
Staging Build / build (push) Successful in 2m55s
2026-07-15 00:21:38 +02:00
DanielS
3fb80e6404 feat(admin): add manual partner import from lic server
All checks were successful
Staging Build / build (push) Successful in 2m48s
2026-07-15 00:07:31 +02:00
DanielS
a318a5e225 fix(admin): wrap access check in try-catch to prevent loader hanging
All checks were successful
Staging Build / build (push) Successful in 2m57s
2026-07-14 23:52:04 +02:00
DanielS
1b49348577 style: simplify home page layout and fix navbar link 2026-07-14 23:44:21 +02:00
DanielS
fb61f5f396 style: remove text gradients and centered badges 2026-07-14 23:42:28 +02:00
DanielS
7119383139 fix(security): harden licserver config access controls
All checks were successful
Staging Build / build (push) Successful in 2m50s
- Add auth guard to getLicServerConfig() - unauthenticated callers
  now receive null config instead of DB values
- Remove non-existent 'superadmin' role from saveLicServerConfig()
  check (only 'admin' exists per project schema)
- New migration: restrict settings table WRITE to admins only
  (previously any authenticated user could overwrite licserver_api_key)
2026-07-14 17:35:12 +02:00
DanielS
fa93e060c2 feat(admin): LicServer config manageable via admin settings UI
Some checks failed
Staging Build / build (push) Has been cancelled
- Migration: add licserver_base_url/api_key cols to settings table
- New: lib/actions/licserver-config.ts (read/write/test server actions)
- Updated: proxy routes read config from DB with env-var fallback
- Updated: admin/einstellungen adds LicServer card with URL + API key
  input, show/hide toggle, Save and Connection Test buttons
2026-07-14 17:30:37 +02:00
DanielS
be4e9204a3 feat(licserver): add partner API proxy routes and types
All checks were successful
Staging Build / build (push) Successful in 2m54s
- New: lib/types/licserver.ts (PartnerDto, paged result, problem)
- New: app/api/licserver/partners/route.ts (GET search/list)
- New: app/api/licserver/partners/[id]/route.ts (GET by UUID)
- Updated: .env.example with LICSERVER_BASE_URL + LICSERVER_API_KEY

Auth-guarded via Supabase session. API key is server-side only.
Upstream: http://192.168.178.174:9980 (internal container network)
2026-07-14 17:24:00 +02:00
DanielS
2e30974aed fix(wizard): give summary sidebar equal 2/6 col width
All checks were successful
Staging Build / build (push) Successful in 2m34s
2026-07-14 16:55:45 +02:00
DanielS
c30505de05 feat(wizard): expand step 3 container to max-w-screen-2xl
Some checks failed
Staging Build / build (push) Failing after 16m18s
2026-07-14 15:24:29 +02:00
DanielS
5a2afd8600 feat(wizard): widen license lookup panel to 2 cols
All checks were successful
Staging Build / build (push) Successful in 2m55s
2026-07-14 14:35:00 +02:00