kb privilegije po rolama
# GanttForce — Privilegije po rolama
**Verzija:** April 2026
**Namena:** Interni KB — referenca za tim i onboarding
---
## Pregled rola
GanttForce ima 5 rola sa različitim nivoima pristupa:
| Rola | Opis | Pristup |
|------|------|---------|
| **Platform Superadmin** | Ogitive interni admin | Svi workspace-ovi |
| **Admin** | Vlasnik workspace-a | Jedan workspace, pun pristup |
| **Editor** | Planer u timu | Jedan workspace, CRUD entiteta |
| **Member** | Zaposleni u timu | Read-only + sopstveni odmori |
| **Viewer** | Eksterni klijent | Read-only, ograničen scope |
---
## Gantt prikaz
| Akcija | Superadmin | Admin | Editor | Member | Viewer |
|--------|-----------|-------|--------|--------|--------|
| Vidi Gantt | ✅ | ✅ | ✅ | ✅ | ✅ |
| Vidi Workforce panel | ✅ | ✅ | ✅ | ✅ | ❌ |
| Vidi imena ljudi | ✅ | ✅ | ✅ | ✅ | ❌* |
| Vidi expertise badges | ✅ | ✅ | ✅ | ✅ | ❌* |
| Vidi caption projekata | ✅ | ✅ | ✅ | ✅ | ✅* |
| Vidi sve klijente | ✅ | ✅ | ✅ | ✅ | ❌ (samo dodeljeni) |
| Edit mode | ✅ | ✅ | ✅ | ❌ | ❌ |
| Resize traka | ✅ | ✅ | ✅ | ❌ | ❌ |
| Klik na traku (edit) | ✅ | ✅ | ✅ | ❌ | ❌ |
*\* Viewer vidljivost se konfiguriše po nalogu (show_people_names, show_expertise_badges, show_captions)*
---
## Header — Island zona
Svaka rola vidi drugačiji island u gornjem desnon uglu:
| Rola | Šta vidi u islandu |
|------|-------------------|
| **Platform Superadmin** | Edit mode status + Force release |
| **Admin** | Edit mode status + Create Project + Control Panel + Exit Edit |
| **Editor** | Edit mode status + Create Project + Control Panel + Exit Edit + Vacation |
| **Member** | Samo Vacation dugme |
| **Viewer** | Ništa — island se ne prikazuje |
---
## Control Panel
Pristup Control Panel-u imaju samo Admin i Editor.
| Sekcija | Admin | Editor |
|---------|-------|--------|
| Projects | ✅ CRUD | ✅ CRUD |
| Clients | ✅ CRUD | ✅ CRUD |
| Project Types | ✅ CRUD | ✅ CRUD |
| Expertise | ✅ CRUD | ✅ CRUD |
| Team (People) | ✅ CRUD | ✅ CRUD |
| Workspace Users | ✅ Pun pristup | ✅ Ograničen* |
| Backup & Restore | ✅ | ✅ |
| Audit Log | ✅ | ✅ |
| **Public Holidays — Import** | ✅ | ❌ |
| **Public Holidays — Reset** | ✅ | ❌ |
| **Public Holidays — Delete single** | ✅ | ❌ |
*\* Editor može da kreira Viewer naloge, ne može da briše*
---
## Workspace Users — Tabovi u CP
| Tab | Admin | Editor |
|-----|-------|--------|
| **Admin** | Vidi (read-only) | Vidi (read-only) |
| **Editors** | Pun CRUD | Vidi |
| **Members** | Pun CRUD | Vidi |
| **Viewers** | Pun CRUD | Može kreirati, ne može brisati |
---
## Vacation stranica (/vacation)
| Akcija | Admin | Editor | Member | Viewer |
|--------|-------|--------|--------|--------|
| Pristup stranici | ✅ | ✅ | ✅ | ❌ |
| Vidi ceo tim | ✅ | ✅ | ✅ | — |
| Bookira sopstveni odmor | ✅ | ✅ | ✅ | — |
| Add vacation (za bilo koga) | ✅ | ✅ | ❌ | — |
| My holidays modal | ✅ | ✅ | ✅ | — |
| Company holidays modal | ✅ | ✅ | ❌ | — |
| Bulk Confirm/Skip praznici | ✅ | ❌ | ❌ | — |
| Odobrava državne praznike | ✅ | ❌ | ❌ | — |
---
## Državni praznici — Holiday Management
Ovo je **admin-only** funkcionalnost:
- **Import kalendara** (po zemlji, 3 godine unapred) — samo Admin
- **Reset/brisanje svih uvezenih praznika** — samo Admin
- **Brisanje pojedinačnog praznika** — samo Admin
- **Bulk Confirm/Skip za ceo tim** — samo Admin
Editor može da vidi praznike ali ne može da ih menja.
---
## Platform Dashboard (/dashboard)
Dostupan samo za **Platform Superadmin**:
- Pregled svih workspace-ova
- Kreiranje novih workspace-ova
- Force release edit lock-a
- Rename i brisanje workspace-a
---
## Napomene o sigurnosti
- Viewer filtriranje po klijentu je enforced na **DB nivou** (RLS), ne samo na frontendu
- Member, Viewer i Editor ne mogu da menjaju državne praznike ni na frontend-u ni na DB nivou (RLS)
- Edit mode je ekskluzivan — samo jedan korisnik istovremeno po workspace-u
- Platform Superadmin nikad nije u `people` tabeli ni jednog tenanta