# collections 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. ## Grundlegender Aufbau Eine solche Datei hat folgenden Aufbau: !!!include(api/collections/democol.yml)!!! ## imageFilter Objekt 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. Der Prozess selbst erfolgt beim ersten Abruf des Bildes und wird zwischengespeichert. Eine beispielhafte Konfiguration, die die Bilder nur verkleinert sieht so aus: !!!include(api/collections/democol/imageFilter.yml)!!! Folgende Attribute können Filter-Eintrage haben, wobei `fit` und `fill` exklusiv sind: | Attribut | Typ | Beschreibung | | --- | --- | --- | | `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"
"nearestNeighbor"
"linear"
"catmullRom" | Resampling-Algorithmus | | `quality` | number | Ausgabequalität 0..100 | ## indexes Liste TODO ## meta Objekt 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. Folgende Angaben sind möglich: !!!include(api/collections/democol/meta.yml)!!! ### views Liste `views` werden für die Darstellung der Kollektion-Daten im *tibi-admin* benötigt. Die Auswahl des passenden View erfolgt über CSS Media-Queries. Optionale Unternavigationen können eigene `views` haben. Folgende möglche Einträge für `views` gibt es derzeit: #### simpleList !!!include(api/collections/democol/simpleList.yml)!!! #### table !!!include(api/collections/democol/table.yml)!!! ### tablist 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)!!!