#end
#set ( $pages = $project.getClass().forName('java.util.LinkedHashMap').newInstance() )
#set ( $stack = $project.getClass().forName('java.util.LinkedList').newInstance() )
-#macro ( buildPages $item, $rename )
+#macro ( buildPages $item )
#if ($debug)
<!-- VISITING PAGE - href: $item.href / name: $item.name -->
#end
#end
#end
#foreach ( $entry in $item.items )
-#buildPages ( $entry, $rename )
+#buildPages ( $entry )
#end
#set ( $page = $stack.pop() )
#set ( $crumbs = $project.getClass().forName('java.util.LinkedList').newInstance() )
#foreach ( $entry in $stack )
+#if ( !$foreach.last )
#set ( $sinkhole = $crumbs.push($entry.href) )
#end
+#end
## Hardcoded adjustment for `*-mojo.html`-pages of a maven-plugin
#if ( $currentItemHref.endsWith("-mojo.html") )
#set ( $sinkhole = $pages.get("plugin-info.html").get("childs").add($currentItemHref) )
#end
#set ( $sinkhole = $page.put("crumbs", $crumbs) )
#else
-#if ($rename)
#if ($debug)
<!-- RENAMING already seen PAGE: href=$currentItemHref, FROM name=$pages.get($currentItemHref).name TO name=$item.name -->
#end
#set ( $sinkhole = $pages.get($currentItemHref).put("name", $item.name) )
-#else
-#if ($debug)
-<!-- SKIPPING already seen PAGE: href=$currentItemHref, name=$item.name -->
-#end
-#end
#end
#end
<h1 id="sili-title">$!{shortTitle}</h1>
## Custom Variablen einlesen
#set ( $menuName = $site.custom.getChild( 'menuName' ).getValue() )
#set ( $debug = $site.custom.getChild( 'debug' ).getValue() )
+## Die Root der Seiten-Hierarchie wird explizit erzeugt
+#if ($debug)
+<!-- PREPARING ROOT-ENTRY - name: $project.name ref: index.html -->
+#end
+#set ( $page = $project.getClass().forName('java.util.LinkedHashMap').newInstance() )
+#set ( $sinkhole = $page.put("name", $project.name) )
+#set ( $sinkhole = $page.put("href", 'index.html') )
+#set ( $sinkhole = $page.put("childs", $project.getClass().forName('java.util.LinkedList').newInstance()) )
+#set ( $sinkhole = $pages.put($page.href, $page) )
+#set ( $sinkhole = $stack.push( $page ) )
## Seiten einlesen
#foreach ( $menu in $site.body.menus )
## Zuerst alle anderen MenĂ¼s verarbeiten
<!-- READING MENU - name: $menu.name ref: $menu.ref -->
#end
#foreach ( $item in $menu.items )
-#buildPages ( $item, false )
+#buildPages ( $item )
#end
#end
#end
<!-- READING MENU - name: $menu.name ref: $menu.ref -->
#end
#foreach ( $item in $menu.items )
-#buildPages ( $item, true )
+#buildPages ( $item )
#end
#end
#end