<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
/*
 * $Id: site.xml 1333561 2012-05-03 17:24:51Z nlebas $
 *
 * 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.
 */
-->
<project name="Apache - Request Microframework">
     <skin>
        <groupId>org.apache.maven.skins</groupId>
        <artifactId>maven-fluido-skin</artifactId>
        <version>1.3.0</version>
     </skin>
     <custom>
        <fluidoSkin>
        <topBarEnabled>true</topBarEnabled>
        <sideBarEnabled>false</sideBarEnabled>
        <searchEnabled>true</searchEnabled>
        <gitHub>
            <projectId>apache/tiles-request</projectId>
            <ribbonOrientation>right</ribbonOrientation>
            <ribbonColor>darkblue</ribbonColor>
        </gitHub>
        </fluidoSkin>
     </custom>
    <bannerLeft>
        <name>Apache Tiles&#8482;</name>
        <src>http://tiles.apache.org/images/logo.png</src>
        <href>http://tiles.apache.org</href>
    </bannerLeft>
    <bannerRight>
        <name>Apache Software Foundation</name>
        <src>http://struts.apache.org/images/asf-logo.gif</src>
        <href>http://www.apache.org</href>
    </bannerRight>
    <body>

        <menu name="Apache Tiles&#8482;">
            <item
                   name="Tiles Home"
                   href="../../index.html"/>
            <item
                   name="Request Microframework"
                   href="../index.html"/>
        </menu>

        <menu ref="modules" />
        <menu ref="reports" />

        <footer>
            <div class="row span12">
                Apache Tiles, Tiles, Apache, the Apache feather logo, and the Apache Tiles
                project logos are trademarks of The Apache Software Foundation.
            </div>
        </footer>
    </body>
</project>
