mirror of
https://github.com/fleetdm/fleet
synced 2026-05-24 09:28:54 +00:00
correctly save user properties during ModifyUser call. (#395)
fixes #351 because RequestPasswordReset does it's own db query/save, call it at the end, after all properties have already been saved.
This commit is contained in:
parent
9c476a39ff
commit
b518447b31
1 changed files with 10 additions and 11 deletions
|
|
@ -71,15 +71,6 @@ func (svc service) ModifyUser(ctx context.Context, userID uint, p kolide.UserPay
|
|||
user.GravatarURL = *p.GravatarURL
|
||||
}
|
||||
|
||||
if p.AdminForcedPasswordReset != nil {
|
||||
if *p.AdminForcedPasswordReset {
|
||||
err = svc.RequestPasswordReset(ctx, user.Email)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if p.Password != nil {
|
||||
err := user.SetPassword(
|
||||
*p.Password,
|
||||
|
|
@ -97,8 +88,16 @@ func (svc service) ModifyUser(ctx context.Context, userID uint, p kolide.UserPay
|
|||
return nil, err
|
||||
}
|
||||
|
||||
return user, nil
|
||||
|
||||
// https://github.com/kolide/kolide-ose/issues/351
|
||||
// Calling this action last, because svc.RequestPasswordReset saves the
|
||||
// user separately and we don't want to override the value set there
|
||||
if p.AdminForcedPasswordReset != nil && *p.AdminForcedPasswordReset {
|
||||
err = svc.RequestPasswordReset(ctx, user.Email)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
return svc.User(ctx, userID)
|
||||
}
|
||||
|
||||
func (svc service) User(ctx context.Context, id uint) (*kolide.User, error) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue