[API] Add Restricted Field to User (#14630)

* Expose Restricted field for User

* Add Option to Change Restricted on User via adminEditUser API

* Add test who change restricted & test if it changed it ...

* make generate-swagger

Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
6543
2021-02-18 09:25:35 +01:00
committed by GitHub
parent ce0346448f
commit 8d5c795cc4
6 changed files with 36 additions and 6 deletions

View File

@ -17,12 +17,13 @@ func ToUser(user *models.User, signed, authed bool) *api.User {
return nil
}
result := &api.User{
ID: user.ID,
UserName: user.Name,
FullName: markup.Sanitize(user.FullName),
Email: user.GetEmail(),
AvatarURL: user.AvatarLink(),
Created: user.CreatedUnix.AsTime(),
ID: user.ID,
UserName: user.Name,
FullName: markup.Sanitize(user.FullName),
Email: user.GetEmail(),
AvatarURL: user.AvatarLink(),
Created: user.CreatedUnix.AsTime(),
Restricted: user.IsRestricted,
}
// hide primary email if API caller is anonymous or user keep email private
if signed && (!user.KeepEmailPrivate || authed) {

View File

@ -41,4 +41,5 @@ type EditUserOption struct {
MaxRepoCreation *int `json:"max_repo_creation"`
ProhibitLogin *bool `json:"prohibit_login"`
AllowCreateOrganization *bool `json:"allow_create_organization"`
Restricted *bool `json:"restricted"`
}

View File

@ -30,6 +30,8 @@ type User struct {
LastLogin time.Time `json:"last_login,omitempty"`
// swagger:strfmt date-time
Created time.Time `json:"created,omitempty"`
// Is user restricted
Restricted bool `json:"restricted"`
}
// MarshalJSON implements the json.Marshaler interface for User, adding field(s) for backward compatibility