Darstellungseinstellungen und Überlagerungs-Ebenen
Die konkrete Darstellung von Objekten (also Themen, Dokumente, Referenzen, usw.) wird durch Parameter-Einstellungen gesteuert. Dafür gibt es generelle, projektspezifische und objektspezifische Einstellungen.
Während die generellen Einstellungen im Programmcode festgelegt sind und die Darstellung der verschiedenen Objektarten für den "Normalfall" festlegen, können im Projekt(-Objekt) die projektspezifisch abweichenden Einstellungen eingetragen werden.
Weiterhin können für jedes einzelne Objekt objektspezifische einzelne Darstellungsparameterwerte für seine Darstellung eingetragen werden.
Objekte können mit verschiedenen Layouts dargestellt werden
Für die Darstellung eines Objektes muss jeweils eines der verfügbaren Layouts ausgewählt werden. Es können auch projekt- oder objektspezifische Layouts definiert werden.
Zu den einzelnen Layouts sind wiederum Listen der für die Darstellung zu verwendenden Sektionen definiert. Im Programmcode ist festgelegt, wie der HTML-Code für eine "Sektion" erstellt wird und welche Objekt- oder andere Parameter dafür verwendet werden sollen.
Die Reihenfolge der Sektionen in den Listen der Layout-Definitionen bestimmt die Reihenfolge in der Darstellung. Die Sektionen sind so gestaltet, dass sie bei einer möglichst beliebige Reihenfolge von Sektionen eine ordentliche Darstellung ermöglichen.
Folgende Layouts sind derzeit vordefiniert:
mini: Minimale textliche Darstellung des Objektes (Kurztitel, hilfsweise der Titel) mit beschränkter Textbreitetitle: Einfach nur der Objekt-Titelpict: Ein Symbol (Bild) des ObjektesblogPreview: Eine Vorschau-Darstellung des Objektes im Blog-FormatblogEntry: Eine Volldarstellung als Blogeintragpreview: Eine Vorschau-Darstellung des Objektes (mit Obertitel, Titel, Teaserbild usw.)details: Eine Volldarstellung des Objektes- {
...: Weitere in Vorbereitung und bei Bedarf } unauthorized: Darstellung eines (für den Nutzer und seine Berechtigungen) nicht verfügbaren Objektes (entspr. "401-Meldung")unavailiable: Darstellung eines (für das Projekt) nicht verfügbaren Objektes (entspr. "404-Meldung")
Welches der vorstehend aufgelisteten Layouts für eine zu realisierende Objekt-Darstellung zu verwenden ist, muss dem <wim-obj-default> -Element (oder einem spezifischen Ersatz-Element) per "layout"-Attribut mitgeteilt werden.
Derzeit verfügbare Sektionen
Während die Layouts im Prinzip frei definierbar und ergänzbar sind, sind die eigentlichen Darstellungsbausteine, die "Sektionen", fest im Programmcode vorgegeben. Neben den Sektionen "mini", "title", "pict", "unauthorized" und "unavailiable", die namentlich und inhaltlich voll den jeweiligen vordefinierten Layouts entsprechen, sind derzeit noch folgende Sektionen verfügbar:
teaser: Der Teaser zum ObjektorgData1: Die "organisatorischen" Angaben (Autoren, Orte, Veröffentlichungszeitpunkt) zum Objekt für die Nutzung in der PreviewobjToolbar: Die Werkzeugleiste für das Objektbody: Der Hauptinhalt des ObjektsorgData2: Die "organisatorischen" Angaben (Autoren, Orte, Veröffentlichungszeitpunkt) zum Objekt für die Nutzung nach der RumpfdarstellungobjTopics: Die (verwandten) Themen zum Objekturis: Die Internet-Links zum ObjektattDocs: Die dem Objekt (direkt) zugeordneten DokumenteresDocs: Antwort-Beiträge zu einem Dokument (in Foren)relDocs: Die verknüpften bzw. inhaltlich verwandten Dokumente zum ObjektobjRecord: Die Objektdaten im Rohformat (JSON)- {
...: Weitere in Vorbereitung und bei Bedarf }
Einstellung projektspezifischer Objekt-Darstellungsstandards:
Im Projekt-Objekt können im "settings-Parameter und dem Unterparameter objLayoutSettings Angaben für die in den Objekt-Layouts zu verwendenden und anzuordnenden Sektionen gemacht werden. Dabei genügt es, nur für diejenigen Layouts einen Eintrag zu machen, deren Daten von den generelleren Vorgaben abweichen sollen.
Beispiel:
"objLayoutSettings":{
"details":["objMenu","teaser","orgData1","body","objTopics"]
}
Hier werden die von den generellen Vorgaben abweichenden Sektionen für das "details"-Layout aufgelistet.
Steuern objektspezifischer Darstellungen:
In den Objekten können im "settings-Parameter Angaben für die darzustellenden bzw. nicht darzustellenden Sektionen gemacht werden. Dabei genügt es, nur für diejenigen Layouts einen Eintrag zu machen, deren Daten von den generelleren Vorgaben abweichen sollen.
Beispiel:
{
"preview_section":{"by":"objId","showAt":""},
"related_section":{"by":"objId", "showAt":"doc"}
}
Dabei sollte für objId die Objektkennung eingetragen werden. Die preview-Sektion wird laut Beispiel NICHT dargestellt, die related-Sektion demgegenüber ja (falls Daten dazu vorliegen).
(Amerkung: Hier sind noch Änderungen bei der derzeitigen Syntax vorgesehen)
Darstellungen im WIM-System Darstellungen beim Client Themen {bei openWIM} Darstellungen im Simple-Modus Referenze-Objekte Dokument-Objekte Einstellungen
