Changes for page Menu Macro
Last modified by Leon Poon on 2024/03/23 04:30
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -3,9 +3,11 @@ 3 3 = Horizontal Menu = 4 4 5 5 {{velocity}} 6 +#set ($menuTemplateDoc = $xwiki.getDocument('MenuTemplate')) 6 6 {{code language="none"}} 7 7 {{menu type="horizontal fixedWidth"}} 8 -$xwiki.getDocument('MenuTemplate').content 9 +## No way to escape content in the code macro, so just remove {, see https://jira.xwiki.org/browse/XRENDERING-13. 10 +$menuTemplateDoc.content.replace('{', '') 9 9 {{/menu}} 10 10 {{/code}} 11 11 {{/velocity}}
- XWiki.WikiMacroClass[0]
-
- Macro code
-
... ... @@ -9,10 +9,14 @@ 9 9 #set ($discard = $xwiki.ssx.use("$xcontext.macro.doc.prefixedFullName", {'colorTheme': $colorTheme})) 10 10 #set ($discard = $xwiki.jsx.use("$xcontext.macro.doc.prefixedFullName")) 11 11 #if($type.contains('horizontal')) 12 + ## Make sure the id is non-empty for horizontal menus as otherwise the toggle doesn't work. 13 + #if ($stringtool.isBlank("$!id")) 14 + #set ($id = $wikimacro.context.getXDOM().getIdGenerator().generateUniqueId("M", "GeneratedMenuId")) 15 + #end 12 12 (% role="navigation" class="menu-horizontal-toggle" %)((( 13 13 (% class="navbar-header" %)((( 14 14 {{html}} 15 - <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#$!{id}" aria-expanded="false"> 19 + <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#$!{escapetool.xml($id)}" aria-expanded="false"> 16 16 <span class="sr-only"></span> 17 17 <span class="icon-bar"></span> 18 18 <span class="icon-bar"></span> ... ... @@ -20,13 +20,13 @@ 20 20 </button> 21 21 {{/html}} 22 22 ))) 23 - (% id="${id}" class="menu menu-$!type collapse navbar-collapse" %)((( 24 - $xcontext.macro.content27 + (% id="$!{services.rendering.escape($id, 'xwiki/2.1')}" class="menu menu-${services.rendering.escape($!type, 'xwiki/2.1')} collapse navbar-collapse" %)((( 28 + {{wikimacrocontent/}} 25 25 ))) 26 26 ))) 27 27 #else 28 - (% #if ("$!id" != '') id="$id"#end class="menu menu-$!type" %)((( 29 - $xcontext.macro.content32 + (% #if ("$!id" != '') id="${services.rendering.escape($id, 'xwiki/2.1')}"#end class="menu menu-${services.rendering.escape($!type, 'xwiki/2.1')}" %)((( 33 + {{wikimacrocontent/}} 30 30 ))) 31 31 #end 32 32 {{/velocity}} - Macro content type
-
... ... @@ -1,0 +1,1 @@ 1 +Wiki