Merge "Fix the Nginx conf to start even when Upstream is unavailable"
[portal/nonrtric-controlpanel.git] / webapp-frontend / src / app / ei-coordinator / ei-coordinator.component.html
index aee65c8..00ce9ad 100644 (file)
@@ -18,48 +18,124 @@ limitations under the License.
 ========================LICENSE_END===================================
 -->
 
-<h3 class="rd-global-page-title">Enrichment Information Coordinator</h3>
-
-<br>
-<h4>Jobs</h4>
-<table mat-table EIJobTable [dataSource]="eiJobsDataSource" [ngClass]="{'table-dark': darkMode}" matSort
-    multiTemplateDataRows class="ei-coordinator-table mat-elevation-z8">
-    <ng-container matColumnDef="id">
-        <th mat-header-cell *matHeaderCellDef> Job ID </th>
-        <td mat-cell *matCellDef="let eiJob"> {{this.getDisplayName(eiJob)}} </td>
-    </ng-container>
-    <!--ng-container matColumnDef="data">
-        <th mat-header-cell *matHeaderCellDef> Job data </th>
-        <td mat-cell *matCellDef="let eiJob"> {{this.getEIJobInfo(eiJob)}} </td>
-    </ng-container-->
-    <ng-container matColumnDef="typeId">
-        <th mat-header-cell *matHeaderCellDef> Type ID </th>
-        <td mat-cell *matCellDef="let eiJob"> {{this.getEITypeId(eiJob)}} </td>
-    </ng-container>
-    <ng-container matColumnDef="targetUri">
-        <th mat-header-cell *matHeaderCellDef> Target URI </th>
-        <td mat-cell *matCellDef="let eiJob"> {{this.getTargetUri(eiJob)}} </td>
-    </ng-container>
-    <tr mat-header-row *matHeaderRowDef="['id', 'typeId', 'targetUri']"></tr>
-    <tr mat-row *matRowDef="let row; columns: ['id', 'typeId', 'targetUri'];"></tr>
-</table>
+<div fxLayout="row">
+    <div class="nrcp-global-page-title">Enrichment Information Coordinator</div>
+    <div class="refresh-button">
+        <button mat-icon-button color="primary" aria-label="Button with a refresh icon" (click)="refreshTables()">
+            <mat-icon>refresh</mat-icon>
+        </button>
+    </div>
+</div>
 
 <br>
 <h4>Producers</h4>
-<table mat-table EIProducerTable [dataSource]="eiProducersDataSource" [ngClass]="{'table-dark': darkMode}" matSort
-    multiTemplateDataRows class="ei-coordinator-table mat-elevation-z8">
+
+<div class="table-container">
+  <mat-table #producersTable [dataSource]="producersDataSource" matSort class="mat-elevation-z8">
+
     <ng-container matColumnDef="id">
-        <th mat-header-cell *matHeaderCellDef> Producer ID </th>
-        <td mat-cell *matCellDef="let eiProducer"> {{this.getEIProducerId(eiProducer)}} </td>
+      <mat-header-cell *matHeaderCellDef>
+        <form style="display: flex" [formGroup]="producersFormControl">
+          <mat-form-field>
+            <input matInput formControlName="ei_producer_id">
+            <mat-placeholder>Producer ID</mat-placeholder>
+          </mat-form-field>
+        </form>
+      </mat-header-cell>
+      <mat-cell *matCellDef="let eiProducer"> {{eiProducer.ei_producer_id}} </mat-cell>
     </ng-container>
-    <ng-container matColumnDef="type">
-        <th mat-header-cell *matHeaderCellDef> Producer type </th>
-        <td mat-cell *matCellDef="let eiProducer"> {{this.getEIProducerTypes(eiProducer)}} </td>
+
+    <ng-container matColumnDef="types">
+      <mat-header-cell *matHeaderCellDef>
+        <br>
+        <form style="display: flex" [formGroup]="producersFormControl">
+          <mat-form-field>
+            <input matInput formControlName="ei_producer_types">
+            <mat-placeholder>Producer types</mat-placeholder>
+          </mat-form-field>
+        </form>
+      </mat-header-cell>
+      <mat-cell *matCellDef="let eiProducer"> {{this.getEIProducerTypes(eiProducer)}} </mat-cell>
     </ng-container>
