bruno
|
97d6ad7a91
|
feat: administration — users, roles, stats, audit
FlowDeck CI / test (push) Failing after 4s
FlowDeck CI / docker (push) Has been skipped
DB:
- login_history table (user_id, ip, user_agent, timestamp)
- Migration v2.5: alter users + create login_history
Auth:
- Premier utilisateur = admin (is_admin=1)
- _log_login() après chaque connexion (register, local-login, OAuth)
Backend (app/routers/admin.py):
- admin_required middleware (vérifie is_admin)
- GET /api/admin/users → liste users + stats par user
- POST /api/admin/users → créer user
- PUT /api/admin/users/:id → modifier (name, email, password, admin, active)
- DELETE /api/admin/users/:id → supprimer + cascade
- GET /api/admin/stats → totaux globaux
- GET /api/admin/audit → historique login
Frontend (settings.html):
- Nav Admin visible seulement si userIsAdmin
- Users & Roles: stats cards, create/edit/delete users, table complète
- Audit Log: historique login avec date, IP, user-agent
- CSS professionnel: table-wrap, admin-table, stat-card, role-badge, status-dot
|
2026-07-13 12:59:36 -04:00 |
|