nordabiz/utils
Maciej Pienczyn ae70ad326e feat: Add hierarchical role system with delegated permissions
Implements 6-tier role hierarchy:
- ADMIN (100): Full system access
- OFFICE_MANAGER (50): Admin panel without user management
- MANAGER (40): Full company control + user management
- EMPLOYEE (30): Edit company data (with delegated permissions)
- MEMBER (20): Full content access (forum, contacts, chat)
- UNAFFILIATED (10): Public profiles only

Features:
- SystemRole and CompanyRole enums in database.py
- UserCompanyPermissions model for delegation
- New decorators: @role_required(), @company_permission()
- Auto-detection of MANAGER role from KRS data
- Backward compatible with is_admin flag

Migration: 035_add_role_system.sql

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 06:42:39 +01:00
..
__init__.py feat(notifications): Add notifications for releases and announcements 2026-01-27 14:22:44 +01:00
analytics.py refactor(phase1): Extract blueprints for reports, contacts, classifieds, calendar 2026-01-27 10:10:45 +01:00
context_processors.py refactor(phase1): Extract blueprints for reports, contacts, classifieds, calendar 2026-01-27 10:10:45 +01:00
decorators.py feat: Add hierarchical role system with delegated permissions 2026-02-01 06:42:39 +01:00
error_handlers.py refactor(phase1): Extract blueprints for reports, contacts, classifieds, calendar 2026-01-27 10:10:45 +01:00
helpers.py refactor(phase1): Extract blueprints for reports, contacts, classifieds, calendar 2026-01-27 10:10:45 +01:00
markdown.py feat: Add forum search, markdown, user stats, and admin bulk actions 2026-01-31 19:11:29 +01:00
middleware.py refactor(phase1): Extract blueprints for reports, contacts, classifieds, calendar 2026-01-27 10:10:45 +01:00
notifications.py feat: Add forum search, markdown, user stats, and admin bulk actions 2026-01-31 19:11:29 +01:00
permissions.py feat: Add hierarchical role system with delegated permissions 2026-02-01 06:42:39 +01:00