All checks were successful
dev - build & deploy naar test / build-and-deploy (push) Successful in 31s
- Migratie 014: site_content (sleutel/waarde, JSONB) voor site-inhoud die zonder release aanpasbaar moet zijn - GET /content (publiek): welkomstwoord, update-melding en widget-uitleg in één antwoord - het inlogscherm toont het welkomstwoord al vóór het inloggen - PUT /admin/content/:key (alleen systeemmanager, nieuwe permissie content.manage): upsert per toegestane sleutel (welcome/announcement/widgetInfo) met maat-limieten - 4 servertests: publiek lezen, upsert door super, 403/401 voor anderen, whitelist/vorm/omvang-validatie Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0149FgUQvuwxKKEdvQGmNngF
11 lines
593 B
SQL
11 lines
593 B
SQL
-- v0.3.83-beta: CMS voor de systeemmanager.
|
|
-- Kleine sleutel/waarde-opslag voor site-inhoud die zonder release aanpasbaar
|
|
-- moet zijn: welkomstwoord (inlogscherm), update-meldingen (banner) en
|
|
-- aanvullende widget-uitleg (galerij). De waarde is JSONB zodat elke sleutel
|
|
-- zijn eigen vorm heeft (bv. { nl, en } of { actief, tekst per taal, id }).
|
|
CREATE TABLE IF NOT EXISTS site_content (
|
|
key TEXT PRIMARY KEY,
|
|
value JSONB NOT NULL DEFAULT '{}'::jsonb,
|
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
|
updated_by BIGINT REFERENCES users(id) ON DELETE SET NULL
|
|
);
|