ok Confluence User Macro „edit-include“ Update für CONF 5.5 | CMS - Webdesign - Website

Confluence User Macro „edit-include“ Update für CONF 5.5

Für das geniale Enterprise Wiki Confluence gibt es ein User Macro von einem netten Power User aus der Community. Das Plugin ermöglichte die partielle Bearbeitung von Seiteninhalten, indem eine umfangreichere Seite aus mehreren Teilseiten durch include zusammengefügt wird und jeder Abschnitt aber durch einen Edit-Link schnell und übersichtlich editierbar ist. Der Edit-Link wird durch eine Filterung mit dem Show-If Macro nur für Space Admins sichtbar und stört somit nicht das Lesen durch den normalen User.

Siehe https://confluence.atlassian.com/display/DISC/edit-include+user+macro

Leider funktioniert dieses User Macro mit neueren Confluence Versionen nicht mehr.

Hier ein „grobes“ Update der Funktionaliät für CONF 5.5 (ohne Gewähr und evtl. nicht ganz vollständig):

## @param Page:title=Page|type=string|required=true|desc=Page Title
## @param Space:title=Space|type=spacekey|required=true|desc=Space Key
## @param ParentPage:title=Parent Page|type=string|required=false|desc=Parent page title
## @param TemplateName:title=Template Name|type=string|required=false|desc=Template name
#if(!$paramSpace)
  #set($spaceKey = $space.getKey() )
#end
#if($paramSpace != "")
  #set($spaceKey = $paramSpace )
#end
<ac:structured-macro ac:name="show-if">
  <ac:parameter ac:name="spacePermission">admin</ac:parameter>
  <ac:parameter ac:name="atlassian-macro-output-type">INLINE</ac:parameter>
  <ac:rich-text-body>
## kein Macro Parameter (auf alten Migrationsseiten)
   #if($param0 != "")
      #set($pageId = $pageManager.getPage($spaceKey,"$param0").getIdAsString()   )
   #else
      #set($pageId = $pageManager.getPage($spaceKey,"$paramPage").getIdAsString()   )
   #end
      <a class="editincludeLink" style="float:right; clear:right;" href="/confluence/pages/editpage.action?pageId=$pageId">edit</a>
  </ac:rich-text-body>
</ac:structured-macro>
## neue Macro-Daten mit speziellen Paramter-Definitionen
#if($paramPage && $paramSpace) 
   $action.getHelper().renderConfluenceMacro("{include:$paramSpace:$paramPage}") 
#end
## alte Macro-Daten ohne spezielle Paramter-Definition
#if($param0) 
   $action.getHelper().renderConfluenceMacro("{include:$param0}") 
#end