Using the admin interface for confluence we have control of the appearance of UDIG and [UDIGGuide] websites.
Here is the basic templates we are using:
Now that Print actually works we will need to make up a suitable template, and the output format is still lost.
Main Decorator
| $page.getProperty("page.surtitle") | ?!? |
| $page.getProperty("page.no-page-header") | ?!? |
| $title | |
| #pagetitle( css-type ) | "spacenametitle" |
| #standardHeader() | |
| #if ( condition ) snip #end |
conditional |
| $setup.isSetupComplete() | used to repress print icon for config screens |
| #breadcumbsAndSearch | full on division with location and search |
| $page.getProperty("page.operations") | takes of tones of room unless class="toolbar" |
| $page.getProperty("page.surtitle") | not sure |
| #bottomshadow() | safe just draws the end of page line |
| #parse ("/decorators/includes/complete_footer.vmd") | includes everything including opperations! |
| $body | body seems to already be xhtml - annoyingly includes attachements |
Here is the text of the complete footer:
#if ($infoPanelRequired == true) <td width="5"> </td> <td valign="top" width="#if ($panelWidth) $panelWidth #else 20% #end"> #infoPanel(true true true true) </td> #end </tr> </table> </td></tr></table> </div> #parse ("/decorators/includes/footer.vmd")
So it looks like infoPanel is our friend and the true/false indicate what needs drawing.
Here is what all [GEOTOOLS:HOME], [GEOS:HOME] and Home all use:
#if ($infoPanelRequired == true) <td width="5"> </td> <td valign="top" width="150"> #infoPanel(false false false false) <table width="150" border=0 cellspacing=1 cellpadding=2 bgcolor="ffffff"> <tr><td nowrap valign=middle class="navItem" onMouseOver="this.className='navItemOver'" onMouseOut="this.className='navItem'"> <a href="http://docs.codehaus.org/display/GEOTOOLS/Home" title="Geotools Confluence">GeoTools</a> </td></tr> <tr><td nowrap valign=middle class="navItem" onMouseOver="this.className='navItemOver'" onMouseOut="this.className='navItem'"> <a href="http://docs.codehaus.org/display/GEOS/Home" title="GeoServer Confluence">GeoServer</a> </td></tr> <tr><td nowrap valign=middle class="navItem" onMouseOver="this.className='navItemOver'" onMouseOut="this.className='navItem'"> <a href="http://docs.codehaus.org/display/UDIG/Home" title="UDIG Confluence">uDig</a> </td></tr> </table> </td> #end </tr> </table> </td></tr></table> </div> #parse ("/decorators/includes/footer.vmd")
Printable Decorator Syntax
| #standardHeader() | no special differences |
| #breadcrumbs() | no special differences |
| #pagetitle( css-type ) | "spacenametitle-printable", |
| #parse ("/decorators/includes/footer.vmd") |
Page Decorator Syntax
| Page | seems to always be in scope |
| $page | page object? |
| $page.space.name | |
| $page.title | |
| $page.homePage | true if home page |
| $page.lastModificationDate | date |
| $page.sortedChildren | list of children |
| $page.rootLevel | true if does not have parent? |
| Attachment | member of $page.attachments |
|---|---|
| fileName | |
| contentType |
#if( $page.attachments.size()>0 )
#foreach( $attachment in $page.attachments )
<img src="icons/bullet_blue.gif" height="8" width="8" alt=""/>
<a href="${page.title}_attachments/$attachment.fileName">$attachment.fileName</a> ($attachment.contentType)
<br/>
#end
#end
| Comment | member of $page.comments |
|---|---|
| $comment | |
| $comment.id | |
| $comment.creatorName | |
| $comment.creationDate |
| Functions | |
|---|---|
| $generalUtil.formatDateTime( date ) | used with $exportDate |
| $generalUtil.format( date ) | used with $page.lastModificationDate |
Export Decorator Syntax
| Export | used during page export decorator |
|---|---|
| $exportDate | long date of export |
| Export Functions | |
| $rendererBean.exportWikiToXHtml($page) | |
| $rendererBean.exportWikiToXHtml($comment) |
Space Export Template
| $space | Appears to be the space object |
|---|---|
| $space.key | |
| $space.name | |
| $space.description | |
| $space.creatorName | |
| $space.creationDate | |
| $space.lastModifierName | |
| $space.lastModificationDate | |
| $space.pages | used in foreach |
| $spacePages | list of pages in space |
| $spacePages.size |
Appears to be a macro syntax!
#macro(hierarchy $parent)
<li>
#if( $spacePages.contains($parent) )
<a href="${parent.title}.html">$parent.title</a>
#else
<font color="grey">$parent.title</font>
#end
#if( $parent.homePage )
<img src="icons/home_16.gif" height="16" width="16" border="0" align="absmiddle"/>
#end
#foreach ($child in $parent.sortedChildren)
<ul>
#hierarchy($child)
</ul>
#end
</li>
#end