2022-11-02 07:40:25 +01:00
# collections
2022-11-03 11:05:44 +01:00
Die Konfiguration einer Kollektion sollte zur besseren Übersicht innerhalb einer gesonderten Datei im Unterorder **api/collections/** erfolgen und via `!include` in die [config.yml ](./config.yml.md ) eingebunden werden.
2022-11-02 07:40:25 +01:00
2022-11-02 12:00:27 +01:00
## Grundlegender Aufbau
2022-11-03 11:05:44 +01:00
Eine solche Datei hat folgenden Aufbau:
2022-11-02 07:40:25 +01:00
2022-11-03 08:59:11 +01:00
!!!include(api/collections/democol.yml)!!!
2022-11-02 12:00:27 +01:00
## imageFilter Objekt
2022-11-03 11:05:44 +01:00
Die Bildmanipulation von hochgeladen Bildern zu einer Kollektion kann über das `imageFilter` Objekt definiert werden.
Der Filter wird angewandt, wenn an die Bild-URL der Parameter `filter=...` angehangen wird.
2022-11-02 13:56:08 +01:00
Der Prozess selbst erfolgt beim ersten Abruf des Bildes und wird zwischengespeichert.
Eine beispielhafte Konfiguration, die die Bilder nur verkleinert sieht so aus:
2022-11-03 08:59:11 +01:00
!!!include(api/collections/democol/imageFilter.yml)!!!
2022-11-02 13:56:08 +01:00
2022-11-03 11:05:44 +01:00
Folgende Attribute können Filter-Eintrage haben, wobei `fit` und `fill` exklusiv sind:
2022-11-02 13:56:08 +01:00
| Attribut | Typ | Beschreibung |
| --- | --- | --- |
2022-11-03 11:05:44 +01:00
| `fit` | boolean | passt das Bild in ein Rechteck ein |
| `fill` | boolean | streckt/staucht das Bild, so dass es das Rechteck komplett ausfüllt |
| `height` | number | Höhe des Rechtecks |
| `width` | number | Breite des Rechtecks |
| `blur` | number | Verwischungsgrad |
| `brightness` | number | Helligkeit |
| `contrast` | number | Konrast |
| `gamma` | number | Gamma-Wert |
| `saturation` | number | Sättigung |
| `sharpen` | number | Schärfe |
| `invert` | boolean | Farben invertieren |
| `grayscale` | boolean | Schwarz-Weiß |
| `resampling` | "lanczos"< br > "nearestNeighbor"< br > "linear"< br > "catmullRom" | Resampling-Algorithmus |
| `quality` | number | Ausgabequalität 0..100 |
2022-11-02 13:56:08 +01:00
2022-11-02 12:00:27 +01:00
2022-11-02 15:00:50 +01:00
## indexes Liste
TODO
2022-11-02 12:00:27 +01:00
## meta Objekt
2022-11-03 11:05:44 +01:00
Wie bereits an anderer Stelle beschrieben, dient das `meta` Objekt zur Definition von Merkmalen, die im *tibi-admin* finden. Zum Anlegen der Struktur in der Datenbank und Definition der API haben diese Angaben keine Relevanz.
2022-11-02 12:00:27 +01:00
Folgende Angaben sind möglich:
2022-11-03 08:59:11 +01:00
!!!include(api/collections/democol/meta.yml)!!!
2022-11-02 12:00:27 +01:00
### views Liste
2022-11-03 11:05:44 +01:00
`views` werden für die Darstellung der Kollektion-Daten im *tibi-admin* benötigt. Die Auswahl des passenden View erfolgt über CSS Media-Queries.
2022-11-02 13:56:08 +01:00
2022-11-03 11:05:44 +01:00
Optionale Unternavigationen können eigene `views` haben.
2022-11-02 13:56:08 +01:00
2022-11-03 11:05:44 +01:00
Folgende möglche Einträge für `views` gibt es derzeit:
2022-11-02 13:56:08 +01:00
2022-11-02 12:00:27 +01:00
#### simpleList
2022-11-02 07:40:25 +01:00
2022-11-03 08:59:11 +01:00
!!!include(api/collections/democol/simpleList.yml)!!!
2022-11-02 13:56:08 +01:00
#### table
2022-11-03 08:59:11 +01:00
!!!include(api/collections/democol/table.yml)!!!
2022-11-02 13:56:08 +01:00
### tablist
2022-11-03 11:05:44 +01:00
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.
2022-11-02 13:56:08 +01:00
2022-11-03 08:59:11 +01:00
!!!include(api/collections/democol/tablist.yml)!!!