<!DOCTYPE html>
<!--
~ Copyright 2014-2016 Open Networking Laboratory
~
~ Licensed 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>
<head>
    <meta charset="utf-8">
    <link rel="shortcut icon" href="data/img/onos-logo.png">

    <link rel="apple-touch-icon" href="data/img/apple-touch-icon.png">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>ONOS</title>

    <!-- Third party library code included here -->
    <!--TODO: use minified versions, once debugging is complete -->
    <script src="tp/angular.js"></script>
    <script src="tp/angular-route.js"></script>
    <script src="tp/angular-cookies.js"></script>

    <script src="tp/d3.js"></script>
    <script src="tp/topojson.v1.min.js"></script>

    <script src="tp/Chart.min.js"></script>
    <script src="tp/angular-chart.min.js"></script>

    <!-- {INJECTED-USER-START} -->
    <!-- {INJECTED-USER-END} -->

    <!-- ONOS UI Framework included here -->
    <!-- TODO: use a single catenated-minified file here -->
    <script src="onos.js"></script>
    <script src="app/directives.js"></script>

    <script src="app/fw/util/util.js"></script>
    <script src="app/fw/util/ee.js"></script>
    <script src="app/fw/util/fn.js"></script>
    <script src="app/fw/util/random.js"></script>
    <script src="app/fw/util/theme.js"></script>
    <script src="app/fw/util/keys.js"></script>
    <script src="app/fw/util/prefs.js"></script>

    <script src="app/fw/mast/mast.js"></script>
    <script src="app/fw/nav/nav.js"></script>

    <script src="app/fw/svg/svg.js"></script>
    <script src="app/fw/svg/glyph.js"></script>
    <script src="app/fw/svg/glyphData.js"></script>
    <script src="app/fw/svg/icon.js"></script>
    <script src="app/fw/svg/geodata.js"></script>
    <script src="app/fw/svg/map.js"></script>
    <script src="app/fw/svg/zoom.js"></script>
    <script src="app/fw/svg/svgUtil.js"></script>

    <script src="app/fw/remote/remote.js"></script>
    <script src="app/fw/remote/urlfn.js"></script>
    <script src="app/fw/remote/rest.js"></script>
    <script src="app/fw/remote/wsock.js"></script>
    <script src="app/fw/remote/websocket.js"></script>

    <script src="app/fw/widget/widget.js"></script>
    <script src="app/fw/widget/table.js"></script>
    <script src="app/fw/widget/toolbar.js"></script>
    <script src="app/fw/widget/tooltip.js"></script>
    <script src="app/fw/widget/button.js"></script>
    <script src="app/fw/widget/tableBuilder.js"></script>

    <script src="app/fw/layer/layer.js"></script>
    <script src="app/fw/layer/panel.js"></script>
    <script src="app/fw/layer/dialog.js"></script>
    <script src="app/fw/layer/flash.js"></script>
    <script src="app/fw/layer/quickhelp.js"></script>
    <script src="app/fw/layer/veil.js"></script>
    <script src="app/fw/layer/loading.js"></script>

    <!-- Framework and library stylesheets included here -->
    <link rel="stylesheet" href="tp/angular-chart.min.css">

    <!-- TODO: use a single catenated-minified file here -->
    <link rel="stylesheet" href="app/onos.css">
    <link rel="stylesheet" href="app/common.css">
    <link rel="stylesheet" href="app/fw/mast/mast.css">
    <link rel="stylesheet" href="app/fw/svg/glyph.css">
    <link rel="stylesheet" href="app/fw/svg/icon.css">
    <link rel="stylesheet" href="app/fw/layer/panel.css">
    <link rel="stylesheet" href="app/fw/layer/dialog.css">
    <link rel="stylesheet" href="app/fw/layer/flash.css">
    <link rel="stylesheet" href="app/fw/layer/quickhelp.css">
    <link rel="stylesheet" href="app/fw/layer/veil.css">
    <link rel="stylesheet" href="app/fw/layer/loading.css">
    <link rel="stylesheet" href="app/fw/nav/nav.css">
    <link rel="stylesheet" href="app/fw/widget/button.css">
    <link rel="stylesheet" href="app/fw/widget/toolbar.css">
    <link rel="stylesheet" href="app/fw/widget/tooltip.css">
    <link rel="stylesheet" href="app/fw/widget/table.css">

    <!-- Builtin views javascript. -->
    <script src="app/view/topo/topo.js"></script>
    <script src="app/view/topo/topoD3.js"></script>
    <script src="app/view/topo/topoEvent.js"></script>
    <script src="app/view/topo/topoDialog.js"></script>
    <script src="app/view/topo/topoFilter.js"></script>
    <script src="app/view/topo/topoForce.js"></script>
    <script src="app/view/topo/topoInst.js"></script>
    <script src="app/view/topo/topoLink.js"></script>
    <script src="app/view/topo/topoModel.js"></script>
    <script src="app/view/topo/topoOblique.js"></script>
    <script src="app/view/topo/topoOverlay.js"></script>
    <script src="app/view/topo/topoPanel.js"></script>
    <script src="app/view/topo/topoSelect.js"></script>
    <script src="app/view/topo/topoSprite.js"></script>
    <script src="app/view/topo/topoTraffic.js"></script>
    <script src="app/view/topo/topoTrafficNew.js"></script>
    <script src="app/view/topo/topoToolbar.js"></script>
    <script src="app/view/device/device.js"></script>
    <script src="app/view/flow/flow.js"></script>
    <script src="app/view/port/port.js"></script>
    <script src="app/view/group/group.js"></script>
    <script src="app/view/meter/meter.js"></script>
    <script src="app/view/link/link.js"></script>
    <script src="app/view/host/host.js"></script>
    <script src="app/view/intent/intent.js"></script>
    <script src="app/view/app/app.js"></script>
    <script src="app/view/settings/settings.js"></script>
    <script src="app/view/cluster/cluster.js"></script>
    <script src="app/view/processor/processor.js"></script>
    <script src="app/view/tunnel/tunnel.js"></script>

    <!-- Contributed javascript injected here -->
    <!-- {INJECTED-JAVASCRIPT-START} -->
    <!-- {INJECTED-JAVASCRIPT-END} -->

    <!-- Builtin views stylesheets. -->
    <link rel="stylesheet" href="app/view/topo/topo.css">
    <link rel="stylesheet" href="app/view/device/device.css">
    <link rel="stylesheet" href="app/view/flow/flow.css">
    <link rel="stylesheet" href="app/view/port/port.css">
    <link rel="stylesheet" href="app/view/group/group.css">
    <link rel="stylesheet" href="app/view/meter/meter.css">
    <link rel="stylesheet" href="app/view/link/link.css">
    <link rel="stylesheet" href="app/view/host/host.css">
    <link rel="stylesheet" href="app/view/intent/intent.css">
    <link rel="stylesheet" href="app/view/app/app.css">
    <link rel="stylesheet" href="app/view/settings/settings.css">
    <link rel="stylesheet" href="app/view/cluster/cluster.css">
    <link rel="stylesheet" href="app/view/processor/processor.css">
    <link rel="stylesheet" href="app/view/tunnel/tunnel.css">

    <!-- Contributed stylesheets injected here -->
    <!-- {INJECTED-STYLESHEETS-START} -->
    <!-- {INJECTED-STYLESHEETS-END} -->

</head>
<body class="light" ng-app="onosApp">
<div id="frame" ng-controller="OnosCtrl as onosCtrl" detect-browser>
    <div id="mast"
         ng-controller="MastCtrl as mastCtrl"
         ng-include="'app/fw/mast/mast.html'"></div>

    <div id="view" ng-view></div>

    <div id="nav"
         ng-controller="NavCtrl as navCtrl"
         ng-include="'nav.html'"></div>

    <div id="floatpanels"></div>
    <div id="alerts"></div>
    <div id="tooltip"></div>
    <div id="flash"></div>
    <div id="quickhelp"></div>
    <div id="veil">
        <div class="msg"></div>
        <svg resize></svg>
    </div>
</div>

<script>
    <!-- Inject user agent info into html element to allow CSS sensitivity. -->
    (function () {
        var t = !!('ontouchstart' in window) || !!('onmsgesturechange' in window);
        d3.select(document.documentElement)
            .attr('data-useragent', navigator.userAgent)
            .attr('data-platform', navigator.platform)
            .classed('touch', t);
    }());
</script>
</body>
</html>
