aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Kavon <hawk@alexkavon.com>2023-11-28 18:42:04 -0500
committerAlexander Kavon <hawk@alexkavon.com>2023-11-28 18:42:04 -0500
commitc03ad4292cebf9661157a4fbec55d720d9aede93 (patch)
tree53ae047ca245fceae7fbe7fb9d458097c9c704ab
parent1597c23f84346dfa44da9605286863b11006bdb5 (diff)
add database connections, user model insert
-rw-r--r--src/db/db.go10
-rw-r--r--src/server/server.go8
-rw-r--r--src/user/user.go17
3 files changed, 26 insertions, 9 deletions
diff --git a/src/db/db.go b/src/db/db.go
index 4daf561..2b72382 100644
--- a/src/db/db.go
+++ b/src/db/db.go
@@ -9,7 +9,11 @@ import (
"gitlab.com/alexkavon/newsstand/src/conf"
)
-func NewDb(config *conf.Conf) *pgxpool.Pool {
+type Database struct {
+ p *pgxpool.Pool
+}
+
+func NewDb(config *conf.Conf) *Database {
pool, err := pgxpool.New(context.Background(), config.Db.Url)
if err != nil {
log.Fatal(err)
@@ -22,5 +26,7 @@ func NewDb(config *conf.Conf) *pgxpool.Pool {
log.Fatal(err)
}
log.Println("Database connection pool created.", testquery)
- return pool
+ return &Database{
+ p: pool,
+ }
}
diff --git a/src/server/server.go b/src/server/server.go
index aa9f7d2..9cb2a3f 100644
--- a/src/server/server.go
+++ b/src/server/server.go
@@ -4,21 +4,21 @@ import (
"net/http"
"github.com/go-chi/chi/v5"
- "github.com/jackc/pgx/v5/pgxpool"
"gitlab.com/alexkavon/newsstand/src/conf"
+ "gitlab.com/alexkavon/newsstand/src/db"
)
type Server struct {
Router *chi.Mux
- Db *pgxpool.Pool
+ Db *db.Database
Config *conf.Conf
Ui Ui
}
-func NewServer(config *conf.Conf, db *pgxpool.Pool) *Server {
+func NewServer(config *conf.Conf, database *db.Database) *Server {
return &Server{
Router: NewRouter(config),
- Db: db,
+ Db: database,
Config: config,
Ui: NewUi(config),
}
diff --git a/src/user/user.go b/src/user/user.go
index 97fe74c..83e39e3 100644
--- a/src/user/user.go
+++ b/src/user/user.go
@@ -1,7 +1,18 @@
package user
+import (
+ "errors"
+ "time"
+)
+
type User struct {
- Id int64 `json:"id"`
- Username string `json:"username"`
- Karma uint64 `json:"karma"`
+ Id int64
+ Username string
+ Karma uint64
+ UpdatedAt time.Time
+ CreatedAt time.Time
+}
+
+func NewUser(username, secret string) error {
+ return errors.New("Not Implemented")
}