blob: d8e92f82aa841a891712e07ac8715d0e1279e11a [file] [log] [blame]
Bhavesh72ead492018-07-19 16:29:18 +05301<!--
2~ Copyright 2018-present Open Networking Foundation
3~
4~ Licensed under the Apache License, Version 2.0 (the "License");
5~ you may not use this file except in compliance with the License.
6~ You may obtain a copy of the License at
7~
8~ http://www.apache.org/licenses/LICENSE-2.0
9~
10~ Unless required by applicable law or agreed to in writing, software
11~ distributed under the License is distributed on an "AS IS" BASIS,
12~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13~ See the License for the specific language governing permissions and
14~ limitations under the License.
15-->
16<div id="ov-host">
Sean Condon95fb5742019-04-02 12:16:55 +010017 <onos-loading [theme]="'light'" [running]="loadingIconShown"></onos-loading>
Bhavesh72ead492018-07-19 16:29:18 +053018 <div class="tabular-header">
19 <h2>Hosts ({{tableData.length}} total)</h2>
20 <div class="ctrl-btns">
21 <div class="refresh" (click)="toggleRefresh()">
22 <!-- See icon.theme.css for the defintions of the classes active and refresh-->
23 <onos-icon classes="{{ autoRefresh?'active refresh':'refresh' }}" iconId="refresh" iconSize="42" toolTip="{{ autoRefreshTip }}"></onos-icon>
24 </div>
25 </div>
26 </div>
27 <div class="summary-list" onosTableResize>
28 <div class="table-header">
29 <table>
30 <tr>
31 <td colId="type" class="table-icon"></td>
32 <td colId="name" (click)="onSort('name')">Friendly Name
33 <onos-icon classes="active-sort" [iconSize]="10" [iconId]="sortIcon('name')"></onos-icon>
34 </td>
35 <td colId="id" (click)="onSort('id')">Host ID
36 <onos-icon classes="active-sort" [iconSize]="10" [iconId]="sortIcon('id')"></onos-icon>
37 </td>
38 <td colId="mac" (click)="onSort('mac')">MAC Address
39 <onos-icon classes="active-sort" [iconSize]="10" [iconId]="sortIcon('mac')"></onos-icon>
40 </td>
41 <td colId="vlan" (click)="onSort('vlan')">VLAN ID
42 <onos-icon classes="active-sort" [iconSize]="10" [iconId]="sortIcon('vlan')"></onos-icon>
43 </td>
44 <td colId="configured" (click)="onSort('configured')">Configured
45 <onos-icon classes="active-sort" [iconSize]="10" [iconId]="sortIcon('configured')"></onos-icon>
46 </td>
47 <td colId="ips" (click)="onSort('ips')">IP Addresses
48 <onos-icon classes="active-sort" [iconSize]="10" [iconId]="sortIcon('ips')"></onos-icon>
49 </td>
50 <td colId="location" (click)="onSort('location')">Location
51 <onos-icon classes="active-sort" [iconSize]="10" [iconId]="sortIcon('location')"></onos-icon>
52 </td>
53 </tr>
54 </table>
55 </div>
56 <div class="table-body">
57 <table>
58 <tr *ngIf="tableData.length === 0" class="no-data">
59 <td colspan="8">{{ annots.noRowsMsg }}</td>
60 </tr>
61 <tr *ngFor="let host of tableData" (click)="selectCallback($event, host)" [ngClass]="{selected: host.id === selId, 'data-change': isChanged(host.id)}">
62 <td class="table-icon">
63 <onos-icon classes="{{host._iconid_type? 'active-type':undefined}}" iconId="{{host._iconid_type}}"></onos-icon>
64 </td>
65 <td>{{host.name}}</td>
66 <td>{{host.id}}</td>
67 <td>{{host.mac}}</td>
68 <td>{{host.vlan}}</td>
69 <td>{{host.configured}}</td>
70 <td>{{host.ips}}</td>
71 <td>{{host.location}}</td>
72 </tr>
73 </table>
74 </div>
75 </div>
76 <onos-hostdetails class="floatpanels" id="{{ selId }}" (closeEvent)="deselectRow($event)"></onos-hostdetails>
Sean Condon95fb5742019-04-02 12:16:55 +010077</div>