TeamVis Self-Host-Bundle v0.31.0
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
-- ====================================================================
|
||||
-- 0050_employee_extra_fields — Frei definierbare Zusatzangaben
|
||||
-- ====================================================================
|
||||
-- Mitarbeiter können beliebig viele weitere Telefonnummern und private
|
||||
-- Angaben hinterlegen, jeweils ein-/ausblendbar. Statt vieler fester
|
||||
-- Spalten eine JSONB-Liste:
|
||||
-- [{ "id": "f0", "kind": "phone|mobile|email|address|text",
|
||||
-- "label": "Festnetz privat", "value": "...", "visible": true }, …]
|
||||
--
|
||||
-- Sichtbarkeit wird wie bei show_mobile serverseitig im Render/vCard
|
||||
-- gefiltert (visibleExtraFields). Die öffentliche Karte liest seit 0045
|
||||
-- ohnehin per Service-Role — anon braucht die Spalte nicht und soll sie
|
||||
-- (ausgeblendete, ggf. private Werte) auch nicht lesen können.
|
||||
|
||||
alter table public.employees
|
||||
add column if not exists extra_fields jsonb not null default '[]'::jsonb;
|
||||
|
||||
comment on column public.employees.extra_fields is
|
||||
'Frei definierbare Zusatzangaben (weitere Telefonnummern, private Angaben). '
|
||||
'Liste von {id, kind, label, value, visible}. Sichtbarkeit pro Eintrag; '
|
||||
'serverseitige Filterung im Render/vCard. Siehe lib/extra-fields.ts.';
|
||||
|
||||
-- anon darf die Spalte nicht direkt lesen (könnte ausgeblendete/private
|
||||
-- Einträge enthalten). REVOKE auf nicht vorhandenen Grant ist ein No-op.
|
||||
revoke select (extra_fields) on public.employees from anon;
|
||||
Reference in New Issue
Block a user