feat: improve python actions (#1083)

This commit is contained in:
Jonas Plum
2024-07-21 02:56:43 +02:00
committed by GitHub
parent 81bfbb2072
commit 91429effe2
55 changed files with 1143 additions and 585 deletions

View File

@@ -4,7 +4,6 @@ import (
"github.com/pocketbase/dbx"
"github.com/pocketbase/pocketbase/daos"
"github.com/pocketbase/pocketbase/models"
"github.com/pocketbase/pocketbase/tools/security"
)
func defaultDataUp(db dbx.Builder) error {
@@ -30,7 +29,7 @@ func typeRecords(dao *daos.Dao) []*models.Record {
var records []*models.Record
record := models.NewRecord(collection)
record.SetId("y_" + security.PseudorandomString(5))
record.SetId("incident")
record.Set("singular", "Incident")
record.Set("plural", "Incidents")
record.Set("icon", "Flame")
@@ -39,7 +38,7 @@ func typeRecords(dao *daos.Dao) []*models.Record {
records = append(records, record)
record = models.NewRecord(collection)
record.SetId("y_" + security.PseudorandomString(5))
record.SetId("alert")
record.Set("singular", "Alert")
record.Set("plural", "Alerts")
record.Set("icon", "AlertTriangle")

View File

@@ -21,9 +21,9 @@ func reactionsUp(db dbx.Builder) error {
Schema: schema.NewSchema(
&schema.SchemaField{Name: "name", Type: schema.FieldTypeText, Required: true},
&schema.SchemaField{Name: "trigger", Type: schema.FieldTypeSelect, Required: true, Options: &schema.SelectOptions{MaxSelect: 1, Values: triggers}},
&schema.SchemaField{Name: "triggerdata", Type: schema.FieldTypeJson, Required: true},
&schema.SchemaField{Name: "triggerdata", Type: schema.FieldTypeJson, Required: true, Options: &schema.JsonOptions{MaxSize: 50_000}},
&schema.SchemaField{Name: "action", Type: schema.FieldTypeSelect, Required: true, Options: &schema.SelectOptions{MaxSelect: 1, Values: reactions}},
&schema.SchemaField{Name: "actiondata", Type: schema.FieldTypeJson, Required: true},
&schema.SchemaField{Name: "actiondata", Type: schema.FieldTypeJson, Required: true, Options: &schema.JsonOptions{MaxSize: 50_000}},
),
}))
}

View File

@@ -0,0 +1,37 @@
package migrations
import (
"github.com/pocketbase/dbx"
"github.com/pocketbase/pocketbase/daos"
"github.com/pocketbase/pocketbase/models"
)
const SystemUserID = "system"
func systemuserUp(db dbx.Builder) error {
dao := daos.New(db)
collection, err := dao.FindCollectionByNameOrId(UserCollectionName)
if err != nil {
return err
}
record := models.NewRecord(collection)
record.SetId(SystemUserID)
record.Set("name", "system")
record.Set("username", "system")
record.Set("verified", true)
return dao.SaveRecord(record)
}
func systemuserDown(db dbx.Builder) error {
dao := daos.New(db)
record, err := dao.FindRecordById(UserCollectionName, SystemUserID)
if err != nil {
return err
}
return dao.DeleteRecord(record)
}

View File

@@ -10,4 +10,5 @@ func Register() {
migrations.Register(defaultDataUp, nil, "1700000003_defaultdata.go")
migrations.Register(viewsUp, viewsDown, "1700000004_views.go")
migrations.Register(reactionsUp, reactionsDown, "1700000005_reactions.go")
migrations.Register(systemuserUp, systemuserDown, "1700000006_systemuser.go")
}