diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-10 19:37:21 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-10 19:37:21 +0200 |
| commit | f6e23930da2900c43a5389a2e7d1e38d8221a76f (patch) | |
| tree | 3352cc0d8c0819d5cc58fdf987ed39f87a30a34b /internal/config | |
| parent | 1fc24f9affed5128702e4de80572cac8c82d399e (diff) | |
Refactor server-side config singleton reads
Diffstat (limited to 'internal/config')
| -rw-r--r-- | internal/config/server.go | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/internal/config/server.go b/internal/config/server.go index 13ebde8..97c9a9d 100644 --- a/internal/config/server.go +++ b/internal/config/server.go @@ -145,10 +145,14 @@ func newDefaultServerConfig() *ServerConfig { } } -// ServerUserPermissions retrieves the permission set of a given user. -func ServerUserPermissions(userName string) (permissions []string, err error) { - permissions = Server.Permissions.Default - if p, ok := Server.Permissions.Users[userName]; ok { +// UserPermissions retrieves the permission set of a given user. +func (c *ServerConfig) UserPermissions(userName string) (permissions []string, err error) { + if c == nil { + return nil, errors.New("missing server config") + } + + permissions = c.Permissions.Default + if p, ok := c.Permissions.Users[userName]; ok { permissions = p } if len(permissions) == 0 { @@ -156,3 +160,11 @@ func ServerUserPermissions(userName string) (permissions []string, err error) { } return } + +// ServerUserPermissions retrieves the permission set of a given user. +func ServerUserPermissions(userName string) (permissions []string, err error) { + if Server == nil { + return nil, errors.New("missing server config") + } + return Server.UserPermissions(userName) +} |
