Änderungen von Dokument Expand

Zuletzt geändert von xwikiadmin am 2025/05/21 10:12

Von Version 1.1
bearbeitet von xwikiadmin
am 2023/03/07 16:26
Änderungskommentar: Install extension [com.xwiki.pro:xwiki-pro-macros/1.7]
Auf Version 2.1
bearbeitet von xwikiadmin
am 2023/04/25 11:49
Änderungskommentar: Install extension [com.xwiki.pro:xwiki-pro-macros/1.7.1]

Zusammenfassung

Details

XWiki.WikiMacroClass[0]
Makro-Code
... ... @@ -1,37 +1,53 @@
1 -{{velocity}}
2 -$xwiki.ssx.use('Confluence.Macros.Expand')
3 -#if (!$expandMacroColllapseId)
4 - #set ($expandMacroColllapseId = 0)
5 -#else
6 - #set ($expandMacroColllapseId = $expandMacroColllapseId + 1)
7 -#end
8 -#set ($opened = $xcontext.action == 'edit')
9 -#set ($accordionId = "accordion-$escapetool.xml($expandMacroColllapseId)")
10 -#set ($toggleId = "toggle-$expandMacroColllapseId")
11 -#set ($expandId = "collapse-$expandMacroColllapseId")
1 +{{velocity output="false"}}
2 +#macro (executeMacro)
3 + $xwiki.ssx.use('Confluence.Macros.Expand')
4 + #if (!$expandMacroColllapseId)
5 + #set ($expandMacroColllapseId = 0)
6 + #else
7 + #set ($expandMacroColllapseId = $expandMacroColllapseId + 1)
8 + #end
9 + #set ($opened = $xcontext.action == 'edit')
10 + #set ($accordionId = "accordion-$escapetool.xml($expandMacroColllapseId)")
11 + #set ($toggleId = "toggle-$expandMacroColllapseId")
12 + #set ($expandId = "collapse-$expandMacroColllapseId")
12 12  
13 -{{html clean="false" wiki="true"}}
14 -<div class="panel-group confluence-expand-macro" id="${accordionId}" role="tablist">
15 - <div class="panel panel-default">
16 - <div class="panel-heading" role="tab" id="${toggleId}">
17 - <h4 class="panel-title">
18 - <a
19 - role="button"
20 - data-toggle="collapse"
21 - data-parent="#${accordionId}"
22 - href="#${expandId}"
23 - #if($opened)aria-expanded="true"#end
24 - aria-controls="${expandId}"
25 - ><span class="glyphicon glyphicon-menu-right" aria-hidden="true"></span>{{wikimacroparameter name="title" /}}</a>
26 - </h4>
27 - </div>
28 - <div id="${expandId}" class="panel-collapse collapse #if($opened)in#end" role="tabpanel" aria-labelledby="${toggleId}">
29 - <div class="panel-body">
30 - {{wikimacrocontent /}}
14 + {{html clean="false" wiki="true"}}
15 + <div class="panel-group confluence-expand-macro" id="${accordionId}" role="tablist">
16 + <div class="panel panel-default">
17 + <div class="panel-heading" role="tab" id="${toggleId}">
18 + <h4 class="panel-title">
19 + <a
20 + role="button"
21 + data-toggle="collapse"
22 + data-parent="#${accordionId}"
23 + href="#${expandId}"
24 + #if($opened)aria-expanded="true"#end
25 + aria-controls="${expandId}"
26 + ><span class="glyphicon glyphicon-menu-right" aria-hidden="true"></span>{{wikimacroparameter name="title" /}}</a>
27 + </h4>
31 31   </div>
29 + <div id="${expandId}" class="panel-collapse collapse #if($opened)in#end" role="tabpanel" aria-labelledby="${toggleId}">
30 + <div class="panel-body">
31 + {{wikimacrocontent /}}
32 + </div>
33 + </div>
32 32   </div>
33 - </div>
34 - </div>
35 -{{/html}}
35 + </div>
36 + {{/html}}
37 +#end
38 +{{/velocity}}
36 36  
40 +{{include reference="Licenses.Code.VelocityMacros"/}}
41 +
42 +{{velocity}}
43 +## We need to check if there is a valid license because the macro is registered even if the user doesn't have view right
44 +## on the macro definition page. See XWIKI-14828: Rendering macros defined in wiki pages are available to users that
45 +## don't have view right on those pages.
46 +#if ($services.licensing.licensor.hasLicensureForEntity($xcontext.macro.doc.documentReference))
47 + #executeMacro
48 +#else
49 + {{error}}
50 + #getMissingLicenseMessage('proMacros.extension.name')
51 + {{/error}}
52 +#end
37 37  {{/velocity}}