diff options
| author | haturatu <taro@eyes4you.org> | 2026-04-22 04:46:24 +0900 |
|---|---|---|
| committer | haturatu <taro@eyes4you.org> | 2026-04-22 04:46:24 +0900 |
| commit | 4b0271272e983fdb85d4b816cbd91f34d91a7884 (patch) | |
| tree | ad92ba661f0f9e8b16d93f333ebf43ffd331a892 /handlers/user.go | |
| parent | d18b4f9d615d8942ff604a53be92da2c8e853635 (diff) | |
Diffstat (limited to 'handlers/user.go')
| -rw-r--r-- | handlers/user.go | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/handlers/user.go b/handlers/user.go index 65ebe83..ad68f6f 100644 --- a/handlers/user.go +++ b/handlers/user.go @@ -83,16 +83,7 @@ func ChangePasswordHandler(w http.ResponseWriter, r *http.Request) { return } - dbUser, err := models.GetUserByID(user.ID) - if err != nil || dbUser == nil { - w.WriteHeader(http.StatusInternalServerError) - if err := json.NewEncoder(w).Encode(map[string]string{"error": "Could not retrieve user data."}); err != nil { - logging.AppLog.Error("Failed to encode json error response", "error", err) - } - return - } - - if !models.CheckPasswordHash(currentPassword, dbUser.PasswordHash) { + if _, err := models.AuthenticateWithPassword(user.Username, currentPassword); err != nil { w.WriteHeader(http.StatusUnauthorized) if err := json.NewEncoder(w).Encode(map[string]string{"error": "Current password is incorrect."}); err != nil { logging.AppLog.Error("Failed to encode json error response", "error", err) @@ -100,16 +91,7 @@ func ChangePasswordHandler(w http.ResponseWriter, r *http.Request) { return } - newPasswordHash, err := models.HashPassword(newPassword) - if err != nil { - w.WriteHeader(http.StatusInternalServerError) - if err := json.NewEncoder(w).Encode(map[string]string{"error": "Failed to process new password."}); err != nil { - logging.AppLog.Error("Failed to encode json error response", "error", err) - } - return - } - - if err := models.UpdateUserPassword(dbUser.ID, newPasswordHash); err != nil { + if err := models.ChangeUserPassword(user.ID, currentPassword, newPassword); err != nil { w.WriteHeader(http.StatusInternalServerError) if err := json.NewEncoder(w).Encode(map[string]string{"error": "Failed to update password."}); err != nil { logging.AppLog.Error("Failed to encode json error response", "error", err) |
