Added user authentication
This commit is contained in:
parent
d7e7af5a10
commit
cb54057305
40 changed files with 710 additions and 218 deletions
|
|
@ -27,6 +27,10 @@ func (db *DB) GetPost(ctx context.Context, postID int64) (models.Post, error) {
|
|||
return dbPostToPost(res), nil
|
||||
}
|
||||
|
||||
func (db *DB) DeletePost(ctx context.Context, postID int64) error {
|
||||
return db.q.DeletePost(ctx, postID)
|
||||
}
|
||||
|
||||
func (db *DB) ListPublishablePosts(ctx context.Context, fromID, siteID int64, now time.Time) ([]models.Post, error) {
|
||||
res, err := db.q.ListPublishablePosts(ctx, dbq.ListPublishablePostsParams{
|
||||
ID: fromID,
|
||||
|
|
|
|||
|
|
@ -8,11 +8,12 @@ import (
|
|||
|
||||
func (db *DB) InsertSite(ctx context.Context, site *models.Site) error {
|
||||
id, err := db.q.NewSite(ctx, dbq.NewSiteParams{
|
||||
Name: site.Name,
|
||||
Title: site.Title,
|
||||
Url: site.URL,
|
||||
Theme: site.Theme,
|
||||
Props: []byte("{}"),
|
||||
Name: site.Name,
|
||||
Title: site.Title,
|
||||
OwnerUserID: site.OwnerUserID,
|
||||
Url: site.URL,
|
||||
Theme: site.Theme,
|
||||
Props: []byte("{}"),
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
|
|
@ -31,6 +32,7 @@ func (db *DB) GetSite(ctx context.Context, id int64) (models.Site, error) {
|
|||
ID: site.ID,
|
||||
Name: site.Name,
|
||||
Title: site.Title,
|
||||
URL: site.Url,
|
||||
Theme: site.Theme,
|
||||
}, nil
|
||||
}
|
||||
|
|
|
|||
45
providers/db/user.go
Normal file
45
providers/db/user.go
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
package db
|
||||
|
||||
import (
|
||||
"context"
|
||||
"lmika.dev/lmika/hugo-cms/gen/sqlc/dbq"
|
||||
"lmika.dev/lmika/hugo-cms/models"
|
||||
)
|
||||
|
||||
func (db *DB) AddUser(ctx context.Context, user *models.User) error {
|
||||
id, err := db.q.AddUser(ctx, dbq.AddUserParams{
|
||||
Email: user.Email,
|
||||
Password: user.PasswordHash,
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
user.ID = id
|
||||
return nil
|
||||
}
|
||||
|
||||
func (db *DB) GetUserByID(ctx context.Context, id int64) (models.User, error) {
|
||||
res, err := db.q.GetUserByID(ctx, id)
|
||||
if err != nil {
|
||||
return models.User{}, err
|
||||
}
|
||||
|
||||
return dbUserToUser(res), nil
|
||||
}
|
||||
|
||||
func (db *DB) GetUserByEmail(ctx context.Context, email string) (models.User, error) {
|
||||
res, err := db.q.GetUserByEmail(ctx, email)
|
||||
if err != nil {
|
||||
return models.User{}, err
|
||||
}
|
||||
|
||||
return dbUserToUser(res), nil
|
||||
}
|
||||
|
||||
func dbUserToUser(u dbq.User) models.User {
|
||||
return models.User{
|
||||
ID: u.ID,
|
||||
Email: u.Email,
|
||||
PasswordHash: u.Password,
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue