Compare commits

...
Sign in to create a new pull request.

7 commits

Author SHA1 Message Date
e194b034fc [task-193] [int] 2025-07-07 12:10:34 +02:00
9a892ddee0 [task-193] [int] 2025-04-12 10:21:25 +00:00
1aa1fb78ac [task-193] [mod] r7 2025-04-01 04:21:11 +00:00
7bb4f1188f [task-193] [del] r6-2 2025-03-31 19:42:07 +00:00
fa75ad2b14 [task-193] [mod] r7 2025-03-31 19:41:13 +00:00
28bb60cedd [res] 2025-03-31 19:22:54 +00:00
ee5b297016 [task-193] [int] 2025-03-31 17:27:00 +00:00

View file

@ -0,0 +1,277 @@
{
"domains": [
{
"name": "sessions",
"data_fields": [
{
"name": "key",
"type": "string_medium",
"nullable": false
},
{
"name": "data",
"type": "string_long",
"nullable": false
}
],
"constraints": [
{
"kind": "unique",
"parameters": {
"fields": ["key"]
}
}
]
},
{
"name": "groups",
"key_field": {
"name": "id"
},
"data_fields": [
{
"name": "name",
"type": "string_short",
"nullable": false
}
],
"constraints": [
{
"kind": "unique",
"parameters": {
"fields": ["name"]
}
}
]
},
{
"name": "admins",
"key_field": {
"name": "id"
},
"data_fields": [
{
"name": "name",
"type": "string_short",
"nullable": false
},
{
"name": "email_address",
"type": "string_medium",
"nullable": true
},
{
"name": "password_image",
"type": "string_medium",
"nullable": false
},
{
"name": "password_fail_count",
"type": "integer",
"nullable": false
}
],
"constraints": [
{
"kind": "unique",
"parameters": {
"fields": ["name"]
}
}
]
},
{
"name": "members",
"key_field": {
"name": "id"
},
"data_fields": [
{
"name": "name",
"type": "string_short",
"nullable": false
},
{
"name": "email_address",
"type": "string_short",
"nullable": true
},
{
"name": "enabled",
"type": "boolean",
"nullable": false
},
{
"name": "password_image",
"type": "string_medium",
"nullable": true
},
{
"name": "password_change_last_attempt",
"type": "integer",
"nullable": true
},
{
"name": "password_change_token",
"type": "string_medium",
"nullable": true
}
],
"constraints": [
{
"kind": "unique",
"parameters": {
"fields": ["name"]
}
}
]
},
{
"name": "member_groups",
"data_fields": [
{
"name": "member_id",
"type": "integer",
"nullable": false
},
{
"name": "group_id",
"type": "integer",
"nullable": false
},
{
"name": "_dummy",
"type": "boolean",
"nullable": true
}
],
"constraints": [
{
"kind": "foreign_key",
"parameters": {
"fields": ["member_id"],
"reference": {
"name": "members",
"fields": ["id"]
}
}
},
{
"kind": "foreign_key",
"parameters": {
"fields": ["group_id"],
"reference": {
"name": "groups",
"fields": ["id"]
}
}
},
{
"kind": "unique",
"parameters": {
"fields": ["member_id","group_id"]
}
}
]
},
{
"name": "invitations",
"key_field": {
"name": "id"
},
"data_fields": [
{
"name": "key",
"type": "string_short",
"nullable": false
},
{
"name": "expiry",
"type": "integer",
"nullable": true
},
{
"name": "name_changeable",
"type": "boolean",
"nullable": false
},
{
"name": "name_value",
"type": "string_short",
"nullable": false
},
{
"name": "email_address_changeable",
"type": "boolean",
"nullable": false
},
{
"name": "email_address_value",
"type": "string_short",
"nullable": true
},
{
"name": "groups_changeable",
"type": "boolean",
"nullable": false
}
],
"constraints": [
{
"kind": "unique",
"parameters": {
"fields": ["key"]
}
}
]
},
{
"name": "invitation_groups",
"data_fields": [
{
"name": "invitation_id",
"type": "integer",
"nullable": false
},
{
"name": "group_id",
"type": "string_medium",
"nullable": false
},
{
"name": "_dummy",
"type": "boolean",
"nullable": true
}
],
"constraints": [
{
"kind": "foreign_key",
"parameters": {
"fields": ["invitation_id"],
"reference": {
"name": "invitations",
"fields": ["id"]
}
}
},
{
"kind": "foreign_key",
"parameters": {
"fields": ["group_id"],
"reference": {
"name": "groups",
"fields": ["id"]
}
}
},
{
"kind": "unique",
"parameters": {
"fields": ["invitation_id","group_id"]
}
}
]
}
]
}