ok Confluence 5.5 User Macro „show-spaces-descriptions“ | CMS - Webdesign - Website

Confluence 5.5 User Macro „show-spaces-descriptions“

Dieses Confluence User Macro listet alle Spaces auf mit einem definierten Space Label (= Space Category). Per Klick auf einen Spacetitel in der Liste erhält man die Space Description angezeigt. Dieses User Macro zeigt die Space-Titel und Descriptions auch für User an, die keine Berechtigung haben, den Space zu sehen. Dies kann ein Vorteil sein, wenn man z.B. neuen Usern einen Überblick über die Inhalte verschaffen möchte und die Möglichkeit, sich an z.B. den Space Owner zu wenden, der in der Description hinterlegt wird.

## Macro title: show-spaces-descriptions
## Macro has a body: N
## List of all spaces with a given category/label. Klick on a space shows space description 
## Developed by: Stefan Baader
## Date created: 29/07/2014
## @param CategoryLabel:title=Space Category / Label|type=string|required=true|desc=the space category / label to filter the spaces
#### take URL parameter "skey": ####
#set($skey= $req.getParameter("skey") )
#if($!skey)
  #set($mySpace = $spaceManager.getSpace($!skey) )
  <div style="padding:5px; border:1px solid red; background-color:#FCFCA4">
  <p id="opsselection">Selected Space:<br />
  <strong style="font-size:larger">$mySpace.getName()</strong> (key: $skey)
  </p>
#if( $mySpace.getDescription().toString() )
  <p>
  $mySpace.getDescription().getContentEntityObject().getBodyAsStringWithoutMarkup() 
  </p>
#end
</div>
#end
<hr />
<p><strong style="font-size:larger">List of Spaces with category $!paramCategoryLabel:</strong></p>
#set( $url = "$req.getScheme()://$req.getServerName()$req.contextPath/pages/viewpage.action?pageId=$content.getIdAsString()" )
#set($allSpaces = $spaceManager.getAllSpaces() )
#foreach($s in $allSpaces )
  #set( $labellist = $s.getDescription().getLabellings() )
  #foreach($label in $labellist)
     #if( $label.getLabel() == "$!paramCategoryLabel" && $s.isGlobal() )
       <li><a href="$url&skey=$s.getKey()#opsselection" target="_top" >$s.getName()</a>
     #end
  #end
#end