diff options
| author | Kyren223 <Kyren223@proton.me> | 2024-12-01 16:13:46 +0200 |
|---|---|---|
| committer | Kyren223 <Kyren223@proton.me> | 2024-12-01 16:13:46 +0200 |
| commit | bfc65f7f37f7badcffe36063d1a294dbb7e417ec (patch) | |
| tree | 2c4dd7f38beef25b9a6cb1ebc9be868982d0e34b /internal/server/api/helpers.go | |
| parent | e00a17a2f483fc00d5daecb3426c29a6c8598492 (diff) | |
Minor improvements to server code
Diffstat (limited to 'internal/server/api/helpers.go')
| -rw-r--r-- | internal/server/api/helpers.go | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/internal/server/api/helpers.go b/internal/server/api/helpers.go index 909e232..52c8649 100644 --- a/internal/server/api/helpers.go +++ b/internal/server/api/helpers.go @@ -1,7 +1,11 @@ package api import ( + "context" "strings" + + "github.com/kyren223/eko/internal/data" + "github.com/kyren223/eko/pkg/snowflake" ) const hex = "0123456789abcdefABCDEF" @@ -23,3 +27,16 @@ func isValidHexColor(color string) (bool, string) { return true, "" } + +func IsNetworkAdmin(ctx context.Context, queries *data.Queries, userId, networkId snowflake.ID) (bool, error) { + userNetwork, err := queries.GetUserNetwork(ctx, data.GetUserNetworkParams{ + UserID: userId, + NetworkID: networkId, + }) + if err != nil { + return false, err + } + + isAdmin := userNetwork.IsAdmin && userNetwork.IsMember && !userNetwork.IsBanned + return isAdmin, nil +} |
