diff options
Diffstat (limited to 'model/user.go')
-rw-r--r-- | model/user.go | 54 |
1 files changed, 33 insertions, 21 deletions
diff --git a/model/user.go b/model/user.go index 4365f47d2..0ce8e1733 100644 --- a/model/user.go +++ b/model/user.go @@ -28,29 +28,29 @@ const ( type User struct { Id string `json:"id"` - CreateAt int64 `json:"create_at"` - UpdateAt int64 `json:"update_at"` + CreateAt int64 `json:"create_at,omitempty"` + UpdateAt int64 `json:"update_at,omitempty"` DeleteAt int64 `json:"delete_at"` TeamId string `json:"team_id"` Username string `json:"username"` - Password string `json:"password"` - AuthData string `json:"auth_data"` - AuthService string `json:"auth_service"` + Password string `json:"password,omitempty"` + AuthData string `json:"auth_data,omitempty"` + AuthService string `json:"auth_service,omitempty"` Email string `json:"email"` - EmailVerified bool `json:"email_verified"` + EmailVerified bool `json:"email_verified,omitempty"` Nickname string `json:"nickname"` FirstName string `json:"first_name"` LastName string `json:"last_name"` Roles string `json:"roles"` - LastActivityAt int64 `json:"last_activity_at"` - LastPingAt int64 `json:"last_ping_at"` - AllowMarketing bool `json:"allow_marketing"` - Props StringMap `json:"props"` - NotifyProps StringMap `json:"notify_props"` - ThemeProps StringMap `json:"theme_props"` - LastPasswordUpdate int64 `json:"last_password_update"` - LastPictureUpdate int64 `json:"last_picture_update"` - FailedAttempts int `json:"failed_attempts"` + LastActivityAt int64 `json:"last_activity_at,omitempty"` + LastPingAt int64 `json:"last_ping_at,omitempty"` + AllowMarketing bool `json:"allow_marketing,omitempty"` + Props StringMap `json:"props,omitempty"` + NotifyProps StringMap `json:"notify_props,omitempty"` + ThemeProps StringMap `json:"theme_props,omitempty"` + LastPasswordUpdate int64 `json:"last_password_update,omitempty"` + LastPictureUpdate int64 `json:"last_picture_update,omitempty"` + FailedAttempts int `json:"failed_attempts,omitempty"` } // IsValid validates the user and returns an error if it isn't configured @@ -221,17 +221,29 @@ func (u *User) Sanitize(options map[string]bool) { u.FirstName = "" u.LastName = "" } - if len(options) != 0 && !options["skypeid"] { - // TODO - fill in when SkypeId is added to user model - } - if len(options) != 0 && !options["phonenumber"] { - // TODO - fill in when PhoneNumber is added to user model - } if len(options) != 0 && !options["passwordupdate"] { u.LastPasswordUpdate = 0 } } +func (u *User) ClearNonProfileFields() { + u.CreateAt = 0 + u.UpdateAt = 0 + u.Password = "" + u.AuthData = "" + u.AuthService = "" + u.EmailVerified = false + u.LastActivityAt = 0 + u.LastPingAt = 0 + u.AllowMarketing = false + u.Props = StringMap{} + u.NotifyProps = StringMap{} + u.ThemeProps = StringMap{} + u.LastPasswordUpdate = 0 + u.LastPictureUpdate = 0 + u.FailedAttempts = 0 +} + func (u *User) MakeNonNil() { if u.Props == nil { u.Props = make(map[string]string) |