From 8b050bc1da0e8a60d37abaa7f2e9f13bdedd5aa0 Mon Sep 17 00:00:00 2001 From: bagas Date: Tue, 3 Sep 2024 13:45:15 +0700 Subject: [PATCH 1/2] Handle error when database connection fails --- db/database.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/db/database.go b/db/database.go index e01b291..feabbcf 100644 --- a/db/database.go +++ b/db/database.go @@ -64,6 +64,10 @@ func NewMYSQLdb(username, password, host, port, dbName string) Database { Logger: gormLogger.Default.LogMode(gormLogger.Silent), }) + if err != nil { + panic("failed to connect database: " + err.Error()) + } + initDB.Raw("SELECT count(*) FROM information_schema.SCHEMATA WHERE SCHEMA_NAME = ?", dbName).Scan(&count) if count <= 0 { if err := initDB.Exec("CREATE DATABASE IF NOT EXISTS " + dbName).Error; err != nil { From d31688e1ba5d9d074142af8ff2c9c454cf773548 Mon Sep 17 00:00:00 2001 From: bagas Date: Tue, 3 Sep 2024 13:46:28 +0700 Subject: [PATCH 2/2] Fix password validation issue during registration --- utils/utils.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/utils/utils.go b/utils/utils.go index 197da33..fd8b1e1 100644 --- a/utils/utils.go +++ b/utils/utils.go @@ -66,25 +66,25 @@ func CheckPasswordHash(password, hash string) bool { } func ValidatePassword(password string) bool { - if len(password) < 6 { + if len(password) < 8 { return false } var ( - hasNumber int + hasNumber bool hasUppercase bool ) for _, char := range password { switch { case unicode.IsNumber(char): - hasNumber++ + hasNumber = true case unicode.IsUpper(char): hasUppercase = true } } - return hasNumber >= 3 && hasUppercase + return hasNumber && hasUppercase } func ConvertFileSize(byte int64) string {