[feature] Serialize local account role via API, and show it via web view (#1045)

* [feature] Add 'role' field to api serialization of local accounts

* [chore] Add a bit of license text while I'm here

* [frogend] render account role on same line as username in web view of profile

* style tweaking on role badges, general profile header layout

* profile stats wrapping

* don't render standard 'user' role on web view

Co-authored-by: f0x <f0x@cthu.lu>
This commit is contained in:
tobi
2022-11-15 10:19:32 +01:00
committed by GitHub
parent 4cd00d546c
commit a39a664525
10 changed files with 167 additions and 44 deletions

View File

@@ -94,6 +94,10 @@ type Account struct {
CustomCSS string `json:"custom_css,omitempty"`
// Account has enabled RSS feed.
EnableRSS bool `json:"enable_rss,omitempty"`
// Role of the account on this instance.
// Omitted for remote accounts.
// example: user
Role AccountRole `json:"role,omitempty"`
}
// AccountCreateRequest models account creation parameters.
@@ -208,3 +212,16 @@ type AccountDeleteRequest struct {
// Can be the ID of the account owner, or the ID of an admin account.
DeleteOriginID string `form:"-" json:"-" xml:"-"`
}
// AccountRole models the role of an account.
//
// swagger:enum accountRole
// swagger:type string
type AccountRole 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
)