|
- #*
- * 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.
- *
- *#
-
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
- <!--
- 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.
- -->
- ## Content Stylesheet for Site
- ## Defined variables
- #set ($lightbg = "#ffffff")
- #set ($lightfg = "#ffffff")
- #set ($darkfg = "#000000")
- #set ($active = "#ffcc00")
- #set ($blue4 = "#B2C4E0")
- #set ($blue3 = "#294563")
- #set ($blue2 = "#4C6C8F")
- #set ($blue1 = "#CFDCED")
- #set ($sourceborder = "#023264")
- #set ($pound = "#" )
- ## start the processing
- #document()
- ## end the processing
-
- ## This is where the common page macro's live
-
- #macro ( isbn $isbn)
- <p><b>Available from:</b><br>
- <a href="http://www.amazon.com/exec/obidos/tg/detail/-/$!isbn/apachesoftwar-20/" target="_blank">Amazon.com</a>
- | <a href="http://service.bfast.com/bfast/click?bfmid=2181&bfmtype=book&sourceid=41462544&bfpid=$!isbn" target="_blank">Barnes & Noble</a>
- | <a href="http://www.booksense.com/product/info.jsp?affiliateId=Apache&isbn=$!isbn" target="_blank">Book Sense</a>
- | <a href="http://www.powells.com/cgi-bin/biblio?isbn=$!isbn&partner_id=29693" target="_blank">Powells.com</a>
- <br></p>
- #end
-
- #macro ( subsection $subsection)
- <h4 class="subsection">
- <a name="$escape.getText($subsection.getAttributeValue("name"))"></a>
- $subsection.getAttributeValue("name")
- </h4>
- #foreach ( $items in $subsection.getChildren() )
- #if ($items.getName().equals("img"))
- #image ($items)
- #elseif ($items.getName().equals("source"))
- #source ($items)
- #elseif ($items.getName().equals("table"))
- #table ($items)
- #elseif ($items.getName().equals("subsubsection"))
- #subsubsection ($items)
- #else
- $xmlout.outputString($items)
- #end
- #end
- #if ($subsection.getAttributeValue("isbn"))
- #set ($isbn = $subsection.getAttributeValue("isbn"))
- #isbn ($isbn)
- #end
- #end
-
- #macro ( subsubsection $subsubsection)
- <h5 class="subsection">
- <a name="$escape.getText($subsubsection.getAttributeValue("name"))"></a>
- *** $subsubsection.getAttributeValue("name") ***
- </h5>
- #foreach ( $items in $subsubsection.getChildren() )
- #if ($items.getName().equals("img"))
- #image ($items)
- #elseif ($items.getName().equals("source"))
- #source ($items)
- #elseif ($items.getName().equals("table"))
- #table ($items)
- #else
- $xmlout.outputString($items)
- #end
- #end
- #end
-
- #macro ( teamcity $teamcity)
- <table class="ContinuousBuild">
- <tr>
- <th>Title</th>
- <th>Description</th>
- <th>Build command</th>
- <th>When</th>
- <th>last build</th>
- <th>last success</th>
- </tr>
- #set ($viewLink = $teamcity.getAttributeValue("viewlog") )
- #foreach ($project in $teamcity.getChildren() )
- <tr><td colspan="6" class="title"><b>$project.getAttributeValue("name")</b></td></tr>
- #foreach ($configuration in $project.getChildren() )
- #configuration ($configuration $viewLink)
- #end
- #end
- </table>
- #end
-
- #macro ( configuration $conf $viewLink)
- #set ($id = $conf.getAttributeValue("id") )
- <tr>
- <td class="title">$conf.getAttributeValue("title")</td>
- <td class="description">$conf.getChild("description").getContent()</td>
- <td class="command">$conf.getAttributeValue("command")</td>
- #if ($conf.getChild("when"))
- <td class="when">$conf.getChild("when").getContent()</td>
- #else
- <td class="when">continuously</td>
- #end
- <td class="link"><a href="$viewLink?&buildTypeId=$id&buildId=lastFinished">last build</a></td>
- <td class="link"><a href="$viewLink?&buildTypeId=$id&buildId=lastSuccessful">last success</a></td>
- </tr>
- #end
-
- ## The hudson macro is based on the teamcity macro, but slightly different.
- ## Mainly in the need of another nested element (job instead of configuration).
- ## Maybe refactoring would ease that code ...
- #macro ( hudson $hudson)
- <table class="ContinuousBuild">
- <tr>
- <th>Title</th>
- <th>Description</th>
- <th>Build command</th>
- <th>When</th>
- <th>last build</th>
- <th>last success</th>
- </tr>
- #set ($base = $hudson.getAttributeValue("base") )
- #foreach ($project in $hudson.getChildren() )
- <tr><td colspan="6" class="title"><b>$project.getAttributeValue("name")</b></td></tr>
- #foreach ($job in $project.getChildren() )
- #job ($job $base)
- #end
- #end
- </table>
- #end
-
- ## The hudson::job macro is based on the teamcity::configuration macro, but slightly different.
- ## Mainly the links to the build results are different.
- #macro ( job $job $base)
- #set ($jobId = $job.getAttributeValue("id") )
- <tr>
- <td class="title">$job.getAttributeValue("title")</td>
- <td class="description">$job.getChild("description").getContent()</td>
- <td class="command">$job.getAttributeValue("command")</td>
- #if ($job.getChild("when"))
- <td class="when">$job.getChild("when").getContent()</td>
- #else
- <td class="when">continuously</td>
- #end
- <td class="link"><a href="$base/$jobId/lastBuild/">last build</a></td>
- <td class="link"><a href="$base/$jobId/lastSuccessfulBuild/">last success</a></td>
- </tr>
- #end
-
- #macro ( section $section)
- <h3 class="section">
- <a name="$escape.getText($section.getAttributeValue("name"))"></a>
- $section.getAttributeValue("name")
- </h3>
- #foreach ( $items in $section.getChildren() )
- #if ($items.getName().equals("img"))
- #image ($items)
- #elseif ($items.getName().equals("source"))
- #source ($items)
- #elseif ($items.getName().equals("table"))
- #table ($items)
- #elseif ($items.getName().equals("subsection"))
- #subsection ($items)
- #elseif ($items.getName().equals("teamcity"))
- #teamcity ($items)
- #elseif ($items.getName().equals("hudson"))
- #hudson ($items)
- #else
- $xmlout.outputString($items)
- #end
- #end
- #end
-
- ## This is where the FAQ specific macro's live
-
- #macro (toc $section)
- <h4 class="toc">$section.getAttributeValue("title")</h4>
- <ul>
- #foreach ($faq in $section.getChildren("faq") )
- #subtoc ($faq)
- #end
- </ul>
- #end
-
- #macro (subtoc $faq)
- #set ($id = $faq.getAttributeValue("id"))
- <li><a href="$pound$id">
- $xmlout.outputString($faq.getChild("question"), true)
- </a></li>
- #end
-
- #macro (answers $section)
- #foreach ($faq in $section.getChildren("faq") )
- #faq ($faq)
- #end
- #end
-
- #macro (faq $faq)
- #set ($id = $faq.getAttributeValue("id"))
- <p class="faq">
- <a name="$id"></a>
- $xmlout.outputString($faq.getChild("question"), true)
- </p>
- #foreach ($item in $faq.getChild("answer").getChildren())
- #if ($item.getName().equals("img"))
- #image ($item)
- #elseif ($item.getName().equals("source"))
- #source ($item)
- #elseif ($item.getName().equals("table"))
- #table ($item)
- #else
- $xmlout.outputString($item)
- #end
- #end
- #end
-
- #macro (document)
- #header()
- <div class="main">
- <div class="content">
- <h1 class="title">$root.getChild("properties").getChild("title").getText()</h1>
- #set ($allSections = $root.getChild("body").getChildren("section"))
- #foreach ( $section in $allSections )
- #section ($section)
- #end
-
- #if ($root.getChildren("faqsection").size() > 0)
- #set ($allFaqSections = $root.getChildren("faqsection"))
- <h3 class="section">Questions</h3>
- #foreach ( $faqSection in $allFaqSections )
- #toc ($faqSection)
- #end
-
- <h3 class="section">Answers</h3>
- #foreach ( $faqSection in $allFaqSections )
- #answers ($faqSection)
- #end
- #end
- </div>
- </div>
-
- #footer()
- #end
|