Implement PUT /users/{user_id}/password endpoint for APIv4 (#5243)

Этот коммит содержится в:
Joram Wilander
2017-02-07 09:35:58 -08:00
коммит произвёл GitHub
родитель ba18374bd1
Коммит 9dc76c1823
7 изменённых файлов: 136 добавлений и 15 удалений

Просмотреть файл

@@ -4,12 +4,12 @@
package app
import (
"net/http"
"strings"
"github.com/mattermost/platform/einterfaces"
"github.com/mattermost/platform/model"
"github.com/mattermost/platform/utils"
"net/http"
"strings"
)
func CheckPasswordAndAllCriteria(user *model.User, password string, mfaToken string) *model.AppError {
@@ -123,7 +123,7 @@ func CheckUserMfa(user *model.User, token string) *model.AppError {
func checkUserLoginAttempts(user *model.User) *model.AppError {
if user.FailedAttempts >= utils.Cfg.ServiceSettings.MaximumLoginAttempts {
return model.NewLocAppError("checkUserLoginAttempts", "api.user.check_user_login_attempts.too_many.app_error", nil, "user_id="+user.Id)
return model.NewAppError("checkUserLoginAttempts", "api.user.check_user_login_attempts.too_many.app_error", nil, "user_id="+user.Id, http.StatusForbidden)
}
return nil

Просмотреть файл

@@ -764,22 +764,19 @@ func UpdatePasswordAsUser(userId, currentPassword, newPassword, siteURL string)
}
if user == nil {
err = model.NewLocAppError("updatePassword", "api.user.update_password.valid_account.app_error", nil, "")
err.StatusCode = http.StatusBadRequest
err = model.NewAppError("updatePassword", "api.user.update_password.valid_account.app_error", nil, "", http.StatusBadRequest)
return err
}
if user.AuthData != nil && *user.AuthData != "" {
err = model.NewLocAppError("updatePassword", "api.user.update_password.oauth.app_error", nil, "auth_service="+user.AuthService)
err.StatusCode = http.StatusBadRequest
err = model.NewAppError("updatePassword", "api.user.update_password.oauth.app_error", nil, "auth_service="+user.AuthService, http.StatusBadRequest)
return err
}
if err := doubleCheckPassword(user, currentPassword); err != nil {
if err.Id == "api.user.check_user_password.invalid.app_error" {
err = model.NewLocAppError("updatePassword", "api.user.update_password.incorrect.app_error", nil, "")
err = model.NewAppError("updatePassword", "api.user.update_password.incorrect.app_error", nil, "", http.StatusBadRequest)
}
err.StatusCode = http.StatusForbidden
return err
}