<!--
  ~ Copyright 2015 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.
  -->

<!-- Tunnel partial HTML -->
<div id="ov-tunnel">
    <div class="tabular-header">
        <h2>Tunnels ({{tableData.length}} total)</h2>
        <div class="ctrl-btns">
            <div class="refresh" ng-class="{active: autoRefresh}"
                 icon icon-size="36" icon-id="refresh"
                 tooltip tt-msg="autoRefreshTip"
                 ng-click="toggleRefresh()"></div>
        </div>
    </div>

    <div class="summary-list" onos-table-resize>
        <div ng-show="loading" class="loading-wheel"
             icon icon-id="loading" icon-size="75"></div>

        <div class="table-header" onos-sortable-header>
            <table>
                <tr>
                    <td colId="id" sortable>ID </td>
                    <td colId="name" sortable>Name</td>
                    <td colId="one" sortable>Port 1 </td>
                    <td colId="two" sortable>Port 2 </td>
                    <td colId="type" sortable>Type </td>
                    <td colId="group_id" sortable>Group Id</td>
                    <td colId="bandwidth" sortable>Bandwidth</td>
                    <td colId="path" sortable>Path</td>
                </tr>
            </table>
        </div>

        <div class="table-body">
            <table onos-flash-changes id-prop="one">
                <tr ng-if="!tableData.length" class="no-data">
                    <td colspan="6">
                        No tunnels found
                    </td>
                </tr>

                <tr ng-repeat="tunnel in tableData track by $index"
                    ng-repeat-complete row-id="{{tunnel.id}}">
                    <td>{{tunnel.id}}</td>
                    <td>{{tunnel.name}}</td>
                    <td>{{tunnel.one}}</td>
                    <td>{{tunnel.two}}</td>
                    <td>{{tunnel.type}}</td>
                    <td>{{tunnel.group_id}}</td>
                    <td>{{tunnel.bandwidth}}</td>
                    <td>{{tunnel.path}}</td>
                </tr>
            </table>
        </div>

    </div>

</div>
