Changes for page Navigation

Last modified by Benjamin Fischer on 2025/05/27 11:36

From version 4.1
edited by Benjamin Fischer
on 2024/10/24 16:39
Change comment: There is no comment for this version
To version 5.1
edited by Benjamin Fischer
on 2024/11/20 12:55
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,19 +1,16 @@
1 1  {{velocity}}
2 -#set ($depth = 3)
3 -#set ($limit = 10)
4 -#macro (navItem $rootName $level)
2 +#macro (navItem $rootName $depth=3 $chilsMax=10 $childsMin=2 $level=1)
5 5   #set ($rootDoc = $xwiki.getDocument($rootName))
6 6   #set ($canView = $rootDoc.hasAccess("view"))
7 7   #if ($canView)
8 - #set ($children = $rootDoc.getChildren($limit, 0))
9 - #if ($rootDoc.getContent().isEmpty() && !$children.isEmpty())
10 - $stringtool.repeat('*', $level) $rootDoc.plainTitle
11 - #else
12 - $stringtool.repeat('*', $level) {{html}}<a href="$rootDoc.getURL()">$escapetool.xml($rootDoc.plainTitle)</a>{{/html}}
13 - #end
14 - #if ($level < $depth)
6 + #set ($children = $rootDoc.getChildren())
7 + #set ($hasChilds = ($level < $depth) && !$children.empty())
8 + #set ($showChilds = (1 < $children.size()) && ($children.size() < 10))
9 +
10 + #if($howChilds)(% class="open" %)#end$stringtool.repeat('*', $level)#if($rootDoc.getContent().isEmpty()&&$hasChilds) $rootDoc.plainTitle #else [[$rootDoc.getFullName()]] #end
11 + #if($hasChilds)
15 15   #foreach ($child in $children)
16 - #navItem ($child $mathtool.add($level, 1))
13 + #navItem ($child, $depth, $chilsMax, $childsMin, $mathtool.add($level, 1))
17 17   #end
18 18   #end
19 19   #end
... ... @@ -23,8 +23,8 @@
23 23  * [[{{icon name="book"/}}Material collection>>Material collection.WebHome]]
24 24  * [[{{icon name="address-book"/}}People in ErUM-Data>>People in ErUM-Data.WebHome]]
25 25  * ----
26 -#navItem ("DIG-UM.WebHome", 1)
27 -#navItem ("Internal.WebHome", 1)
23 +#navItem ("DIG-UM.WebHome")
24 +#navItem ("Internal.WebHome")
28 28  #if ($hasEdit)
29 29  * ----
30 30  * {{icon name="question"/}} Help