Changes for page Navigation

Last modified by Benjamin Fischer on 2025/06/03 16:18

From version 2.3
edited by Benjamin Fischer
on 2024/10/24 11:35
Change comment: There is no comment for this version
To version 6.1
edited by Benjamin Fischer
on 2024/11/20 12:56
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,29 +6,31 @@
1 -* [[{{displayIcon name="home"/}} Home>>Main.WebHome]]
2 -* ----
3 -* [[{{displayIcon name="book"/}} Material collection>>Material collection.WebHome]]
4 -* [[{{displayIcon name="address-book"/}} People in ErUM>>People in ErUM.WebHome]]
5 -* ----
6 6  {{velocity}}
7 -#set ($depth = 3)
8 -#set ($limit = 10)
9 -#macro (navItem $rootName $level)
2 +#macro (navItem $rootName $depth=3 $chilsMax=10 $childsMin=2 $level=1)
10 10   #set ($rootDoc = $xwiki.getDocument($rootName))
11 11   #set ($canView = $rootDoc.hasAccess("view"))
12 12   #if ($canView)
13 - $stringtool.repeat('*', $level) {{html}}<a href="$rootDoc.getURL()">$escapetool.xml($rootDoc.plainTitle)</a>{{/html}}
14 - #if ($level < $depth)
15 - #foreach ($child in $rootDoc.getChildren($limit, 0))
16 - #navItem ($child $mathtool.add($level, 1))
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)
12 + #foreach ($child in $children)
13 + #navItem ($child, $depth, $chilsMax, $childsMin, $mathtool.add($level, 1))
17 17   #end
18 18   #end
19 19   #end
20 20  #end
21 -#navItem ("DIG-UM.WebHome", 1)
22 -#navItem ("Internal.WebHome", 1)
18 +* [[{{icon name="home"/}}Home>>Main.WebHome]]
19 +* ----
20 +* [[{{icon name="book"/}}Material collection>>Material collection.WebHome]]
21 +* [[{{icon name="address-book"/}}People in ErUM-Data>>People in ErUM-Data.WebHome]]
22 +* ----
23 +#navItem ("DIG-UM.WebHome")
24 +#navItem ("Internal.WebHome")
23 23  #if ($hasEdit)
24 24  * ----
25 -* {{displayIcon name="question"/}} Help
27 +* {{icon name="question"/}} Help
26 26  ** [[XWiki Syntax Guide>>XWiki.XWikiSyntax]]
27 -** [[{{displayIcon name="font-awesome"/}} FontAwesome Icons>>https://fontawesome.com/v4/icons/]]
29 +** [[{{icon name="font-awesome"/}} FontAwesome Icons>>https://fontawesome.com/v4/icons/]]
28 28  #end
29 29  {{/velocity}}
XWiki.UIExtensionClass[0]
Cached
... ... @@ -1,0 +1,1 @@
1 +No
Asynchronous rendering
... ... @@ -1,0 +1,1 @@
1 +No
Executed Content
... ... @@ -1,6 +1,6 @@
1 1  {{velocity}}
2 2  #panelheader("Navigation")
3 -{{menu type="vertical collapsible open"
3 +{{menu type="vertical collapsible"
4 4  label="~N~a~v~i~g~a~t~i~o~n"}}{{include
5 5  reference="$uix.doc.documentReference" /}}
6 6  {{/menu}}
XWiki.StyleSheetExtension[0]
Caching policy
... ... @@ -1,0 +1,1 @@
1 +default
Code
... ... @@ -1,0 +1,18 @@
1 +.panel .menu.menu-vertical {
2 + li {
3 + padding: 0.05em;
4 + }
5 + ul {
6 + margin-top: 0.1em;
7 + }
8 + .xDropdown-header {
9 + white-space: nowrap;
10 + }
11 + .xDropdown > .xDropdown-header > .xDropdown-header-toggle::before {
12 + transform: rotate(-90deg);
13 + }
14 + .xDropdown.open > .xDropdown-header > .xDropdown-header-toggle::before {
15 + transform: rotate(0deg);
16 + }
17 +}
18 +
Content Type
... ... @@ -1,0 +1,1 @@
1 +LESS
Name
... ... @@ -1,0 +1,1 @@
1 +Fixup Menu Style
Parse content
... ... @@ -1,0 +1,1 @@
1 +No
Use this extension
... ... @@ -1,0 +1,1 @@
1 +always