check authdata for different format (#17577)
* check authdata for different format * add mocks, fix lint * rename function * update auth-data with new format * update assert Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
a4f7df6f6e
Коммит
2f33b52d8a
@@ -376,7 +376,14 @@ func (a *App) CreateOAuthUser(c *request.Context, service string, userData io.Re
|
||||
if userByEmail.AuthService == "" {
|
||||
return nil, model.NewAppError("CreateOAuthUser", "api.user.create_oauth_user.already_attached.app_error", map[string]interface{}{"Service": service, "Auth": model.USER_AUTH_SERVICE_EMAIL}, "email="+user.Email, http.StatusBadRequest)
|
||||
}
|
||||
return nil, model.NewAppError("CreateOAuthUser", "api.user.create_oauth_user.already_attached.app_error", map[string]interface{}{"Service": service, "Auth": userByEmail.AuthService}, "email="+user.Email, http.StatusBadRequest)
|
||||
if provider.IsSameUser(userByEmail, user) {
|
||||
if _, err := a.Srv().Store.User().UpdateAuthData(userByEmail.Id, user.AuthService, user.AuthData, "", false); err != nil {
|
||||
// if the user is not updated, write a warning to the log, but don't prevent user login
|
||||
mlog.Warn("Error attempting to update user AuthData", mlog.Err(err))
|
||||
}
|
||||
return userByEmail, nil
|
||||
}
|
||||
return nil, model.NewAppError("CreateOAuthUser", "api.user.create_oauth_user.already_attached.app_error", map[string]interface{}{"Service": service, "Auth": userByEmail.AuthService}, "email="+user.Email+" authData="+*user.AuthData, http.StatusBadRequest)
|
||||
}
|
||||
|
||||
user.EmailVerified = true
|
||||
|
||||
Ссылка в новой задаче
Block a user