[bugfix] Fix account roles (#1542)

* Change account role from string to object

* Update tests

* small fixes + swagger docs

---------

Co-authored-by: zowhoey <11893985+zowhoey@users.noreply.github.com>
This commit is contained in:
tobi
2023-02-20 17:00:44 +01:00
committed by GitHub
parent b6143c9ab8
commit e8a04b7ce1
10 changed files with 160 additions and 73 deletions

View File

@@ -96,8 +96,7 @@ type Account struct {
EnableRSS bool `json:"enable_rss,omitempty"`
// Role of the account on this instance.
// Omitted for remote accounts.
// example: user
Role AccountRole `json:"role,omitempty"`
Role *AccountRole `json:"role,omitempty"`
}
// AccountCreateRequest models account creation parameters.
@@ -215,13 +214,19 @@ type AccountDeleteRequest struct {
// AccountRole models the role of an account.
//
// swagger:enum accountRole
// swagger:model accountRole
type AccountRole struct {
Name AccountRoleName `json:"name"`
}
// AccountRoleName represent the name of the role of an account.
//
// swagger:type string
type AccountRole string
type AccountRoleName string
const (
AccountRoleUser AccountRole = "user" // Standard user
AccountRoleModerator AccountRole = "moderator" // Moderator privileges
AccountRoleAdmin AccountRole = "admin" // Instance admin
AccountRoleUnknown AccountRole = "" // We don't know / remote account
AccountRoleUser AccountRoleName = "user" // Standard user
AccountRoleModerator AccountRoleName = "moderator" // Moderator privileges
AccountRoleAdmin AccountRoleName = "admin" // Instance admin
AccountRoleUnknown AccountRoleName = "" // We don't know / remote account
)