+
     <ng-container matColumnDef="status">
-        <th mat-header-cell *matHeaderCellDef> Producer status </th>
-        <td mat-cell *matCellDef="let eiProducer"> {{this.getEIProducerStatus(eiProducer)}} </td>
+      <mat-header-cell *matHeaderCellDef>
+        <br>
+        <form style="display: flex" [formGroup]="producersFormControl">
+          <mat-form-field>
+            <input matInput formControlName="status">
+            <mat-placeholder>Producer status</mat-placeholder>
+          </mat-form-field>
+        </form>
+      </mat-header-cell>
+      <mat-cell *matCellDef="let eiProducer"> {{this.getEIProducerStatus(eiProducer)}} </mat-cell>
     </ng-container>
-    <tr mat-header-row *matHeaderRowDef="['id', 'type', 'status']"></tr>
-    <tr mat-row *matRowDef="let row; columns: ['id', 'type', 'status'];"></tr>
-</table>
\ No newline at end of file
+
+    <mat-header-row *matHeaderRowDef="['id', 'types', 'status']"></mat-header-row>
+    <mat-row *matRowDef="let row; columns: ['id', 'types', 'status'];"></mat-row>
+
+     <!-- Row shown when there is no matching data. -->
+    <mat-row *matNoDataRow>
+      <mat-cell colspan="3">No data matching the filter "{{input.value}}"</mat-cell>
+    </mat-row>
+  </mat-table>
+</div>
+
+<br>
+<h4>Jobs</h4>
+
+<div class="table-container">
+    <mat-table [dataSource]="jobsDataSource"
+        matSort class="ei-coordinator-table mat-elevation-z8">
+        <ng-container matColumnDef="id">
+            <mat-header-cell *matHeaderCellDef>
+                <br>
+                <form style="display: flex" [formGroup]="jobsFormControl">
+                    <mat-form-field>
+                        <input matInput formControlName="id">
+                        <mat-placeholder>Job ID</mat-placeholder>
+                    </mat-form-field>
+                </form>
+            </mat-header-cell>
+            <mat-cell *matCellDef="let eiJob"> {{this.getDisplayName(eiJob)}} </mat-cell>
+        </ng-container>
+        <ng-container matColumnDef="typeId">
+            <mat-header-cell *matHeaderCellDef>
+                <br>
+                <form style="display: flex" [formGroup]="jobsFormControl">
+                    <mat-form-field>
+                        <input matInput formControlName="typeId">
+                        <mat-placeholder>Type ID</mat-placeholder>
+                    </mat-form-field>
+                </form>
+            </mat-header-cell>
+            <mat-cell *matCellDef="let eiJob">{{this.getEITypeId(eiJob)}} </mat-cell>
+            </ng-container>
+        <ng-container matColumnDef="owner">
+            <mat-header-cell *matHeaderCellDef>
+                <br>
+                <form style="display: flex" [formGroup]="jobsFormControl">
+                    <mat-form-field>
+                        <input matInput formControlName="owner">
+                        <mat-placeholder>Owner</mat-placeholder>
+                    </mat-form-field>
+                </form>
+            </mat-header-cell>
+            <mat-cell *matCellDef="let eiJob">{{eiJob.owner}} </mat-cell>
+        </ng-container>
+        <ng-container matColumnDef="targetUri">
+            <mat-header-cell *matHeaderCellDef>
+                <br>
+                <form style="display: flex" [formGroup]="jobsFormControl">
+                    <mat-form-field>
+                        <input matInput formControlName="targetUri">
+                        <mat-placeholder>Target URI</mat-placeholder>
+                    </mat-form-field>
+                </form>
+            </mat-header-cell>
+            <mat-cell *matCellDef="let eiJob"> {{this.getTargetUri(eiJob)}}  </mat-cell>
+        </ng-container>
+        <mat-header-row *matHeaderRowDef="['id', 'typeId', 'owner', 'targetUri']"></mat-header-row>
+        <mat-row *matRowDef="let row; columns: ['id', 'typeId', 'owner', 'targetUri'];"></mat-row>
+    </mat-table>
+</div>
\ No newline at end of file