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

<!-- Group partial HTML -->
<div id="ov-group">
    <div class="tabular-header">
        <h2>
            Groups for Device {{devId || "(No device selected)"}}
            ({{tableData.length}} total)
        </h2>
        <div class="ctrl-btns">
            <div class="refresh active"
                 icon icon-size="36" icon-id="refresh"
                 ng-click="refresh()"></div>
        </div>
    </div>

    <div class="summary-list" onos-fixed-header>

        <div class="table-header"
             onos-sortable-header sort-callback="sortCallback(requestParams)">
            <table>
                <tr>
                    <td colId="id" sortable>Group ID </td>
                    <td colId="app_id" sortable>App ID </td>
                    <td colId="state" sortable>State </td>
                    <td colId="type" sortable>Type </td>
                    <td colId="packets" sortable>Packets </td>
                    <td colId="bytes" sortable>Bytes </td>
                </tr>
            </table>
        </div>

        <div class="table-body">
            <table>
                <tr ng-hide="tableData.length" class="no-data ignore-width">
                    <td colspan="6">
                        No Groups found
                    </td>
                </tr>

                <tr ng-repeat-start="group in tableData">
                    <td>{{group.id}}</td>
                    <td>{{group.app_id}}</td>
                    <td>{{group.state}}</td>
                    <td>{{group.type}}</td>
                    <td>{{group.packets}}</td>
                    <td>{{group.bytes}}</td>
                </tr>
                <tr class="ignore-width"
                    ng-repeat-end ng-repeat-done>
                    <td class="buckets" colspan="6"
                        ng-bind-html="group.buckets"></td>
                </tr>
            </table>
        </div>

    </div>

</div>
