hugo-cms/providers/db/sites.go
2025-02-02 09:54:30 +11:00

47 lines
986 B
Go

package db
import (
"context"
"lmika.dev/lmika/hugo-cms/gen/sqlc/dbq"
"lmika.dev/lmika/hugo-cms/models"
)
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,
OwnerUserID: site.OwnerUserID,
Theme: site.Theme,
Props: []byte("{}"),
})
if err != nil {
return err
}
site.ID = id
return nil
}
func (db *DB) GetSite(ctx context.Context, id int64) (models.Site, error) {
site, err := db.q.GetSiteWithID(ctx, id)
if err != nil {
return models.Site{}, err
}
return models.Site{
ID: site.ID,
OwnerUserID: site.OwnerUserID,
Name: site.Name,
Title: site.Title,
Theme: site.Theme,
}, nil
}
func (db *DB) UpdateSite(ctx context.Context, site models.Site) error {
return db.q.UpdateSite(ctx, dbq.UpdateSiteParams{
ID: site.ID,
Name: site.Name,
Title: site.Title,
Theme: site.Theme,
})
}