<!--********************************************************************************
 * Copyright (c) 2015-2020 Contributors to the Eclipse Foundation
 *
 * See the NOTICE file(s) distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v. 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * SPDX-License-Identifier: EPL-2.0
 *
 ********************************************************************************-->


<div *ngIf="!contexts">
  <div class="alert alert-info" style="margin: 0;">
    <strong>{{status | translate}}</strong>
  </div>
</div>

<div *ngIf="contexts">
<accordion *ngIf="isUUT()">
  <accordion-group *ngFor="let template of contexts['UNITUNDERTEST']" #UUT>
    <div accordion-heading class="thinheader">{{template.name}}
      <span class="pull-right fa" [ngClass]="{'fa-chevron-down': UUT?.isOpen, 'fa-chevron-right': !UUT?.isOpen}"></span>
    </div>
    <table class="table table-hover">
      <thead>
        <tr>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-name' | translate }}</th>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-ordered' | translate }}</th>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-measured' | translate }}</th>
        </tr>
      </thead>
      <tbody>
        <tr *ngFor="let attr of template.attributes" [ngClass]="diff(attr.value[0], attr.value[1])">
          <td>{{attr.name}}</td>
          <td>{{attr.value[0]}}</td>
          <td>{{attr.value[1]}}</td>
        </tr>
      </tbody>
    </table>
  </accordion-group>
</accordion>
<accordion *ngIf="isTS()">
  <accordion-group *ngFor="let template of contexts['TESTSEQUENCE']" #TS>
    <div accordion-heading class="thinheader">{{template.name}}
      <span class="pull-right fa" [ngClass]="{'fa-chevron-down': TS?.isOpen, 'fa-chevron-right': !TS?.isOpen}"></span>
    </div>
    <table class="table table-hover">
      <thead>
        <tr>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-name' | translate }}</th>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-ordered' | translate }}</th>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-measured' | translate }}</th>
        </tr>
      </thead>
      <tbody>
        <tr *ngFor="let attr of template.attributes" [ngClass]="diff(attr.value[0], attr.value[1])">
          <td>{{attr.name}}</td>
          <td>{{attr.value[0]}}</td>
          <td>{{attr.value[1]}}</td>
        </tr>
      </tbody>
    </table>
  </accordion-group>
</accordion>
<accordion *ngIf="isTE()">
  <accordion-group *ngFor="let template of contexts['TESTEQUIPMENT']" #TE>
    <div accordion-heading class="thinheader">{{template.name}}
      <span class="pull-right fa" [ngClass]="{'fa-chevron-down': TE?.isOpen, 'fa-chevron-right': !TE?.isOpen}"></span>
    </div>
    <table class="table table-hover">
      <thead>
        <tr>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-name' | translate }}</th>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-ordered' | translate }}</th>
          <th>{{ 'details.mdm-detail-descriptive-data.tblhdr-measured' | translate }}</th>
        </tr>
      </thead>
      <tbody>
        <tr *ngFor="let attr of template.attributes" [ngClass]="diff(attr.value[0], attr.value[1])">
          <td>{{attr.name}}</td>
          <td>{{attr.value[0]}}</td>
          <td>{{attr.value[1]}}</td>
        </tr>
      </tbody>
    </table>
  </accordion-group>
</accordion>
</div>
