Die Detailübersicht auf der rechten Seite im Content Navigator wird durch Velocity-Templates erzeugt. Für jeden der fünf Dateitypen steht in CMS Fiona ein solches Template zur Verfügung.
Sie können in der Detailübersicht auch andere als die im Standard
vorgesehen Felder anzeigen lassen. Um dies zu erreichen, können Sie ein
mitgeliefertes Makro in eine oder mehrere der fünf Templates einbinden.
Dieses Makro, attributeGroupInOverview
, fügt alle Felder
der angegebenen Feldgruppe (im folgenden Beispiel "overview") zu der
jeweiligen Detailübersicht hinzu:
#attributeGroupInOverview($content.getAttributeGroup('overview'))
Das Makro toleriert es, wenn die angegebene Feldgruppe nicht
existiert; es ist also sicher, dieses Makro zu verwenden. Es befindet
sich zusammen mit weiteren Makros in der Datei
webapps/GUI/WEB-INF/inspectors/default_macros.vm
.
Nachdem Sie dieses Makro zu allen
objType-overview.vm
-Dateien hinzugefügt haben,
können Sie im CMS zu jeder beliebigen Vorlage, bei der die
Detailübersicht erweitert werden soll, eine Feldgruppe namens
overview
hinzufügen und darin alle in der Übersicht
anzuzeigenden Felder aufnehmen.
Um den Verlust dieser Änderung bei Migrationen zu vermeiden, nehmen
Sie die geänderte vm-Datei in die Datei
contentInspectors.xml
auf:
<templates> <template name="publication-overview.vm"><![CDATA[ ... alter Inhalt der publication-overview.vm ... #attributeGroupInOverview($content.getAttributeGroup('overview')) ]]></template> </templates>
Wenn Sie jedoch die jeweils mitgelieferten *.vm
-Dateien
verwenden möchten, empfielt es sich, nicht nur die Templates, sondern
auch die jeweiligen objType-overview
-Beans zu
überschreiben. Indem Sie hier ein eigenes Template angeben, können Sie
darin sowohl das mitgelieferte mit parse
einlesen als auch
das Makro zur Einbindung der Feldgruppe aufrufen.
Wenn Sie dies für die Übersichten mehrerer Dateivorlagen
durchführen, ist es ökonomischer, die mehrsprachigen Titel, die in den
Views identisch sind, in ein eigenes Bean auszulagern und es in den
View-Beans selbst als parent
zu referenzieren. Dies zeigt
das folgende Beispiel für die Detailübersicht von Dateien des Typs
publication
.
<?xml version="1.0" encoding="UTF-8"?> <contentInspectors> <beans> <bean id="overview-titles" class="com.infopark.cm.htmlgui.browse.inspector.View" abstract="true"> <property name="titles"><map> <entry key="de" value="Eigenschaften"/> <entry key="en" value="Overview"/> <entry key="fr" value="Propriétés"/> <entry key="it" value="Proprietà"/> <entry key="es" value="Propiedades"/> </map></property> </bean> <bean id="publication-overview" parent="overview-titles"> <property name="template" value="advanced_publication-overview.vm"/> </bean> </beans> <templates> <template name="advanced_publication-overview.vm"><![CDATA[ #parse("publication-overview.vm") #attributeGroupInOverview($content.getAttributeGroup("overview")) ]]></template> </templates> </contentInspectors>