Changes for page APIMacro

Last modified by jklein on 2025/06/24 11:07

From version 39.4
edited by jklein
on 2025/06/03 07:30
Change comment: There is no comment for this version
To version 43.4
edited by jklein
on 2025/06/03 08:02
Change comment: There is no comment for this version

Summary

Details

XWiki.JavaScriptExtension[0]
Code
... ... @@ -1,7 +1,7 @@
1 1  require(['jquery'], function($) {
2 2   function onClickHeader() {
3 3   var header = $(this),
4 - content = header.next('.showhidecontent'),
4 + content = header.nextAll('.showhidecontent').first(),
5 5   effect = header.attr('data-show-effect'),
6 6   duration = parseInt(header.attr('data-show-duration')) || 300;
7 7  
... ... @@ -12,10 +12,10 @@
12 12   var isVisible = content.is(':visible');
13 13   var newState = !isVisible;
14 14  
15 - // Toggle 'open'-Klasse für Rotation
15 + // Toggle 'open'-Klasse für Pfeildrehung
16 16   header.toggleClass('open', newState);
17 17  
18 - // Ein-/Ausblenden des Inhalts
18 + // Zeige/verstecke Inhalt
19 19   content.stop()[effect](duration);
20 20   }
21 21  
XWiki.WikiMacroClass[0]
Macro code
... ... @@ -17,13 +17,8 @@
17 17   #set($effect = "slideToggle")
18 18  #end
19 19  #set($effectduration = $mathtool.mul(1000,$mparams.effectduration))
20 +#set($title = $escapetool.xml($mparams.title))
20 20  
21 -## Titel vorbereiten als Wiki-Syntax und gerendert
22 -#set($rawTitle = $mparams.title)
23 -#if($rawTitle && $rawTitle != "")
24 - #set($wikiSyntaxTitle = "= $rawTitle =")
25 -#end
26 -
27 27  {{html clean=false}}
28 28  <div class="showhide-header"
29 29   #if($id && $id!="") id="showhideheader${id}" #end
... ... @@ -30,19 +30,26 @@
30 30   data-show-duration="$effectduration"
31 31   data-show-effect="$effect">
32 32   <div class="showhide-header-flex">
33 - <div class="showhide-title">
34 - #evaluate($wikiSyntaxTitle)
35 - </div>
28 + <div class="showhide-title">$title</div>
36 36   <div class="showhide-arrow">&#9654;</div> ## Unicode ▶
37 37   </div>
38 38  </div>
39 39  {{/html}}
40 40  
41 -(% class="showhidecontent" #if($id && $id!="")id="showhidecontent${id}" #end#if($xcontext.action != 'edit') style="display: none;"#end %)
42 -(((
43 -(((
44 -{{wikimacrocontent /}}
45 -)))
46 -)))
47 -{{/velocity}}
34 +#set($language = $mparams.language)
35 +#if(!$language || $language == "")
36 + #set($language = "bash")
37 +#end
48 48  
39 +#set($codeStart = '{{code language="' + $language + '"}}')
40 +#set($codeEnd = '{{/code}}')
41 +#set($content = $codeStart + $wikimacrocontent + $codeEnd)
42 +
43 +{{html clean=false}}
44 +<div class="showhidecontent"
45 + #if($id && $id!="") id="showhidecontent${id}" #end
46 + #if($xcontext.action != 'edit') style="display: none;" #end>
47 + $xwiki.renderText($content, $doc.syntaxId)
48 +</div>
49 +{{/html}}
50 +{{/velocity}}
© Aagon GmbH 2025
Besuchen Sie unsere Aagon-Community