+general tables

This commit is contained in:
Simon Martens
2026-01-12 15:16:11 +01:00
parent 925f22607b
commit 696f7fe087
9 changed files with 486 additions and 0 deletions

27
dbmodels/data.go Normal file
View File

@@ -0,0 +1,27 @@
package dbmodels
import "github.com/pocketbase/pocketbase/core"
type Data struct {
core.BaseRecordProxy
}
func (d *Data) Key() string {
return d.GetString(KEY_FIELD)
}
func (d *Data) SetKey(key string) {
d.Set(KEY_FIELD, key)
}
func (d *Data) Value() map[string]interface{} {
val := d.Get(VALUE_FIELD)
if val == nil {
return nil
}
return val.(map[string]interface{})
}
func (d *Data) SetValue(value map[string]interface{}) {
d.Set(VALUE_FIELD, value)
}

View File

@@ -441,6 +441,11 @@ const (
ITEMS_TABLE = "items"
SESSIONS_TABLE = "sessions"
ACCESS_TOKENS_TABLE = "access_tokens"
DATA_TABLE = "data"
IMAGES_TABLE = "images"
FILES_TABLE = "files"
HTML_TABLE = "html"
PAGES_TABLE = "pages"
ID_FIELD = "id"
CREATED_FIELD = "created"
@@ -538,5 +543,18 @@ const (
ACCESS_TOKENS_LAST_ACCESS_FIELD = "accessed"
ACCESS_TOKENS_STATUS_FIELD = "status"
KEY_FIELD = "key"
VALUE_FIELD = "value"
TITLE_FIELD = "title"
DESCRIPTION_FIELD = "description"
PREVIEW_FIELD = "preview"
IMAGE_FIELD = "image"
FILE_FIELD = "file"
HTML_FIELD = "html"
DATA_FIELD = "data"
TEMPLATE_FIELD = "template"
LAYOUT_FIELD = "layout"
TYPE_FIELD = "type"
SESSION_COOKIE_NAME = "sid"
)

31
dbmodels/file.go Normal file
View File

@@ -0,0 +1,31 @@
package dbmodels
import "github.com/pocketbase/pocketbase/core"
type File struct {
core.BaseRecordProxy
}
func (f *File) Key() string {
return f.GetString(KEY_FIELD)
}
func (f *File) SetKey(key string) {
f.Set(KEY_FIELD, key)
}
func (f *File) Description() string {
return f.GetString(DESCRIPTION_FIELD)
}
func (f *File) SetDescription(description string) {
f.Set(DESCRIPTION_FIELD, description)
}
func (f *File) FileField() string {
return f.GetString(FILE_FIELD)
}
func (f *File) SetFileField(file string) {
f.Set(FILE_FIELD, file)
}

23
dbmodels/html.go Normal file
View File

@@ -0,0 +1,23 @@
package dbmodels
import "github.com/pocketbase/pocketbase/core"
type HTML struct {
core.BaseRecordProxy
}
func (h *HTML) Key() string {
return h.GetString(KEY_FIELD)
}
func (h *HTML) SetKey(key string) {
h.Set(KEY_FIELD, key)
}
func (h *HTML) HTML() string {
return h.GetString(HTML_FIELD)
}
func (h *HTML) SetHTML(html string) {
h.Set(HTML_FIELD, html)
}

47
dbmodels/image.go Normal file
View File

@@ -0,0 +1,47 @@
package dbmodels
import "github.com/pocketbase/pocketbase/core"
type Image struct {
core.BaseRecordProxy
}
func (i *Image) Key() string {
return i.GetString(KEY_FIELD)
}
func (i *Image) SetKey(key string) {
i.Set(KEY_FIELD, key)
}
func (i *Image) Title() string {
return i.GetString(TITLE_FIELD)
}
func (i *Image) SetTitle(title string) {
i.Set(TITLE_FIELD, title)
}
func (i *Image) Description() string {
return i.GetString(DESCRIPTION_FIELD)
}
func (i *Image) SetDescription(description string) {
i.Set(DESCRIPTION_FIELD, description)
}
func (i *Image) Preview() string {
return i.GetString(PREVIEW_FIELD)
}
func (i *Image) SetPreview(preview string) {
i.Set(PREVIEW_FIELD, preview)
}
func (i *Image) ImageFile() string {
return i.GetString(IMAGE_FIELD)
}
func (i *Image) SetImageFile(image string) {
i.Set(IMAGE_FIELD, image)
}

59
dbmodels/page.go Normal file
View File

@@ -0,0 +1,59 @@
package dbmodels
import "github.com/pocketbase/pocketbase/core"
type Page struct {
core.BaseRecordProxy
}
func (p *Page) Key() string {
return p.GetString(KEY_FIELD)
}
func (p *Page) SetKey(key string) {
p.Set(KEY_FIELD, key)
}
func (p *Page) URL() string {
return p.GetString(URL_FIELD)
}
func (p *Page) SetURL(url string) {
p.Set(URL_FIELD, url)
}
func (p *Page) Template() string {
return p.GetString(TEMPLATE_FIELD)
}
func (p *Page) SetTemplate(template string) {
p.Set(TEMPLATE_FIELD, template)
}
func (p *Page) Layout() string {
return p.GetString(LAYOUT_FIELD)
}
func (p *Page) SetLayout(layout string) {
p.Set(LAYOUT_FIELD, layout)
}
func (p *Page) Type() string {
return p.GetString(TYPE_FIELD)
}
func (p *Page) SetType(pageType string) {
p.Set(TYPE_FIELD, pageType)
}
func (p *Page) Data() map[string]interface{} {
val := p.Get(DATA_FIELD)
if val == nil {
return nil
}
return val.(map[string]interface{})
}
func (p *Page) SetData(data map[string]interface{}) {
p.Set(DATA_FIELD, data)
}