<h1>Probes</h1>
<of-error-message [error]="error$ | async" [closable]="false"></of-error-message>
<of-block-progressbar [target]="content" [pending]="pending$ | async"></of-block-progressbar>

<p-panel #content [showHeader]="false" class="block-panel">
  <p-table [value]="probeHosts" selectionMode="single" (onRowSelect)="onProbeSelect($event)" [resizableColumns]="true">
    <ng-template pTemplate="header">
      <tr>
        <th>Probe Name</th>
        <th>Uptime</th>
        <th style="width:10em">CIDR</th>
        <th style="width:10em">Host IP</th>
        <th style="width:8em">OS</th>
        <th style="width:10em">Iface</th>
        <th pResizableColumn>Targets</th>
        <th style="width:8em">Authroized at</th>
        <th style="width:9em">Authroized by</th>
      </tr>
    </ng-template>
    <ng-template pTemplate="body" let-probeHost>
      <tr [pSelectableRow]="probeHost">
        <td>{{probeHost.probe.name}}</td>
        <td>{{getUptime(probeHost.probe)}}</td>
        <td>{{probeHost.probe.cidr}}</td>
        <td>{{probeHost.infraHost.infraHostIPs ? probeHost.infraHost.infraHostIPs[0].address : ''}}</td>
        <td>{{probeHost.infraHost.infraHostOS ? probeHost.infraHost.infraHostOS.name : '' }}</td>
        <td>{{probeHost.infraHost.infraZone ? probeHost.infraHost.infraZone.iface : ''}}</td>
        <td>{{probeHost.probe.targetCount}}</td>
        <td>{{probeHost.probe.authorizeDate | date: 'dd.MM.yyyy'}}</td>
        <td>{{probeHost.probe.authorizeMember.name || ''}}</td>
      </tr>
    </ng-template>
  </p-table>
</p-panel>