hobokenchicken
|
89f8381e2d
|
added features and fixes
|
2026-07-02 15:34:00 +00:00 |
|
root
|
f4437c5e1d
|
feat: add SMTP email support and fix profile/permissions bugs
|
2026-06-30 19:29:08 +00:00 |
|
hobokenchicken
|
215f931311
|
fix: wire permission checks into message/channel handlers
- Add CheckChannelPermission to permissions.Checker (layers channel overrides on top of role permissions)
- Refactor requireChannelAccess to accept required permission bitmap
- Message Create checks SEND_MESSAGES; List/Search check VIEW_CHANNEL
- BulkDelete uses Checker.CheckPermission for MANAGE_MESSAGES
- Channel handler List filters out channels user cannot view
- Remove dead checkPermission method from message handler
- Fix frontend avatar upload: parse response URL, call updateProfile
|
2026-06-30 13:47:08 -04:00 |
|
hobokenchicken
|
2caedc172b
|
fix: resolve 7 audit issues - webhook tokens, cookie security, avatar save, TUI fallback, dead code, valkey default
|
2026-06-30 13:29:34 -04:00 |
|
hobokenchicken
|
bd260183ef
|
feat(phase2): channel permission overrides + expanded role UI + audit log cleanup
|
2026-06-30 10:28:03 -04:00 |
|
hobokenchicken
|
d3b7f39b9e
|
fix(build): make build-web works; gofmt all Go files
|
2026-06-30 10:01:11 -04:00 |
|
hobokenchicken
|
30e159cbdb
|
sync: phase 1 backend + frontend from server
|
2026-06-30 09:26:03 -04:00 |
|
hobokenchicken
|
af1de3d140
|
Phase 6: Permissions, Push, WebAuthn scaffolding
Backend:
- internal/permissions/permissions.go: permission bitflags (VIEW_CHANNEL through SHARE_SCREEN)
- internal/permissions/checker.go: permission checker with role aggregation
- internal/middleware/permission.go: RequirePermission middleware
- internal/push/handlers.go: push subscription CRUD, VAPID key endpoint, SendPush
- internal/auth/webauthn.go: WebAuthn passkey scaffolding (begin/finish endpoints)
- internal/db/db.go: is_default on roles, push_subscriptions table, webauthn_credentials table
- go.mod: added webpush-go, go-webauthn dependencies
Frontend:
- stores/role.ts: Zustand store for role management
- RoleManager.tsx: role CRUD with permission checkboxes
- MemberRoleAssign.tsx: assign roles to members
- App.tsx: /servers/:serverId/roles route
|
2026-06-28 17:53:44 -04:00 |
|