| ## Licensed to the Apache Software Foundation (ASF) under one |
| ## or more contributor license agreements. See the NOTICE file |
| ## distributed with this work for additional information |
| ## regarding copyright ownership. The ASF licenses this file |
| ## to you under the Apache License, Version 2.0 (the |
| ## "License"); you may not use this file except in compliance |
| ## with the License. You may obtain a copy of the License at |
| ## |
| ## http://www.apache.org/licenses/LICENSE-2.0 |
| ## |
| ## Unless required by applicable law or agreed to in writing, |
| ## software distributed under the License is distributed on an |
| ## "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| ## KIND, either express or implied. See the License for the |
| ## specific language governing permissions and limitations |
| ## under the License. |
| ## |
| #macro ( link $href $name $target $img $position $alt $border $width $height $title ) |
| #**##set ( $linkTitle = ' title="' + $name + '"' ) |
| #**##if( $target ) |
| #* *##set ( $linkTarget = ' target="' + $target + '"' ) |
| #**##else |
| #* *##set ( $linkTarget = "" ) |
| #**##end |
| #**##if ( $decoration.isLink( $href ) ) |
| #* *##set ( $linkClass = ' class="externalLink"' ) |
| #**##else |
| #* *##set ( $linkClass = "" ) |
| #**##end |
| #**##if ( $img ) |
| #* *##if ( $position == "left" ) |
| #* *#<a href="$href"$linkClass$linkTarget$linkTitle>#image($img $alt $border $width $height $title)$name</a>## |
| #* *##else |
| #* *#<a href="$href"$linkClass$linkTarget$linkTitle>$name #image($img $alt $border $width $height $title)</a>## |
| #* *##end |
| #**##else |
| #* *#<a href="$href"$linkClass$linkTarget$linkTitle>$name</a>## |
| #**##end |
| #end |
| ## |
| #macro ( image $img $alt $border $width $height $title ) |
| #**##if( $img ) |
| #* *##if ( !$decoration.isLink( $img ) ) |
| #* *##set ( $imgSrc = $PathTool.calculateLink( $img, $relativePath ) ) |
| #* *##set ( $imgSrc = $imgSrc.replaceAll( '\\', '/' ) ) |
| #* *##set ( $imgSrc = ' src="' + $imgSrc + '"' ) |
| #* *##else |
| #* *##set ( $imgSrc = ' src="' + $img + '"' ) |
| #* *##end |
| #* *##if( $alt ) |
| #* *##set ( $imgAlt = ' alt="' + $alt + '"' ) |
| #* *##else |
| #* *##set ( $imgAlt = ' alt=""' ) |
| #* *##end |
| #* *##if( $border ) |
| #* *##set ( $imgBorder = ' border="' + $border + '"' ) |
| #* *##else |
| #* *##set ( $imgBorder = "" ) |
| #* *##end |
| #* *##if( $width ) |
| #* *##set ( $imgWidth = ' width="' + $width + '"' ) |
| #* *##else |
| #* *##set ( $imgWidth = "" ) |
| #* *##end |
| #* *##if( $height ) |
| #* *##set ( $imgHeight = ' height="' + $height + '"' ) |
| #* *##else |
| #* *##set ( $imgHeight = "" ) |
| #* *##end |
| #* *##if( $title ) |
| #* *##set ( $imgTitle = ' title="' + $title + '"' ) |
| #* *##else |
| #* *##set ( $imgTitle = "" ) |
| #* *##end |
| #* *#<img class="imageLink"$imgSrc$imgAlt$imgBorder$imgWidth$imgHeight$imgTitle/>## |
| #**##end |
| #end |
| ## |
| #macro ( banner $banner $id ) |
| #**##if ( $banner ) |
| #* *##if( $banner.href ) |
| #* *##set ( $hrf = $banner.href ) |
| #* *##if ( !$decoration.isLink( $hrf ) ) |
| #* *##set ( $hrf = $PathTool.calculateLink( $hrf, $relativePath ) ) |
| #* *##set ( $hrf = $hrf.replaceAll( '\\', '/' ) ) |
| #* *##if ( ( $hrf == '' ) ) |
| #* *##set ( $hrf = './' ) |
| #* *##end |
| #* *##end |
| #* *#<a href="$hrf" id="$id"#if( $banner.alt ) title="$banner.alt"#end>## |
| #* *##else |
| #* *#<div id="$id">## |
| #* *##end |
| ## |
| #* *##if( $banner.src ) |
| #* *##set ( $src = $banner.src ) |
| #* *##if ( !$decoration.isLink( $src ) ) |
| #* *##set ( $src = $PathTool.calculateLink( $src, $relativePath ) ) |
| #* *##set ( $src = $src.replaceAll( '\\', '/' ) ) |
| #* *##end |
| #* *##if ( $banner.alt ) |
| #* *##set ( $alt = ' alt="' + $banner.alt + '"' ) |
| #* *##elseif ( $banner.name ) |
| #* *##set ( $alt = ' alt="' + $banner.name + '"' ) |
| #* *##else |
| #* *##set ( $alt = ' alt=""' ) |
| #* *##end |
| #* *##if( $banner.border ) |
| #* *##set ( $imgBorder = ' border="' + $banner.border + '"' ) |
| #* *##else |
| #* *##set ( $imgBorder = "" ) |
| #* *##end |
| #* *##if( $banner.width ) |
| #* *##set ( $imgWidth = ' width="' + $banner.width + '"' ) |
| #* *##else |
| #* *##set ( $imgWidth = "" ) |
| #* *##end |
| #* *##if( $banner.height ) |
| #* *##set ( $imgHeight = ' height="' + $banner.height + '"' ) |
| #* *##else |
| #* *##set ( $imgHeight = "" ) |
| #* *##end |
| #* *##if( $banner.title ) |
| #* *##set ( $bannerTitle=' title="' + $banner.title + '"' ) |
| #* *##else |
| #* *##set ( $bannerTitle="" ) |
| #* *##end |
| #* *#<img src="$src" $alt$bannerTitle$imgBorder$imgWidth$imgHeight/>## |
| #* *##else |
| #* *#$banner.name |
| #* *##end |
| ## |
| #* *##if( $banner.href ) |
| #* *#</a>## |
| #* *##else |
| #* *#</div> |
| #* *##end |
| #**##end |
| #end |
| ## |
| #macro ( links $links ) |
| #**##set ( $counter = 0 ) |
| #**##foreach( $item in $links ) |
| #* *##set ( $counter = $counter + 1 ) |
| #* *##set ( $currentItemHref = $PathTool.calculateLink( $item.href, $relativePath ) ) |
| #* *##set ( $currentItemHref = $currentItemHref.replaceAll( '\\', '/' ) ) |
| #* *##link( $currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title ) |
| #* *##if ( $links.size() > $counter ) |
| #* *# | |
| #* *##end |
| #**##end |
| #end |
| ## |
| #macro ( breadcrumbs $breadcrumbs ) |
| #**##foreach( $item in $breadcrumbs ) |
| #* *##set ( $currentItemHref = $PathTool.calculateLink( $item.href, $relativePath ) ) |
| #* *##set ( $currentItemHref = $currentItemHref.replaceAll( '\\', '/' ) ) |
| #* *##if ( ( $currentItemHref == '' ) ) |
| #* *##set ( $currentItemHref = './' ) |
| #* *##end |
| ## |
| #* *##link( $currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title ) |
| #**# > |
| #**##end |
| #**#$shortTitle |
| #**##if( $decoration.edit && $docRenderingContext.editable ) |
| #* *# <a href="$docRenderingContext.getDoxiaSourcePath( $decoration.edit )">[edit]</a> |
| #**##end |
| #end |
| ## |
| #macro ( displayTree $display $item ) |
| #**##if ( $item && $item.items && $item.items.size() > 0 ) |
| #* *##foreach( $subitem in $item.items ) |
| #* *##set ( $subitemHref = $PathTool.calculateLink( $subitem.href, $relativePath ) ) |
| #* *##set ( $subitemHref = $subitemHref.replaceAll( '\\', '/' ) ) |
| ## |
| #* *##if ( $alignedFileName == $subitemHref ) |
| #* *##set ( $display = true ) |
| #* *##end |
| ## |
| #* *##displayTree( $display $subitem ) |
| #* *##end |
| #**##end |
| #end |
| ## |
| #macro ( menuItem $item $indent ) |
| #**##set ( $collapseClass = "none" ) |
| #**##set ( $currentItemHref = $PathTool.calculateLink( $item.href, $relativePath ) ) |
| #**##set ( $currentItemHref = $currentItemHref.replaceAll( '\\', '/' ) ) |
| ## |
| #**##if ( $item && $item.items && $item.items.size() > 0 ) |
| #* *##if ( $item.collapse == false ) |
| #* *##set ( $collapseClass = "expanded" ) |
| #* *##else |
| #* *### By default collapsed |
| #* *##set ( $collapseClass = "collapsed" ) |
| #* *##end |
| ## |
| #* *##set ( $display = false ) |
| #* *##displayTree( $display $item ) |
| ## |
| #* *##if ( $alignedFileName == $currentItemHref || $display ) |
| #* *##set ( $collapseClass = "expanded" ) |
| #* *##end |
| #**##end |
| $indent <li class="$collapseClass">## |
| #**##if ( $item.img ) |
| #* *##if ( $item.position == "left" ) |
| #* *##if ( $alignedFileName == $currentItemHref ) |
| #* *#<strong>#image($item.img $item.alt $item.border $item.width $item.height $item.title) $item.name</strong> |
| #* *##else |
| #* *##link($currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title) |
| #* *##end |
| #* *##else |
| #* *##if ( $alignedFileName == $currentItemHref ) |
| #* *#<strong>$item.name #image($item.img $item.alt $item.border $item.width $item.height $item.title)</strong> |
| #* *##else |
| #* *##link($currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title) |
| #* *##end |
| #* *##end |
| #**##else |
| #* *##if ( $alignedFileName == $currentItemHref ) |
| #* *#<strong>$item.name</strong>## |
| #* *##else |
| #* *##link( $currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height $item.title ) |
| #* *##end |
| #**##end |
| #**##if ( $item && $item.items && $item.items.size() > 0 ) |
| #* *##if ( $collapseClass == "expanded" ) |
| |
| $indent <ul> |
| #* *##foreach( $subitem in $item.items ) |
| #* *##menuItem( $subitem "$indent " ) |
| #* *##end |
| $indent </ul>## |
| #* *##end |
| #**##end |
| #**#</li> |
| #end |
| ## |
| #macro ( mainMenu $menus ) |
| #**##foreach( $menu in $menus ) |
| #* *##if ( $menu.name ) |
| #* *##if ( $menu.img ) |
| #* *##if( $menu.position ) |
| #* *##set ( $position = $menu.position ) |
| #* *##else |
| #* *##set ( $position = "left" ) |
| #* *##end |
| ## |
| #* *##if ( !$decoration.isLink( $menu.img ) ) |
| #* *##set ( $src = $PathTool.calculateLink( $menu.img, $relativePath ) ) |
| #* *##set ( $src = $src.replaceAll( '\\', '/' ) ) |
| #* *##set ( $src = ' src="' + $src + '"' ) |
| #* *##else |
| #* *##set ( $src = ' src="' + $menu.img + '"' ) |
| #* *##end |
| ## |
| #* *##if( $menu.alt ) |
| #* *##set ( $alt = ' alt="' + $menu.alt + '"' ) |
| #* *##else |
| #* *##set ( $alt = ' alt="' + $menu.name + '"' ) |
| #* *##end |
| ## |
| #* *##if( $menu.border ) |
| #* *##set ( $border = ' border="' + $menu.border + '"' ) |
| #* *##else |
| #* *##set ( $border = ' border="0"' ) |
| #* *##end |
| ## |
| #* *##if( $menu.width ) |
| #* *##set ( $width = ' width="' + $menu.width + '"' ) |
| #* *##else |
| #* *##set ( $width = "" ) |
| #* *##end |
| #* *##if( $menu.height ) |
| #* *##set ( $height = ' height="' + $menu.height + '"' ) |
| #* *##else |
| #* *##set ( $height = "" ) |
| #* *##end |
| #* *##if( $menu.title ) |
| #* *##set ( $title = ' title="' + $menu.title + '"' ) |
| #* *##else |
| #* *##set ( $title = "" ) |
| #* *##end |
| ## |
| #* *##set ( $img = '<img class="imageLink"' + $src + $alt + $border + $width + $height + $title + "/>" ) |
| ## |
| #* *##if ( $position == "left" ) |
| <h5>$img $menu.name</h5> |
| #* *##else |
| <h5>$menu.name $img</h5> |
| #* *##end |
| #* *##else |
| <h5>$menu.name</h5> |
| #* *##end |
| #* *##end |
| #* *##if ( $menu.items && $menu.items.size() > 0 ) |
| <ul> |
| #* *##foreach( $item in $menu.items ) |
| #* *##menuItem( $item '' ) |
| #* *##end |
| </ul> |
| #* *##end |
| #**##end |
| #end |
| ## |
| #macro ( copyright ) |
| #**##if ( $project ) |
| #* *##if ( ${project.organization} && ${project.organization.name} ) |
| #* *##set ( $period = "" ) |
| #* *##else |
| #* *##set ( $period = "." ) |
| #* *##end |
| ## |
| #* *##set ( $currentYear = ${currentDate.year} + 1900 ) |
| ## |
| #* *##if ( ${project.inceptionYear} && ( ${project.inceptionYear} != ${currentYear.toString()} ) ) |
| ${project.inceptionYear}–${currentYear}${period}## |
| #* *##else |
| ${currentYear}${period}## |
| #* *##end |
| ## |
| #* *##if ( ${project.organization} ) |
| #* *##if ( ${project.organization.name} && ${project.organization.url} ) |
| #* *#<a href="$project.organization.url">${project.organization.name}</a>. |
| #* *##elseif ( ${project.organization.name} ) |
| #* *#${project.organization.name}. |
| #* *##end |
| #* *##end |
| #**##end |
| #end |
| ## |
| #macro ( publishDate $position $decorationPublishDate $version ) |
| #**##if ( $publishDate ) |
| #* *##set ( $dateValue = $dateFormat.format( $publishDate ) ) |
| #**##elseif ( $decoration.custom.getChild( 'publishDate' ) ) |
| #* *##set ( $dateValue = $decoration.custom.getChild( 'publishDate' ).getValue() ) |
| #**##else |
| #* *##set ( $dateValue = $dateFormat.format( $currentDate ) ) |
| #**##end |
| ## |
| #**##set ( $datePosition = $decorationPublishDate.position ) |
| #**##set ( $versionPosition = $version.position ) |
| ## |
| #**##set ( $breadcrumbs = $decoration.body.breadcrumbs ) |
| #**##set ( $links = $decoration.body.links ) |
| ## |
| #**##if ( $datePosition.equalsIgnoreCase( "right" ) && $links && $links.size() > 0 ) |
| #* *##set ( $prefix = " |" ) |
| #**##else |
| #* *##set ( $prefix = "" ) |
| #**##end |
| ## |
| #**##if ( $datePosition.equalsIgnoreCase( $position ) ) |
| #* *##if ( ( $datePosition.equalsIgnoreCase( "right" ) ) || ( $datePosition.equalsIgnoreCase( "bottom" ) ) ) |
| $prefix <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</span> |
| #* *##if ( $versionPosition.equalsIgnoreCase( $position ) ) |
|  | <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span> |
| #* *##end |
| #* *##elseif ( ( $datePosition.equalsIgnoreCase( "navigation-bottom" ) ) || ( $datePosition.equalsIgnoreCase( "navigation-top" ) ) ) |
| <div id="lastPublished"> |
| <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</span> |
| #* *##if ( $versionPosition.equalsIgnoreCase( $position ) ) |
|  | <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span> |
| #* *##end |
| </div> |
| #* *##elseif ( $datePosition.equalsIgnoreCase( "left" ) ) |
| <div class="xleft"> |
| <span id="publishDate">$i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateValue</span> |
| #* *##if ( $versionPosition.equalsIgnoreCase( $position ) ) |
|  | <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span> |
| #* *##end |
| #* *##if ( $breadcrumbs && $breadcrumbs.size() > 0 ) |
| | #breadcrumbs( $breadcrumbs ) |
| #* *##end |
| </div> |
| #* *##end |
| #**##elseif ( $versionPosition.equalsIgnoreCase( $position ) ) |
| #* *##if ( ( $versionPosition.equalsIgnoreCase( "right" ) ) || ( $versionPosition.equalsIgnoreCase( "bottom" ) ) ) |
| $prefix <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span> |
| #* *##elseif ( ( $versionPosition.equalsIgnoreCase( "navigation-bottom" ) ) || ( $versionPosition.equalsIgnoreCase( "navigation-top" ) ) ) |
| <div id="lastPublished"> |
| <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span> |
| </div> |
| #* *##elseif ( $versionPosition.equalsIgnoreCase( "left" ) ) |
| <div class="xleft"> |
| <span id="projectVersion">$i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}</span> |
| #* *##if ( $breadcrumbs && $breadcrumbs.size() > 0 ) |
| | #breadcrumbs( $breadcrumbs ) |
| #* *##end |
| </div> |
| #* *##end |
| #**##elseif ( $position.equalsIgnoreCase( "left" ) ) |
| #* *##if ( $breadcrumbs && $breadcrumbs.size() > 0 ) |
| <div class="xleft"> |
| #* *##breadcrumbs( $breadcrumbs ) |
| </div> |
| #* *##end |
| #**##end |
| #end |
| ## |
| #macro ( poweredByLogo $poweredBy ) |
| #**##if( $poweredBy ) |
| #* *##foreach ($item in $poweredBy) |
| #* *##if( $item.href ) |
| #* *##set ( $href = $PathTool.calculateLink( $item.href, $relativePath ) ) |
| #* *##set ( $href = $href.replaceAll( '\\', '/' ) ) |
| #* *##else |
| #* *##set ( $href="https://maven.apache.org/" ) |
| #* *##end |
| ## |
| #* *##if( $item.name ) |
| #* *##set ( $name = $item.name ) |
| #* *##else |
| #* *##set ( $name = $i18n.getString( "site-renderer", $locale, "template.builtby" ) ) |
| #* *##set ( $name = "${name} Maven" ) |
| #* *##end |
| ## |
| #* *##if( $item.img ) |
| #* *##set ( $img = $item.img ) |
| #* *##else |
| #* *##set ( $img = "images/logos/maven-feather.png" ) |
| #* *##end |
| ## |
| #* *##if ( !$decoration.isLink( $img ) ) |
| #* *##set ( $img = $PathTool.calculateLink( $img, $relativePath ) ) |
| #* *##set ( $img = $img.replaceAll( '\\', '/' ) ) |
| #* *##end |
| ## |
| #* *##if( $item.alt ) |
| #* *##set ( $alt = ' alt="' + $item.alt + '"' ) |
| #* *##else |
| #* *##set ( $alt = ' alt="' + $name + '"' ) |
| #* *##end |
| ## |
| #* *##if( $item.border ) |
| #* *##set ( $border = ' border="' + $item.border + '"' ) |
| #* *##else |
| #* *##set ( $border = "" ) |
| #* *##end |
| ## |
| #* *##if( $item.width ) |
| #* *##set ( $width = ' width="' + $item.width + '"' ) |
| #* *##else |
| #* *##set ( $width = "" ) |
| #* *##end |
| #* *##if( $item.height ) |
| #* *##set ( $height = ' height="' + $item.height + '"' ) |
| #* *##else |
| #* *##set ( $height = "" ) |
| #* *##end |
| #* *##if( $item.title ) |
| #* *##set ( $title = ' title="' + $item.title + '"' ) |
| #* *##else |
| #* *##set ( $title = "" ) |
| #* *##end |
| ## |
| <a href="$href" title="$name" class="poweredBy"> |
| <img class="poweredBy" $alt src="$img" $border $width $height $title /> |
| </a> |
| #* *##end |
| #* *##if( $poweredBy.isEmpty() ) |
| <a href="http://maven.apache.org/" title="$i18n.getString( "site-renderer", $locale, "template.builtby" ) Maven" class="poweredBy"> |
| <img class="poweredBy" alt="$i18n.getString( "site-renderer", $locale, "template.builtby" ) Maven" src="$relativePath/images/logos/maven-feather.png" /> |
| </a> |
| #* *##end |
| #**##else |
| <a href="http://maven.apache.org/" title="$i18n.getString( "site-renderer", $locale, "template.builtby" ) Maven" class="poweredBy"> |
| <img class="poweredBy" alt="$i18n.getString( "site-renderer", $locale, "template.builtby" ) Maven" src="$relativePath/images/logos/maven-feather.png" /> |
| </a> |
| #**##end |
| #end |
| ## |
| #macro ( googleAnalytics $accountId ) |
| #**##if( $accountId && $accountId != "" ) |
| <!-- Google Analytics --> |
| <script> |
| (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ |
| (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), |
| m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
| })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); |
| ga('create', '$accountId', 'auto'); |
| ga('send', 'pageview'); |
| ga('set', 'anonymizeIp', true); |
| ga('set', 'forceSSL', true); |
| </script> |
| #**##end |
| #end |
| ## |
| #macro( generatedBy ) |
| Apache Maven Doxia Site Renderer#if( $doxiaSiteRendererVersion ) $doxiaSiteRendererVersion#end## |
| #end |
| ## |