Skip to content

Commit cda4a8a

Browse files
committed
Separate function for forced update added
Fixes: f92d339 Related: #18466 (comment) Author-Change-Id: IB#1105051
1 parent b3c084c commit cda4a8a

File tree

15 files changed

+34
-29
lines changed

15 files changed

+34
-29
lines changed

cmd/admin.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -471,7 +471,7 @@ func runChangePassword(c *cli.Context) error {
471471
return err
472472
}
473473

474-
if err = user_model.UpdateUserCols(db.DefaultContext, user, false, "passwd", "passwd_hash_algo", "salt"); err != nil {
474+
if err = user_model.UpdateUserCols(db.DefaultContext, user, "passwd", "passwd_hash_algo", "salt"); err != nil {
475475
return err
476476
}
477477

models/repo.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -508,7 +508,7 @@ func CreateRepository(ctx context.Context, doer, u *user_model.User, repo *repo_
508508

509509
// Remember visibility preference.
510510
u.LastRepoVisibility = repo.IsPrivate
511-
if err = user_model.UpdateUserColsEngine(db.GetEngine(ctx), u, false, "last_repo_visibility"); err != nil {
511+
if err = user_model.UpdateUserColsEngine(db.GetEngine(ctx), u, "last_repo_visibility"); err != nil {
512512
return fmt.Errorf("updateUser: %v", err)
513513
}
514514

models/user/email_address.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -303,7 +303,7 @@ func updateActivation(e db.Engine, email *EmailAddress, activate bool) error {
303303
if _, err := e.ID(email.ID).Cols("is_activated").Update(email); err != nil {
304304
return err
305305
}
306-
return UpdateUserColsEngine(e, user, false, "rands")
306+
return UpdateUserColsEngine(e, user, "rands")
307307
}
308308

309309
// MakeEmailPrimary sets primary email address of given user.
@@ -513,7 +513,7 @@ func ActivateUserEmail(userID int64, email string, activate bool) (err error) {
513513
if user.Rands, err = GetUserSalt(); err != nil {
514514
return fmt.Errorf("unable to generate salt: %v", err)
515515
}
516-
if err = UpdateUserColsEngine(sess, &user, false, "is_active", "rands"); err != nil {
516+
if err = UpdateUserColsEngine(sess, &user, "is_active", "rands"); err != nil {
517517
return fmt.Errorf("unable to updateUserCols() for user ID: %d: %v", userID, err)
518518
}
519519
}

models/user/user.go

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -206,13 +206,13 @@ func (u *User) SetLastLogin() {
206206
// UpdateUserDiffViewStyle updates the users diff view style
207207
func UpdateUserDiffViewStyle(u *User, style string) error {
208208
u.DiffViewStyle = style
209-
return UpdateUserCols(db.DefaultContext, u, false, "diff_view_style")
209+
return UpdateUserCols(db.DefaultContext, u, "diff_view_style")
210210
}
211211

212212
// UpdateUserTheme updates a users' theme irrespective of the site wide theme
213213
func UpdateUserTheme(u *User, themeName string) error {
214214
u.Theme = themeName
215-
return UpdateUserCols(db.DefaultContext, u, false, "theme")
215+
return UpdateUserCols(db.DefaultContext, u, "theme")
216216
}
217217

218218
// GetEmail returns an noreply email, if the user has set to keep his
@@ -502,7 +502,7 @@ func (u *User) EmailNotifications() string {
502502
// SetEmailNotifications sets the user's email notification preference
503503
func SetEmailNotifications(u *User, set string) error {
504504
u.EmailNotificationsPreference = set
505-
if err := UpdateUserCols(db.DefaultContext, u, false, "email_notifications_preference"); err != nil {
505+
if err := UpdateUserCols(db.DefaultContext, u, "email_notifications_preference"); err != nil {
506506
log.Error("SetEmailNotifications: %v", err)
507507
return err
508508
}
@@ -908,13 +908,18 @@ func UpdateUser(u *User, emailChanged bool) error {
908908
}
909909

910910
// UpdateUserCols update user according special columns
911-
func UpdateUserCols(ctx context.Context, u *User, force bool, cols ...string) error {
912-
return updateUserCols(db.GetEngine(ctx), u, force, cols...)
911+
func UpdateUserCols(ctx context.Context, u *User, cols ...string) error {
912+
return updateUserCols(db.GetEngine(ctx), u, false, cols...)
913+
}
914+
915+
// UpdateForceUserCols force update user according special columns.
916+
func UpdateForceUserCols(ctx context.Context, u *User, cols ...string) error {
917+
return updateUserCols(db.GetEngine(ctx), u, true, cols...)
913918
}
914919

915920
// UpdateUserColsEngine update user according special columns
916-
func UpdateUserColsEngine(e db.Engine, u *User, force bool, cols ...string) error {
917-
return updateUserCols(e, u, force, cols...)
921+
func UpdateUserColsEngine(e db.Engine, u *User, cols ...string) error {
922+
return updateUserCols(e, u, false, cols...)
918923
}
919924

920925
func updateUserCols(e db.Engine, u *User, force bool, cols ...string) error {

routers/api/v1/org/org.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,7 @@ func Edit(ctx *context.APIContext) {
346346
if form.RepoAdminChangeTeamAccess != nil {
347347
org.RepoAdminChangeTeamAccess = *form.RepoAdminChangeTeamAccess
348348
}
349-
if err := user_model.UpdateUserCols(db.DefaultContext, org.AsUser(), false,
349+
if err := user_model.UpdateUserCols(db.DefaultContext, org.AsUser(),
350350
"full_name", "description", "website", "location",
351351
"visibility", "repo_admin_change_team_access",
352352
); err != nil {

routers/web/auth/auth.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ func resetLocale(ctx *context.Context, u *user_model.User) error {
107107
// If the user does not have a locale set, we save the current one.
108108
if len(u.Language) == 0 {
109109
u.Language = ctx.Locale.Language()
110-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, "language"); err != nil {
110+
if err := user_model.UpdateUserCols(db.DefaultContext, u, "language"); err != nil {
111111
return err
112112
}
113113
}
@@ -333,7 +333,7 @@ func handleSignInFull(ctx *context.Context, u *user_model.User, remember bool, o
333333
// If the user does not have a locale set, we save the current one.
334334
if len(u.Language) == 0 {
335335
u.Language = ctx.Locale.Language()
336-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, "language"); err != nil {
336+
if err := user_model.UpdateUserCols(db.DefaultContext, u, "language"); err != nil {
337337
ctx.ServerError("UpdateUserCols Language", fmt.Errorf("Error updating user language [user: %d, locale: %s]", u.ID, u.Language))
338338
return setting.AppSubURL + "/"
339339
}
@@ -350,7 +350,7 @@ func handleSignInFull(ctx *context.Context, u *user_model.User, remember bool, o
350350

351351
// Register last login
352352
u.SetLastLogin()
353-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, "last_login_unix"); err != nil {
353+
if err := user_model.UpdateUserCols(db.DefaultContext, u, "last_login_unix"); err != nil {
354354
ctx.ServerError("UpdateUserCols", err)
355355
return setting.AppSubURL + "/"
356356
}
@@ -603,7 +603,7 @@ func handleUserCreated(ctx *context.Context, u *user_model.User, gothUser *goth.
603603
u.IsAdmin = true
604604
u.IsActive = true
605605
u.SetLastLogin()
606-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, "is_admin", "is_active", "last_login_unix"); err != nil {
606+
if err := user_model.UpdateUserCols(db.DefaultContext, u, "is_admin", "is_active", "last_login_unix"); err != nil {
607607
ctx.ServerError("UpdateUser", err)
608608
return
609609
}
@@ -724,7 +724,7 @@ func handleAccountActivation(ctx *context.Context, user *user_model.User) {
724724
ctx.ServerError("UpdateUser", err)
725725
return
726726
}
727-
if err := user_model.UpdateUserCols(db.DefaultContext, user, false, "is_active", "rands"); err != nil {
727+
if err := user_model.UpdateUserCols(db.DefaultContext, user, "is_active", "rands"); err != nil {
728728
if user_model.IsErrUserNotExist(err) {
729729
ctx.NotFound("UpdateUserCols", err)
730730
} else {

routers/web/auth/oauth.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1021,7 +1021,7 @@ func handleOAuth2SignIn(ctx *context.Context, source *auth.Source, u *user_model
10211021
cols = append(cols, "is_admin", "is_restricted")
10221022
}
10231023

1024-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, cols...); err != nil {
1024+
if err := user_model.UpdateUserCols(db.DefaultContext, u, cols...); err != nil {
10251025
ctx.ServerError("UpdateUserCols", err)
10261026
return
10271027
}
@@ -1048,7 +1048,7 @@ func handleOAuth2SignIn(ctx *context.Context, source *auth.Source, u *user_model
10481048

10491049
changed := setUserGroupClaims(source, u, &gothUser)
10501050
if changed {
1051-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, "is_admin", "is_restricted"); err != nil {
1051+
if err := user_model.UpdateUserCols(db.DefaultContext, u, "is_admin", "is_restricted"); err != nil {
10521052
ctx.ServerError("UpdateUserCols", err)
10531053
return
10541054
}

routers/web/auth/password.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ func ResetPasswdPost(ctx *context.Context) {
232232
return
233233
}
234234
u.MustChangePassword = false
235-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, "must_change_password", "passwd", "passwd_hash_algo", "rands", "salt"); err != nil {
235+
if err := user_model.UpdateUserCols(db.DefaultContext, u, "must_change_password", "passwd", "passwd_hash_algo", "rands", "salt"); err != nil {
236236
ctx.ServerError("UpdateUser", err)
237237
return
238238
}
@@ -327,7 +327,7 @@ func MustChangePasswordPost(ctx *context.Context) {
327327

328328
u.MustChangePassword = false
329329

330-
if err := user_model.UpdateUserCols(db.DefaultContext, u, false, "must_change_password", "passwd", "passwd_hash_algo", "salt"); err != nil {
330+
if err := user_model.UpdateUserCols(db.DefaultContext, u, "must_change_password", "passwd", "passwd_hash_algo", "salt"); err != nil {
331331
ctx.ServerError("UpdateUser", err)
332332
return
333333
}

routers/web/user/setting/account.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ func AccountPost(ctx *context.Context) {
7676
ctx.ServerError("UpdateUser", err)
7777
return
7878
}
79-
if err := user_model.UpdateUserCols(db.DefaultContext, ctx.User, false, "salt", "passwd_hash_algo", "passwd"); err != nil {
79+
if err := user_model.UpdateUserCols(db.DefaultContext, ctx.User, "salt", "passwd_hash_algo", "passwd"); err != nil {
8080
ctx.ServerError("UpdateUser", err)
8181
return
8282
}

routers/web/user/setting/profile.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ func UpdateAvatarSetting(ctx *context.Context, form *forms.AvatarForm, ctxUser *
187187
}
188188
}
189189

190-
if err := user_model.UpdateUserCols(db.DefaultContext, ctxUser, false, "avatar", "avatar_email", "use_custom_avatar"); err != nil {
190+
if err := user_model.UpdateUserCols(db.DefaultContext, ctxUser, "avatar", "avatar_email", "use_custom_avatar"); err != nil {
191191
return fmt.Errorf("UpdateUser: %v", err)
192192
}
193193

0 commit comments

Comments
 (0)