tibi-docs/docs/projektkonfig/collections.md

2.6 KiB

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" eingebunden werden.

Grundlegender Aufbau

Eine solche Datei (z.B. democol.yml) 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 in der Admin-UI Verwendung 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 in der Admin-UI benötigt. Die Auswahl des passenden View erfolgt über CSS Media-Queries.

Optionale Unternavigationen können eigene "views" haben.

Folgende 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)!!!