]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - client/src/app/+admin/jobs/jobs-list/jobs-list.component.html
remove unused imports
[github/Chocobozzz/PeerTube.git] / client / src / app / +admin / jobs / jobs-list / jobs-list.component.html
index 7aa5f425499af43f2bcaefa4f5d7cc65a1be0e5b..7ed1888e2b2a2b0be0173f3706d38690bb0d6d29 100644 (file)
@@ -1,20 +1,56 @@
 <div class="admin-sub-header">
-  <div class="admin-sub-title">Jobs list</div>
+  <div i18n class="form-sub-title">Jobs list</div>
+
+  <div class="peertube-select-container">
+    <select [(ngModel)]="jobState" (ngModelChange)="onJobStateChanged()">
+      <option *ngFor="let state of jobStates" [value]="state">{{ state }}</option>
+    </select>
+  </div>
 </div>
 
-<p-dataTable
-    [value]="jobs" [lazy]="true" [paginator]="true" [totalRecords]="totalRecords" [rows]="rowsPerPage"
-    sortField="createdAt" (onLazyLoad)="loadLazy($event)" [scrollable]="true" [virtualScroll]="true" [scrollHeight]="scrollHeight"
+<p-table
+  [value]="jobs" [lazy]="true" [paginator]="true" [totalRecords]="totalRecords" [rows]="rowsPerPage" dataKey="uniqId"
+  [sortField]="sort.field" [sortOrder]="sort.order" (onLazyLoad)="loadLazy($event)" [first]="pagination.start"
 >
-  <p-column field="id" header="ID" [style]="{ width: '40px' }"></p-column>
-  <p-column field="category" header="Category" [style]="{ width: '100px' }"></p-column>
-  <p-column field="handlerName" header="Handler name" [style]="{ width: '200px' }"></p-column>
-  <p-column header="Input data">
-    <ng-template pTemplate="body" let-job="rowData">
-      <pre>{{ job.handlerInputData }}</pre>
-    </ng-template>
-  </p-column>
-  <p-column field="state" header="State" [style]="{ width: '100px' }"></p-column>
-  <p-column field="createdAt" header="Created date" [sortable]="true" [style]="{ width: '250px' }"></p-column>
-  <p-column field="updatedAt" header="Updated date" [style]="{ width: '250px' }"></p-column>
-</p-dataTable>
+  <ng-template pTemplate="header">
+    <tr>
+      <th style="width: 27px"></th>
+      <th i18n style="width: 60px">ID</th>
+      <th i18n style="width: 210px">Type</th>
+      <th i18n style="width: 130px">State</th>
+      <th i18n style="width: 250px" pSortableColumn="createdAt">Created <p-sortIcon field="createdAt"></p-sortIcon></th>
+      <th i18n style="width: 250px">Processed on</th>
+      <th i18n style="width: 250px">Finished on</th>
+    </tr>
+  </ng-template>
+
+  <ng-template pTemplate="body" let-expanded="expanded" let-job>
+    <tr>
+      <td>
+        <span class="expander" [pRowToggler]="job">
+          <i [ngClass]="expanded ? 'glyphicon glyphicon-menu-down' : 'glyphicon glyphicon-menu-right'"></i>
+        </span>
+      </td>
+      <td>{{ job.id }}</td>
+      <td>{{ job.type }}</td>
+      <td>{{ job.state }}</td>
+      <td>{{ job.createdAt }}</td>
+      <td>{{ job.processedOn }}</td>
+      <td>{{ job.finishedOn }}</td>
+    </tr>
+  </ng-template>
+
+  <ng-template pTemplate="rowexpansion" let-job>
+    <tr>
+      <td colspan="7">
+        <pre>{{ job.data }}</pre>
+      </td>
+    </tr>
+    <tr class="job-error" *ngIf="job.error">
+      <td colspan="7">
+        <pre>{{ job.error }}</pre>
+      </td>
+    </tr>
+  </ng-template>
+</p-table>
+