code refactor

This commit is contained in:
2025-01-25 15:32:52 +01:00
parent 596dcc31b2
commit 57acac6dae
7 changed files with 193 additions and 4 deletions

View File

@@ -17,12 +17,12 @@ func InitDatabase() (*sql.DB, error) {
password := os.Getenv("PG_PASSWORD")
host := os.Getenv("PG_HOST")
connStr := fmt.Sprintf("user=postgres host=%s dbname=relay password=%s sslmode=disable", host, password)
db, err := sql.Open("postgres", connStr)
DB, err := sql.Open("postgres", connStr)
if err != nil {
log.Fatal(err)
}
return db, nil
return DB, nil
}
@@ -44,3 +44,32 @@ func GetUsers(db *sql.DB) ([]string, error) {
}
return users, err
}
func CheckUserExists(db *sql.DB, username string) (bool, error) {
query := `SELECT COUNT(1) FROM accounts WHERE username= $1`
var count int
err := db.QueryRow(query, username).Scan(&count)
if err != nil {
return false, fmt.Errorf("error checking username exists: %v", err)
}
return count > 0, err
}
func InsertUser(db *sql.DB, username string, passwordHash string) (string, error) {
query := `
INSERT INTO Accounts (username, password_hash)
VALUES ($1, $2)
RETURNING user_id;
`
var userId string
err := db.QueryRow(query, username, passwordHash).Scan(&userId)
if err != nil {
return "", fmt.Errorf("error inserting user: %v", err)
}
return userId, err
}