/// migrate((app) => { // neuigkeiten: new Collection() + app.save() – genau wie nachrichten/mitglieder. // importCollections() kompiliert Rules in PB v0.38 NICHT korrekt → HTTP 400. const neuigkeiten = new Collection({ "id": "pbc_1779230901", "name": "neuigkeiten", "type": "base", "system": false, "listRule": "@request.auth.verein_id = verein_id", "viewRule": "@request.auth.verein_id = verein_id", "createRule": "@request.auth.verein_id = verein_id", "updateRule": "@request.auth.verein_id = verein_id && autor_id = @request.auth.id", "deleteRule": "@request.auth.verein_id = verein_id && autor_id = @request.auth.id", "indexes": [], "fields": [ { "autogeneratePattern": "[a-z0-9]{15}", "hidden": false, "id": "text3208210256", "max": 15, "min": 15, "name": "id", "pattern": "^[a-z0-9]+$", "presentable": false, "primaryKey": true, "required": true, "system": true, "type": "text" }, { "cascadeDelete": true, "collectionId": "pbc_3589557411", "hidden": false, "id": "relation3100049688", "maxSelect": 1, "minSelect": 0, "name": "verein_id", "presentable": false, "required": true, "system": false, "type": "relation" }, { "autogeneratePattern": "", "hidden": false, "id": "text2300079512", "max": 0, "min": 0, "name": "autor_id", "pattern": "", "presentable": false, "primaryKey": false, "required": true, "system": false, "type": "text" }, { "autogeneratePattern": "", "hidden": false, "id": "text1546895374", "max": 0, "min": 0, "name": "autor_name", "pattern": "", "presentable": false, "primaryKey": false, "required": false, "system": false, "type": "text" }, { "autogeneratePattern": "", "hidden": false, "id": "text1059453555", "max": 0, "min": 0, "name": "text", "pattern": "", "presentable": false, "primaryKey": false, "required": false, "system": false, "type": "text" }, { "hidden": false, "id": "file5103562148", "maxSelect": 10, "maxSize": 15728640, "mimeTypes": ["image/jpeg","image/png","image/gif","image/webp","video/mp4","video/quicktime"], "name": "medien", "presentable": false, "required": false, "system": false, "type": "file" }, { "cascadeDelete": false, "collectionId": "pbc_3099069179", "hidden": false, "id": "relation3177861730", "maxSelect": 99, "minSelect": 0, "name": "gruppe_ids", "presentable": false, "required": false, "system": false, "type": "relation" }, { "cascadeDelete": false, "collectionId": "pbc_2279568741", "hidden": false, "id": "relation2143897900", "maxSelect": 1, "minSelect": 0, "name": "termin_id", "presentable": false, "required": false, "system": false, "type": "relation" } ] }); app.save(neuigkeiten); const neuigkeitenId = app.findCollectionByNameOrId("neuigkeiten").id; const reaktionen = new Collection({ "id": "pbc_1779230902", "name": "reaktionen", "type": "base", "system": false, "createRule": "@request.auth.id != ''", "deleteRule": "@request.auth.id = user_id", "listRule": "@request.auth.verein_id = beitrag_id.verein_id", "viewRule": "@request.auth.verein_id = beitrag_id.verein_id", "updateRule": null, "indexes": ["CREATE UNIQUE INDEX idx_reaktion_unique ON reaktionen (beitrag_id, user_id)"], "fields": [ { "autogeneratePattern": "[a-z0-9]{15}", "hidden": false, "id": "text3208210256", "max": 15, "min": 15, "name": "id", "pattern": "^[a-z0-9]+$", "presentable": false, "primaryKey": true, "required": true, "system": true, "type": "text" }, { "cascadeDelete": true, "collectionId": neuigkeitenId, "hidden": false, "id": "relation4196188140", "maxSelect": 1, "minSelect": 0, "name": "beitrag_id", "presentable": false, "required": true, "system": false, "type": "relation" }, { "cascadeDelete": true, "collectionId": "_pb_users_auth_", "hidden": false, "id": "relation3255232538", "maxSelect": 1, "minSelect": 0, "name": "user_id", "presentable": false, "required": true, "system": false, "type": "relation" } ] }); app.save(reaktionen); }, (app) => { try { app.delete(app.findCollectionByNameOrId("reaktionen")) } catch(_) {} try { app.delete(app.findCollectionByNameOrId("neuigkeiten")) } catch(_) {} })