commit 21f81b8abdfa0e5cf8b6d942a263fc34751d3ec8
parent 245251d3ae5c589b577a3b2e6ac6ef2d317892bc
Author: n0tr1v <n0tr1v@protonmail.com>
Date: Sat, 3 Dec 2022 22:56:47 -0500
cleanup
Diffstat:
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/pkg/database/tableUsers.go b/pkg/database/tableUsers.go
@@ -288,6 +288,11 @@ func GetUserByUsername(username string) (out User, err error) {
return
}
+func GetVerifiedUserByUsername(username string) (out User, err error) {
+ err = DB.First(&out, "username = ? COLLATE NOCASE AND verified = 1", username).Error
+ return
+}
+
func GetUsersByUsername(usernames []string) (out []User, err error) {
err = DB.Find(&out, "username IN (?)", usernames).Error
return
diff --git a/pkg/web/handlers/handlers.go b/pkg/web/handlers/handlers.go
@@ -238,8 +238,8 @@ func loginHandler(c echo.Context) error {
actualLogin := func(username, password, ip string, captchaSolved bool) error {
username = strings.TrimSpace(username)
- var user database.User
- if err := database.DB.First(&user, "username = ? COLLATE NOCASE and verified = 1", username).Error; err != nil {
+ user, err := database.GetVerifiedUserByUsername(username)
+ if err != nil {
time.Sleep(utils.RandMs(50, 200))
data.Error = "Invalid username/password"
return c.Render(http.StatusOK, "login", data)