INNER CODE UNIT · Go
func
arp242/goatcounter · api_token.go:131
func (t *APIToken) Defaults(ctx context.Context) {
t.SiteID = MustGetSite(ctx).IDOrParent()
t.UserID = MustGetUser(ctx).ID
t.Token = zcrypto.Secret256()
t.CreatedAt = ztime.Now(ctx)
}
var _ zdb.Validator = &APIToken{}
func (t *APIToken) Validate(ctx context.Context) error {
v := NewValidate(ctx)
v.Required("name", t.Name)
v.Required("site_id", t.SiteID)
v.Required("user_id", t.SiteID)
v.Required("token", t.Token)
if t.Permissions == 1 {
v.Append("permissions", z18n.T(ctx, "validate/need-one|must select at least one"))
}