<?xml version="1.0" encoding="UTF-8"?>
<!--
   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.
-->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <title>Karaf WebConsole</title>
</head>

<body>
    <div id="container">
        <table>
            <tr>
                <td align="left"><img wicket:id="karafLogo" alt="karaf-logo" height="70" width="150"/></td>
                <td align="right">Administration console</td>
            </tr>
            <!--
            <tr>
            <div wicket:id="navigationPanel">Navigation goes here</div>
            <div wicket:id="sidebar">Sidebar goes here</div>
            </tr>
            -->
            <tr>
                <td colspan="2">
                    <div wicket:id="tabPanels" class="tabpanel">[tabbed panel will be here]</div>

                    <div id="topmenu">
                        <ul>
                            <li wicket:id="tabs">
                                <a wicket:id="moduleLink">
                                    <span wicket:id="moduleLabel">Category</span>
                                </a>

                                <ul>
                                    <li wicket:id="topLinks">
                                        <a wicket:id="topLink">
                                            <span wicket:id="linkLabel">Label</span>
                                        </a>
                                    </li>
                                </ul>
                            </li>
                        </ul>
                    </div>
                </td>
            </tr>
            <tr>
                <td colspan="2">
                    <div id="content">
                        <wicket:child/>
                    </div>
                </td>
            </tr>
            <tr>
                <td colspan="2">&nbsp</td>
            </tr>
            <tr>
                <td colspan="2">
                    <div id="footer" align="right">
                        <div wicket:id="footer">Footer</div>
                    </div>
                 </td>
            </tr>
        </table>
    </div>
</body>
</html>