code refactor
This commit is contained in:
@@ -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
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user