This commit is contained in:
Robin Grenzdörfer 2023-10-15 10:49:18 +00:00
parent 9ecae4f8d8
commit f1d30945c1
3 changed files with 110 additions and 1 deletions

View File

@ -0,0 +1,95 @@
name: backups
meta:
isBackupcollection: true
permissions:
public:
methods:
get: false
post: false
put: false
delete: false
user:
methods:
get: true
post: false
put: false
delete: false
# token als Zusatzsicherung gegen Spam, mehr siehe Hook
"token:${PUBLIC_TOKEN}":
methods:
get: false
post: true
put: false
delete: false
hooks:
post:
create:
type: javascript
file: hooks/backups/post_create.js
fields:
- name: collectionName
type: string
meta:
label: Collection Name
- name: entryId
type: string
meta:
label: Entry ID
- name: versionNr
type: number
meta:
label: Version Nr
- name: manipulatedBy
type: string
meta:
label: Manipulated By
- name: eventDescription
type: string
meta:
label: Event Description
widget: select
choices:
- id: create
name: Create
- id: update
name: Update
- id: delete
name: Delete
- id: recreate
name: Recreate
- id: activate
name: Activate
- name: updateLogs
type: object[]
meta:
label: Veränderungen
subFields:
- name: field
type: string
meta:
label: Feldname
- name: previous
type: string
meta:
label: Vorheriger Wert
- name: current
type: string
meta:
label: Aktueller Wert
- name: entry
type: object
meta:
label: Entry

View File

@ -6,6 +6,11 @@ label:
# Jede Kolletion kann ein eigenes Icon aus mdijs bekommen.
muiIcon: web
# backup objekt
backup:
active: true # backup ist aktiviert
collectionName: backups # name der backups collection
# wenn keine fields gesetzt sind, werden alle Felder der Kollektion angezeigt
quickEdit:
enabled: true # Standardmäßig ist die Schnellbearbeitung aktiviert

View File

@ -69,10 +69,19 @@ columns:
Wird die `tablist` verwendet, ist sicher zu stellen, dass alle Felder in der Definition aufgenommen werden. Werden Felder nicht in die `tablist` aufgenommen, sind diese weiterhin in einer Gesamtliste unterhalb der Tabs und bringen das Layout durcheinander.
!!!include(../api/collections/democol/tablist.yml)!!!
backup:
active: true
collectionName: backups
## multiupload
Der mutliupload kann bei jedem view type verwendet werden. Über $file kann man in eval auf das aktuelle file Objekt zugreifen. Hier ist eine Beispielscollection, welchen diesen verwendet.
!!!include(../api/collections/medialib.yml)!!!
## backups
im meta Objekt einer collection können backups für diese collection konfiguriert werden. Die backups werden in der Datenbank gespeichert und können über das tibi-admin in der selben collection angewandt werden. Wird ein collectoneintrag gelöscht, kann man diesen über den gelöschte einträge checkbox wiederherstellen.
folgende collection ist ein beispiel für eine backup collection
!!!include(../api/collections/backups.yml)!!!