This website requires JavaScript.
ae4a8429c7
fix: rewrite auth middleware to prevent global login lock for partners and admins
DanielS
2026-07-09 23:16:22 +02:00
58f946490c
docs: document is_admin recursion bypass in grand functions
DanielS
2026-07-09 23:15:20 +02:00
5cd78854e3
db: fix infinite RLS recursion on users table causing admin lockout
DanielS
2026-07-09 23:15:16 +02:00
fb9b522e74
chore: clean up order-wizard layout text and spacing
DanielS
2026-07-09 23:08:10 +02:00
c7a4b2a9c9
docs: document asynchronous post-processing and postgres user role triggers in grand functions
DanielS
2026-07-09 23:06:08 +02:00
5b03de6b7e
db: add strict rls policy to protect user roles from self-escalation
DanielS
2026-07-09 23:06:03 +02:00
100ad254cb
perf: decouple pdf and mail generation from synchronous checkout flow
DanielS
2026-07-09 23:06:00 +02:00
d122c957eb
docs: align grand functions perfectly with B2B quotation terminology and type mappings
DanielS
2026-07-09 23:02:36 +02:00
a93fb975c0
docs: finalize request terminology updates and clean up license transforms
DanielS
2026-07-09 22:58:35 +02:00
21c4aa859e
fix: rename invoice terminology to request and quotation confirmation across pdf and mail services
DanielS
2026-07-09 22:58:29 +02:00
20f7d5a05a
fix: resolve syntax error in invoice-pdf.tsx
DanielS
2026-07-09 22:57:31 +02:00
2b92626bf9
feat: add multi-device basket loop and add-another-device button to wizard
DanielS
2026-07-09 22:48:31 +02:00
8bd47905b0
fix: resolve bracket syntax error in order-wizard.tsx
DanielS
2026-07-09 22:24:53 +02:00
309dc33acd
docs: document sub-product disable rules and no bottom-up reset in grand functions
DanielS
2026-07-09 22:22:07 +02:00
d1cc6b5d5f
fix: disable incompatible sub-products in wizard and prevent bottom-up reset
DanielS
2026-07-09 22:22:04 +02:00
13981970f5
docs: document frontend top-down cascade and visibility guarantee
DanielS
2026-07-09 22:04:14 +02:00
8dd5fd3f44
fix: enforce top-down state cascade and prevent base product hiding
DanielS
2026-07-09 22:04:10 +02:00
ac4416f7ab
docs: document test environment and scenarios in grand functions
DanielS
2026-07-09 21:56:18 +02:00
992e726406
test: add unit tests for frontend top-down auto-reset and backend split logic
DanielS
2026-07-09 21:56:13 +02:00
988625ba42
chore: install vitest and configure test environment
DanielS
2026-07-09 21:56:10 +02:00
0621a0be16
docs: document checkout server action details in grand functions
DanielS
2026-07-09 21:53:45 +02:00
926650d3b6
feat: implement checkout server action with idempotency guard and split
DanielS
2026-07-09 21:53:42 +02:00
cb12a6ced4
docs: document post-processing and layout differentiation in grand functions
DanielS
2026-07-09 21:51:26 +02:00
66039eb4cf
feat: implement pdf generation service based on jsonb snapshots
DanielS
2026-07-09 21:51:23 +02:00
5eef6c76ef
docs: document checkout split API and payload in grand functions
DanielS
2026-07-09 21:50:44 +02:00
f71fc7f88d
feat: create checkout API route with checkout split logic
DanielS
2026-07-09 21:50:42 +02:00
60e64c689d
feat: implement wizard top-down state management and auto-reset
DanielS
2026-07-09 21:49:53 +02:00
bd7d5dd1b2
db: create core schema for products, categories, global rules and orders
DanielS
2026-07-09 21:49:50 +02:00
54b9dea70f
docs: restructure agentsspec into grand-functions skill
DanielS
2026-07-09 21:49:47 +02:00
6b35917a06
feat(category): add resets_others option
DanielS
2026-07-09 17:27:16 +02:00
567d1f226b
feat(admin): add product dependencies and clean up labels
DanielS
2026-07-09 16:12:57 +02:00
215da5f25b
style(admin): align sidebar link style
DanielS
2026-07-09 15:57:37 +02:00
d05274700a
feat(admin): extend wysiwyg live editor
DanielS
2026-07-09 15:52:47 +02:00
16917bcbdc
feat(admin): add wysiwyg editor for order wizard
DanielS
2026-07-09 15:39:14 +02:00
915d3b1b2f
Revert "feat: support product quantity and separate steps"
DanielS
2026-07-09 15:19:38 +02:00
4ef21ea144
feat: support product quantity and separate steps
DanielS
2026-07-09 15:10:21 +02:00
071e669b71
feat(categories): add branch visibility selection
DanielS
2026-07-09 14:26:56 +02:00
07c7d8c656
feat(categories): allow disabling preselection
DanielS
2026-07-09 14:10:25 +02:00
bffaca1d63
feat(orders): add rejected status to order schema and admin table views
DanielS
2026-07-08 10:13:21 +02:00
cc7445e4c5
feat(multiselect): support multi-select categories and free items limits in category config and order wizard
DanielS
2026-07-07 16:56:24 +02:00
00d1be3e4f
fix(order-wizard): pass selectedCompanyId when creating end customer as admin
DanielS
2026-07-07 13:17:15 +02:00
98c030cd82
fix(end-customers): allow admin to create end customers without company_id
DanielS
2026-07-07 12:32:11 +02:00
8e91b3e810
fix(email): remove duplicate pdf download button
DanielS
2026-07-07 10:30:34 +02:00
dd5d1295a7
fix(invoice): update subtitle from Software Solutions to Die Kasse
DanielS
2026-07-07 10:30:21 +02:00
cce9812bbc
fix(pdf): add gap and minWidth to prevent label-value collision in total rows
DanielS
2026-07-07 09:09:14 +02:00
e00acac626
fix(pdf): widen total container and reduce font to prevent label-value collision
DanielS
2026-07-07 09:00:54 +02:00
0ec1319753
style(mail): humanize email templates and remove corporate boilerplates
DanielS
2026-07-07 00:39:06 +02:00
057012e09f
chore(supabase): remove unused pos_modules and licenses tables
DanielS
2026-07-07 00:23:54 +02:00
2246bdf2be
refactor(shop): extract wizard validation and email templates into helpers
DanielS
2026-07-06 23:15:11 +02:00
3a73083494
fix(supabase): remove invalid public.partners reference in migration
DanielS
2026-07-06 22:57:18 +02:00
73b6d19703
docs(skills): add commit-work skill with frontmatter
DanielS
2026-07-06 22:47:14 +02:00
2d44dd4c58
security: fix 6 critical RLS vulns, SHA-256 hash, DSGVO [GELÖSCHT], completed status
DanielS
2026-07-06 22:39:05 +02:00
3d938d29fc
feat: add skills (pdf-invoice-generator, idempotency-guard, b2b-mail-dispatcher)
DanielS
2026-07-06 22:33:59 +02:00
c07871eac4
feat: add agent skills (rls, wizard, snapshot, gdpr, next15, uiux, humanizer)
DanielS
2026-07-06 22:27:42 +02:00
a64b6790c6
feat: Add partner account settings page under /account-kunden
DanielS
2026-07-04 21:06:46 +02:00
060aa97ce5
fix: PDF headers with filename, email download button via protected route
DanielS
2026-07-04 17:50:02 +02:00
80abbfe566
security: replace public PDF URLs with authenticated API route, private bucket
DanielS
2026-07-04 17:43:33 +02:00
28f2285a0e
security: fix private storage buckets, api access, and admin RLS bypasses
DanielS
2026-07-04 17:36:51 +02:00
205acb803f
docs: update funktionen.md with direct order-to-company mapping
DanielS
2026-07-04 17:32:52 +02:00
5bad959b13
fix: change default internal rewrite and server resolution host to kong
DanielS
2026-07-04 17:19:09 +02:00
f82f08ffd0
fix: resolve internal kong url to configurable public supabase url
DanielS
2026-07-04 17:15:09 +02:00
6a0e882cc9
feat: enforce company authorization on order details and success pages
DanielS
2026-07-04 16:44:53 +02:00
9c50ea8368
fix: resolve internal supabase-kong urls to external domain
DanielS
2026-07-04 16:38:27 +02:00
305af64fd6
feat: assign orders to companies directly and support admin reassignment
DanielS
2026-07-04 16:08:31 +02:00
72852a6b08
docs: add project documentation funktionen.md
DanielS
2026-07-04 15:43:45 +02:00
32c2842dbd
feat: enable company-wide order viewing and editing
DanielS
2026-07-04 15:41:48 +02:00
149eae59c9
feat: restrict order creation to users assigned to a company
DanielS
2026-07-04 15:33:44 +02:00
5f65f890ee
feat: link end customers directly to companies
DanielS
2026-07-04 15:17:04 +02:00
d3bf4b1db9
feat(admin): set default partner_id to companyId in end-customer dialog
DanielS
2026-07-03 16:22:59 +02:00
553ec7eadd
fix(admin-orders): make PDF download/view always available by generating PDF dynamically on the fly if missing
DanielS
2026-07-03 15:14:34 +02:00
4c6fde326b
refactor(order): change order prefix from BE to AE for Anfragenummer
DanielS
2026-07-03 14:58:43 +02:00
23be8bcb52
refactor(wording): change 'Angebot' to 'Anfrage' in client views and order emails
DanielS
2026-07-03 14:55:56 +02:00
5c28fbdea5
feat(wizard): support OR logic for requirements (at least one dependency satisfies requirements)
DanielS
2026-07-03 14:21:15 +02:00
90ec351d96
fix(db-tools): resolve REINDEX transaction error by executing directly via pg client, and dynamically support all database tables in integrity dashboard
DanielS
2026-07-03 14:01:27 +02:00
38651037bc
fix(users): refactor user admin actions to return status objects instead of throwing to prevent production error obfuscation
DanielS
2026-07-03 13:51:00 +02:00
12d06e46ad
feat(email): improve password reset emails, onboarding templates, and handle server action errors without production obfuscation
DanielS
2026-07-03 13:34:43 +02:00
f914e9cdf1
fix(auth): restore middleware, fix setup redirect loop, and add next.config rewrites proxying Supabase requests
DanielS
2026-07-03 10:57:22 +02:00
99f859cde3
style(admin): make product table list scrollable with sticky header
DanielS
2026-07-03 10:50:31 +02:00
4f69fd7e44
feat(role): add 'verwaltung' role with gated access to settings and tools
DanielS
2026-07-03 10:10:57 +02:00
ca07dd0079
feat(setup): make isSetupNeeded check more robust using both auth listUsers and db count
DanielS
2026-07-03 10:05:18 +02:00
233b9f135d
feat(setup): remove default admin info@hephex.de automation
DanielS
2026-07-03 09:59:07 +02:00
6dc1b1c00c
feat(setup): add initial setup wizard for admin account and SMTP configuration
DanielS
2026-07-03 09:55:24 +02:00
f5f577ea73
feat(customer): add bank account details support
DanielS
2026-07-03 09:46:47 +02:00
250dd82847
style(home): update Zulip and Wiki card icons to fit their concepts
DanielS
2026-07-03 09:39:14 +02:00
b8420cc1ee
style(home): change license order CTA to inquiry and refine text
DanielS
2026-07-03 09:02:33 +02:00
7a61002ef5
feat(order): add net/tax/gross breakdown for one-time and monthly totals
DanielS
2026-07-03 08:50:28 +02:00
147dab5607
fix: fix overlapping PDF labels and show net tax gross prices in wizard
DanielS
2026-07-03 01:13:16 +02:00
e67695e36e
fix: prevent resolving internal supabase urls to localhost inside docker container
DanielS
2026-07-03 01:04:49 +02:00
728363fa71
feat: hide excluded products and auto-deselect conflicts in wizard
DanielS
2026-07-03 00:52:22 +02:00
4b3ba63e2c
fix: resolve Supabase storage pdf URLs on client and server
DanielS
2026-07-03 00:49:11 +02:00
78a16607f9
feat: allow quote editing for all statuses except completed
DanielS
2026-07-03 00:30:25 +02:00
2bfadb49c8
feat: open wizard directly at software step (step 3) when editing
DanielS
2026-07-03 00:29:22 +02:00
2dcc20eb3a
style: force dark mode globally and remove theme switcher
DanielS
2026-07-03 00:26:37 +02:00
a9e120e681
Merge branch 'staging' of https://gitea.hephex.de/admin/webshop into staging
DanielS
2026-07-03 00:22:51 +02:00
081baf15ee
style: improve accessibility contrast and set default theme to dark
DanielS
2026-07-03 00:22:10 +02:00
e3cdf6683a
feat: implement quote editing for admins and creators
DanielS
2026-07-03 00:22:10 +02:00
d72f0b10db
Kontraste verbessert und Standard-Theme auf Dunkel gesetzt
DanielS
2026-07-03 00:15:54 +02:00
a4414cc0e6
Angebote bearbeiten fuer Admin und Ersteller implementiert
DanielS
2026-07-03 00:03:48 +02:00
023c789baf
feat: add customer search and scrollable list to orderwizard
DanielS
2026-07-01 09:37:30 +02:00
a3498fee66
Merge branch 'staging' of https://gitea.hephex.de/Daniel/webshop into staging
DanielS
2026-07-01 08:41:21 +02:00