#macro ( link $href $name $target $img $position $alt $border $width $height ) #set ( $linkTitle = ' title="' + $name + '"' ) #if( $target ) #set ( $linkTarget = ' target="' + $target + '"' ) #else #set ( $linkTarget = "" ) #end #if ( $href.toLowerCase().startsWith("http:/") || $href.toLowerCase().startsWith("https:/") || $href.toLowerCase().startsWith("ftp:/") || $href.toLowerCase().startsWith("mailto:/") || $href.toLowerCase().startsWith("file:/") || ($href.toLowerCase().indexOf("://") != -1) ) #set ( $linkClass = ' class="externalLink"' ) #else #set ( $linkClass = "" ) #end #if ( $img ) #if ( $position == "left" ) #image($img $alt $border $width $height)$name #else $name #image($img $alt $border $width $height) #end #else $name #end #end ## #macro ( image $img $alt $border $width $height ) #if( $img ) #if ( ! ( $img.toLowerCase().startsWith("http:/") || $img.toLowerCase().startsWith("https:/") || $img.toLowerCase().startsWith("ftp:/") || $img.toLowerCase().startsWith("mailto:/") || $img.toLowerCase().startsWith("file:/") || ($img.toLowerCase().indexOf("://") != -1) ) ) #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 #end #end #macro ( banner $banner $id ) #if ( $banner ) #if( $banner.href ) #set ( $hrf = $banner.href ) #if ( ! ( $hrf.toLowerCase().startsWith("http:/") || $hrf.toLowerCase().startsWith("https:/") || $hrf.toLowerCase().startsWith("ftp:/") || $hrf.toLowerCase().startsWith("mailto:/") || $hrf.toLowerCase().startsWith("file:/") || ($hrf.toLowerCase().indexOf("://") != -1) ) ) #set ( $hrf = $PathTool.calculateLink( $hrf, $relativePath ) ) #set ( $hrf = $hrf.replaceAll( '\\', '/' ) ) #if ( ( $hrf == '' ) ) #set ( $hrf = './' ) #end #end #else
#end ## #if( $banner.src ) #set ( $src = $banner.src ) #if ( ! ( $src.toLowerCase().startsWith("http:/") || $src.toLowerCase().startsWith("https:/") || $src.toLowerCase().startsWith("ftp:/") || $src.toLowerCase().startsWith("mailto:/") || $src.toLowerCase().startsWith("file:/") || ($src.toLowerCase().indexOf("://") != -1) ) ) #set ( $src = $PathTool.calculateLink( $src, $relativePath ) ) #set ( $src = $src.replaceAll( '\\', '/' ) ) #end #if ( $banner.alt ) #set ( $alt = $banner.alt ) #else #set ( $alt = $banner.name ) #end $alt #else $banner.name #end ## #if( $banner.href ) #else
#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 ) #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 ) > #end $title #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 ) #set ( $collapse = "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 ( $collapse = "expanded" ) #else ## By default collapsed #set ( $collapse = "collapsed" ) #end ## #set ( $display = false ) #displayTree( $display $item ) ## #if ( $alignedFileName == $currentItemHref || $display ) #set ( $collapse = "expanded" ) #end #end
  • #if ( $item.img ) #if ( $item.position == "left" ) #if ( $alignedFileName == $currentItemHref ) #image($item.img $item.alt $item.border $item.width $item.height) $item.name #else #link($currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height) #end #else #if ( $alignedFileName == $currentItemHref ) $item.name #image($item.img $item.alt $item.border $item.width $item.height) #else #link($currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height) #end #end #else #if ( $alignedFileName == $currentItemHref ) $item.name #else #link( $currentItemHref $item.name $item.target $item.img $item.position $item.alt $item.border $item.width $item.height ) #end #end #if ( $item && $item.items && $item.items.size() > 0 ) #if ( $collapse == "expanded" ) #end #end
  • #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 ( ! ( $menu.img.toLowerCase().startsWith("http:/") || $menu.img.toLowerCase().startsWith("https:/") || $menu.img.toLowerCase().startsWith("ftp:/") || $menu.img.toLowerCase().startsWith("mailto:/") || $menu.img.toLowerCase().startsWith("file:/") || ($menu.img.toLowerCase().indexOf("://") != -1) ) ) #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 ## #set ( $img = '" ) ## #if ( $position == "left" )
    $img $menu.name
    #else
    $menu.name $img
    #end #else
    $menu.name
    #end #end #if ( $menu.items && $menu.items.size() > 0 ) #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} ) ${project.organization.name}. #elseif ( ${project.organization.name} ) ${project.organization.name}. #end #end #end #end ## #macro ( publishDate $position $publishDate $version ) #if ( $publishDate && $publishDate.format ) #set ( $format = $publishDate.format ) #else #set ( $format = "yyyy-MM-dd" ) #end ## $dateFormat.applyPattern( $format ) ## #set ( $dateToday = $dateFormat.format( $currentDate ) ) ## #if ( $publishDate && $publishDate.position ) #set ( $datePosition = $publishDate.position ) #else #set ( $datePosition = "left" ) #end ## #if ( $version ) #if ( $version.position ) #set ( $versionPosition = $version.position ) #else #set ( $versionPosition = "left" ) #end #else #set ( $version = "" ) #set ( $versionPosition = "left" ) #end ## #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 $i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateToday #if ( $versionPosition.equalsIgnoreCase( $position ) )  | $i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version} #end #elseif ( ( $datePosition.equalsIgnoreCase( "navigation-bottom" ) ) || ( $datePosition.equalsIgnoreCase( "navigation-top" ) ) )
    $i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateToday #if ( $versionPosition.equalsIgnoreCase( $position ) )  | $i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version} #end
    #elseif ( $datePosition.equalsIgnoreCase("left") )
    $i18n.getString( "site-renderer", $locale, "template.lastpublished" ): $dateToday #if ( $versionPosition.equalsIgnoreCase( $position ) )  | $i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version} #end #if ( $breadcrumbs && $breadcrumbs.size() > 0 ) | #breadcrumbs( $breadcrumbs ) #end
    #end #elseif ( $versionPosition.equalsIgnoreCase( $position ) ) #if ( ( $versionPosition.equalsIgnoreCase( "right" ) ) || ( $versionPosition.equalsIgnoreCase( "bottom" ) ) ) $prefix $i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version} #elseif ( ( $versionPosition.equalsIgnoreCase( "navigation-bottom" ) ) || ( $versionPosition.equalsIgnoreCase( "navigation-top" ) ) )
    $i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version}
    #elseif ( $versionPosition.equalsIgnoreCase("left") )
    $i18n.getString( "site-renderer", $locale, "template.version" ): ${project.version} #if ( $breadcrumbs && $breadcrumbs.size() > 0 ) | #breadcrumbs( $breadcrumbs ) #end
    #end #elseif ( $position.equalsIgnoreCase( "left" ) ) #if ( $breadcrumbs && $breadcrumbs.size() > 0 )
    #breadcrumbs( $breadcrumbs )
    #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="http://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 ( ! ( $img.toLowerCase().startsWith("http:/") || $img.toLowerCase().startsWith("https:/") || $img.toLowerCase().startsWith("ftp:/") || $img.toLowerCase().startsWith("mailto:/") || $img.toLowerCase().startsWith("file:/") || ($img.toLowerCase().indexOf("://") != -1) ) ) #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 ## #end #if( $poweredBy.isEmpty() ) $i18n.getString( #end #else $i18n.getString( #end #end ## #macro ( googleAnalytics $accountId ) #if( $accountId && $accountId != "" ) #end #end ## $title #foreach( $author in $authors ) #end #if ( $dateCreation ) #end #if ( $dateRevision ) #end #if ( $locale ) #end #if ( $decoration.body.head ) #foreach( $item in $decoration.body.head.getChildren() ) ## Workaround for DOXIA-150 due to a non-desired behaviour in p-u ## @see org.codehaus.plexus.util.xml.Xpp3Dom#toString() ## @see org.codehaus.plexus.util.xml.Xpp3Dom#toUnescapedString() #set ( $documentHeader = '' ) #if ( $item.name == "script" ) $StringUtils.replace( $item.toUnescapedString(), $documentHeader, "" ) #else $StringUtils.replace( $item.toString(), $documentHeader, "" ) #end #end #end $headContent #googleAnalytics( $decoration.googleAnalyticsAccountId )
    $bodyContent