Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden

Communardo's Metadaten Add-On - Selbst erweitern

In Kürze erscheint das neue Metadaten Add-On von Communardo. Dieser Blogpost zeigt wie Metadatenfelder nach eige­nen Wünschen dar­ge­stellt wer­den können. 

Das Metadaten Add-On dient zur Strukturierung und Kategorisierung von Confluence Systemen. Bereichsadministratoren haben die Möglichkeit eigene Metadaten für Ihren Bereich zu defi­nie­ren. Nutzer des Bereichs kön­nen diese dann je nach Vorgabe des Bereichsadministrators mit Inhalten fül­len. Mit Metadaten ver­se­hene Seiten kön­nen nun über zusätz­li­che Makros gesucht und ange­zeigt werden.

Nehmen wir nun an sie möch­ten Ansprechpartner für jede Wikiseite in ihrem Bereich defi­nie­ren. Hierfür legen sie mit Bereichsadministrationsrechten Metadatenfelder an. Einmal "Contact Person", wel­ches spä­ter das Nutzerkürzel des Verantwortlichen Mitarbeiters ent­hält, sowie ein Feld "Contact Person Message" für zusätz­li­che Informationen zu dem Verantwortlichen.

metadatafields
Metadatenfeldübersicht in der Bereichsadministration

Metadatenfelder allein sind noch nicht ver­wend­bar. Sie müs­sen noch in einem Metadatenset gebün­delt wer­den. Ein oder meh­rere sol­cher Sets kön­nen dann bestimm­ten Seiten oder Vorlagen zuge­ord­net wer­den. Sie erstel­len also ein Metadatenset mit dem Namen "Help Desk" und fügen die bei­den Metadatenfelder zu die­sem hinzu. Das Metadatenset wird nun als Standard Set für alle Seiten im Bereiches definiert.

metadataset
Metadatensetübersicht in der Bereichsadministration

Jede neu erstellte Seite in die­sem Bereich erhält nun auto­ma­tisch das "Help Desk" Set. Nutzer kön­nen einen ent­spre­chen­den Seitenverantwortlichen direkt an der Seite über die Metadatenoberfläche pflegen.

editmetadata
Metadateneditor auf einer Inhaltsseite

Um die Verantwortlichen nun anspre­chend auf der Seite anzu­zei­gen erstel­len wir ein Nutzermakro mit dem Namen "HelpDeskPanel". In die­sem nut­zen wir den vom Metadaten Add-On zur Verfügung gestell­ten Helper "metadataHelper" um dem aktu­ell defi­nier­ten Verantwortlichen zu erhal­ten und die­sen in eine anspre­chende HTML Darstellung zu inte­grie­ren. Hierzu haben wir ein Panel Makro und ein Profile Makro ger­en­dert und zusätz­lich den Optionalen Text des Verantwortlichen mit ausgegeben.

## @noparams
#set($metadataField=$metadataHelper.loadMetadataFieldByKey("metadatafield.contact.person",$content.space))
#set($metadataValue=$metadataHelper.loadContentMetadataValue($content,$metadataField))
#set($user=$action.userAccessor.getUserIfAvailable($metadataValue))
<ac:structured-macro ac:name="panel">
 <ac:parameter ac:name="title">Contact Person</ac:parameter>
 <ac:rich-text-body>
 #if($metadataValue && $metadataValue.trim() != "")
 <ac:structured-macro ac:name="profile">
 <ac:parameter ac:name="user"><ri:user ri:userkey="$user.key" /></ac:parameter>
 </ac:structured-macro> 
 #set($metadataFieldMessage=$metadataHelper.loadMetadataFieldByKey("metadatafield.contact.person.message",$content.space))
 #set($metadataValueMessage=$metadataHelper.loadContentMetadataValue($content,$metadataFieldMessage))
 <br>
 $!metadataValueMessage
 #else
 Please define a contact person
 #end
 </ac:rich-text-body>
</ac:structured-macro>

Bindet man das Makro nun in eine Seite ein, wird auto­ma­tisch der Verantwortliche aus­ge­le­sen und dargestellt.

viewpage
Eingebundenes Makro zur Darstellung des Seitenveranwortlichen

Da das Metadata Add-On vol­len Zugriff auf seine Daten für Makro/Nutzermakro Entwickler zulässt, erge­ben sich schier end­lose Anwendungsfälle um das eigene Confluence kla­rer zu Strukturieren und Informationen noch schnel­ler zu erhalten.

>> Als lang­jäh­ri­ger Atlassian Partner bera­ten wir Sie gerne zu ver­schie­de­nen Atlassian Lizenzen.

9. Juni 2015

Pin It on Pinterest