summaryrefslogtreecommitdiff
path: root/internal/server/api/api.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/server/api/api.go')
-rw-r--r--internal/server/api/api.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/internal/server/api/api.go b/internal/server/api/api.go
index a19e4dc..4a3c24a 100644
--- a/internal/server/api/api.go
+++ b/internal/server/api/api.go
@@ -82,9 +82,15 @@ func SendMessage(ctx context.Context, sess *session.Session, request *packet.Sen
return &ErrInternalError
}
- return NetworkPropagate(ctx, sess, frequency.NetworkID, &packet.MessagesInfo{
+ return NetworkPropagateWithFilter(ctx, sess, frequency.NetworkID, &packet.MessagesInfo{
Messages: []data.Message{message},
RemovedMessages: nil,
+ }, func(userId snowflake.ID) (pass bool) {
+ if frequency.Perms != packet.PermNoAccess {
+ return true
+ }
+ isAdmin, _ := IsNetworkAdmin(ctx, queries, userId, frequency.NetworkID)
+ return isAdmin
})
}