metadata-validator-ui/src/app/pages/oaipmh-validator/validation-history/oaipmh-history.component.html

217 lines
12 KiB
HTML

<div id="page_content">
<div id="page_content_header" class="uk-blur-background" offset="65">
<div class="uk-container uk-container-large">
<div class="uk-section uk-section-small">
<breadcrumbs [breadcrumbs]="breadcrumbs"></breadcrumbs>
<div class="uk-margin-large-top">
<h1 class="uk-h5">Validator's History</h1>
<!-- <paging-prev-next totalResults="20" baseUrl="/oaipmh-history"></paging-prev-next>-->
<div *ngIf="!results || results.length == 0" class="uk-alert uk-alert-primary">
No validated metadata record yet
</div>
<div *ngIf="results && results.length > 0" class="uk-margin-large-top">
<table class="uk-table uk-table-middle uk-table-divider uk-table-striped">
<thead>
<tr>
<th class="uk-width-medium">Base URL</th>
<!-- <th class="uk-text-center uk-width-xsmall">Validation Score</th>-->
<!-- <th *ngIf="result.fairScore" class="uk-text-center">Fair Score</th>-->
<th class="uk-text-center uk-width-xsmall">Started</th>
<th class="uk-text-center uk-width-medium">Guidelines</th>
<!-- <th class="uk-text-center uk-width-small">Progress</th>-->
<th class="uk-text-center uk-width-small">Status</th>
<!-- <th class="uk-width-medium">Actions</th>-->
</tr>
</thead>
<tbody>
<tr *ngFor="let result of results">
<td class="uk-text-truncate">{{result.baseUrl}}</td>
<!-- <td class="uk-text-center">{{result.score ? result.score : '-'}}</td>-->
<!-- <td *ngIf="result.fairScore" class="uk-text-center">{{result.fairScore ? result.fairScore : '-'}}</td>-->
<td class="uk-text-center">{{result.startDate | date:'yyyy-MM-dd, HH:mm:ss'}}</td>
<td class="uk-text-center">{{result.guidelines}}</td>
<!-- <td class="uk-text-center">{{result.progress}}</td>-->
<!-- <td class="uk-text-center">{{result.status}}</td>-->
<td class="uk-text-center">
<!-- <span *ngIf="result.progress == Progress.COMPLETED"-->
<!-- class="uk-label" [ngClass]="result.status == Status.SUCCESS ? 'uk-label-success' : 'uk-label-danger'">-->
<!-- {{result.status}}-->
<!-- </span>-->
<a *ngIf="result.progress == Progress.COMPLETED" class="clickable uk-text-success"
routerLink="/oaipmh-analysis" [queryParams]="{'jobId': result.id}">
View results
<!-- <ng-container *ngIf="validationAnalysis">Hide Results</ng-container>-->
</a>
<span *ngIf="result.progress == Progress.IN_PROGRESS" class="uk-text-warning">
In progess
</span>
<span *ngIf="result.progress == Progress.STOPPED && result.status != Status.FAILURE && !result.exceptionMessage" class="uk-text-danger">
Stopped
</span>
<span *ngIf="result.status == Status.FAILURE && !result.exceptionMessage && result.progress != Progress.COMPLETED" class="uk-text-danger">
Error
</span>
<span *ngIf="result.exceptionMessage" class="clickable uk-text-danger" (click)="viewErrors(result.exceptionMessage)">
Errors
</span>
</td>
<!-- <td>-->
<!-- <a class="uk-button-link uk-flex uk-flex-middle" [ngClass]="result.progress != Progress.COMPLETED ? 'uk-disabled uk-link-muted' : ''"-->
<!-- routerLink="/oaipmh-analysis" [queryParams]="{'jobId': result.id}">-->
<!-- <icon name="visibility" flex="true" class="uk-margin-small-right"></icon>-->
<!-- <ng-container>View Results</ng-container>-->
<!--&lt;!&ndash; <ng-container *ngIf="validationAnalysis">Hide Results</ng-container>&ndash;&gt;-->
<!-- </a>-->
<!-- </td>-->
<!-- SUCCESS, FAILURE, IN_PROGRESS, COMPLETED, STOPPED-->
</tr>
</tbody>
</table>
<div *ngIf="warning" class="uk-alert uk-alert-warning">Please reload the page to get the updated status.</div>
<modal-alert #errorsModal large="true" (alertOutput)="errorsModalOpen=false" classTitle="uk-border-bottom">
<div *ngIf="errorsModalOpen" class="uk-modal-body uk-height-min-medium uk-width-expand">
<div *ngIf="!error">No errors available</div>
<div *ngIf="error" [class.uk-margin-medium-bottom]="error">
<div class="uk-text-danger">{{error}}</div>
</div>
</div>
</modal-alert>
</div>
</div>
</div>
</div>
</div>
</div>
<!--<div id="page_content">-->
<!-- <div id="page_content_header" class="uk-blur-background" offset="65">-->
<!-- <div class="uk-container uk-container-large">-->
<!-- <div class="uk-section" [formGroup]="form">-->
<!-- <ng-container *ngIf="!viewResults">-->
<!-- <h6>1. Select guidelines (*)</h6>-->
<!-- <div *ngFor="let option of options">-->
<!-- <input [id]="option.value" type="radio" [value]="option.value" name="guidelines" formControlName="guidelines">-->
<!-- <label [for]="option.value"> {{option.label}}</label>-->
<!-- </div>-->
<!-- <h6>2. Paste metadata record (*)</h6>-->
<!-- <div input class="uk-width-1-1 uk-margin-top" [formInput]="form.get('xml')" placeholder="Paste your xml here" type="textarea" [rows]="15"></div>-->
<!-- &lt;!&ndash; <ngx-dropzone #drop class="" (change)="fileChangeEvent($event, true)"&ndash;&gt;-->
<!-- &lt;!&ndash; [multiple]="false" [accept]="xml">&ndash;&gt;-->
<!-- &lt;!&ndash; <ngx-dropzone-preview *ngIf="form.value.value && form.value.value.name" class="file-preview"&ndash;&gt;-->
<!-- &lt;!&ndash; [removable]="true" (removed)="onRemove()">&ndash;&gt;-->
<!-- &lt;!&ndash; <ngx-dropzone-label class="file-label">{{ form.value.value.name }}</ngx-dropzone-label>&ndash;&gt;-->
<!-- &lt;!&ndash; </ngx-dropzone-preview>&ndash;&gt;-->
<!-- &lt;!&ndash; </ngx-dropzone>&ndash;&gt;-->
<!-- &lt;!&ndash; <button *ngIf="!form.value.value || filesToUpload" mat-button (click)="drop.showFileSelector()" type="button" class="attach-file-btn"&ndash;&gt;-->
<!-- &lt;!&ndash; [disabled]="!!form.value.value">&ndash;&gt;-->
<!-- &lt;!&ndash; <mat-icon class="mr-2">upload</mat-icon>&ndash;&gt;-->
<!-- &lt;!&ndash; <mat-label>{{ (form.get('data').value.label | translate)}}</mat-label>&ndash;&gt;-->
<!-- &lt;!&ndash; </button>&ndash;&gt;-->
<!-- <div class="uk-margin-medium-top">-->
<!-- <button class="uk-button uk-flex uk-flex-middle uk-flex-wrap"-->
<!-- [class.uk-button-primary]="form.valid" [class.uk-disabled]="!form.valid"-->
<!-- (click)="validate(); viewResults=true">-->
<!-- <span class="uk-margin-small-left">Start Validation</span>-->
<!-- </button>-->
<!-- </div>-->
<!-- </ng-container>-->
<!-- <div *ngIf="viewResults">-->
<!-- <button class="uk-button uk-button-link uk-flex uk-flex-middle uk-margin-bottom" (click)="viewResults = false">-->
<!-- <icon name="west" [flex]="true"></icon>-->
<!-- <span class="uk-margin-small-left">Back</span>-->
<!-- </button>-->
<!-- <div *ngIf="!result" class="uk-alert uk-alert-primary">-->
<!-- No validated metadata record yet-->
<!-- </div>-->
<!-- <div *ngIf="result">-->
<!-- <h6>Validator's History</h6>-->
<!-- <table class="uk-table uk-table-striped">-->
<!-- <thead>-->
<!-- <tr class="uk-child-width-1-4">-->
<!-- <th *ngIf="result.validationScore">Validation Score</th>-->
<!-- <th *ngIf="result.fairScore" class="uk-text-center">Fair Score</th>-->
<!-- <th class="uk-text-center">Guidelines</th>-->
<!-- <th class="uk-text-center">Actions</th>-->
<!-- </tr>-->
<!-- </thead>-->
<!-- <tbody>-->
<!-- <tr>-->
<!-- <td *ngIf="result.validationScore" [class.uk-text-center]="!result.validationScore">{{result.validationScore ? result.validationScore : '-'}}</td>-->
<!-- <td *ngIf="result.fairScore" class="uk-text-center">{{result.fairScore ? result.fairScore : '-'}}</td>-->
<!-- <td class="uk-text-center">{{currentGuideline?.label}}</td>-->
<!-- <td class="uk-flex uk-flex-center">-->
<!-- <a class="uk-button-link uk-flex uk-flex-middle uk-flex-center" (click)="validationAnalysis=!validationAnalysis">-->
<!-- <icon name="visibility" flex="true" class="uk-margin-small-right"></icon>-->
<!-- <ng-container *ngIf="!validationAnalysis">View Results</ng-container>-->
<!-- <ng-container *ngIf="validationAnalysis">Hide Results</ng-container>-->
<!-- </a>-->
<!-- </td>-->
<!-- </tr>-->
<!-- </tbody>-->
<!-- </table>-->
<!-- </div>-->
<!-- <div *ngIf="result && validationAnalysis" class="uk-margin-large-top">-->
<!-- <ul uk-tab>-->
<!-- <li *ngIf="result.validationScore"><a>Validation Result Analysis</a></li>-->
<!-- <li *ngIf="result.fairScore"><a>Fair Validation Result Analysis</a></li>-->
<!-- </ul>-->
<!-- <ul class="uk-switcher uk-margin">-->
<!-- <li *ngIf="result.validationScore"><ng-container *ngTemplateOutlet="rules_analysis; context: {rules: result.rules}"></ng-container></li>-->
<!-- <li *ngIf="result.fairScore"><ng-container *ngTemplateOutlet="rules_analysis; context: {rules: result.fairRules}"></ng-container></li>-->
<!-- </ul>-->
<!--&lt;!&ndash; <h6>Validation Result Analysis</h6>&ndash;&gt;-->
<!-- </div>-->
<!-- <modal-alert #warningsModal large="true" (alertOutput)="warningsModalOpen=false">-->
<!-- <div *ngIf="warningsModalOpen" class="uk-modal-body uk-height-min-medium uk-width-expand">-->
<!-- <div *ngIf="currentRule.warnings?.length > 0" class="uk-margin-bottom">-->
<!-- <span class="uk-text-warning">Warnings</span>-->
<!-- <div *ngFor="let message of currentRule.warnings">{{message}}</div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </modal-alert>-->
<!-- <modal-alert #errorsModal large="true" (alertOutput)="errorsModalOpen=false">-->
<!-- <div *ngIf="errorsModalOpen" class="uk-modal-body uk-height-min-medium uk-width-expand">-->
<!-- <div *ngIf="currentRule.errors?.length > 0" class="uk-margin-bottom">-->
<!-- <span class="uk-text-danger">Errors</span>-->
<!-- <div *ngFor="let message of currentRule.errors">{{message}}</div>-->
<!-- </div>-->
<!-- <div *ngIf="currentRule.internalError">Internal error: {{currentRule.internalError}}</div>-->
<!-- </div>-->
<!-- </modal-alert>-->
<!--&lt;!&ndash; <div class="uk-margin-top uk-section-muted uk-padding-small">&ndash;&gt;-->
<!--&lt;!&ndash; Comments&ndash;&gt;-->
<!--&lt;!&ndash; <ul class="uk-list uk-list-bullet">&ndash;&gt;-->
<!--&lt;!&ndash; <li>returns success, not warning status</li>&ndash;&gt;-->
<!--&lt;!&ndash; <li>what is the score?</li>&ndash;&gt;-->
<!--&lt;!&ndash; <li>do we have rule weight?</li>&ndash;&gt;-->
<!--&lt;!&ndash; <li>no description or user friendly name provided</li>&ndash;&gt;-->
<!--&lt;!&ndash; <li>errors/ warning not user friendly</li>&ndash;&gt;-->
<!--&lt;!&ndash; <li>can return errors & warnings</li>&ndash;&gt;-->
<!--&lt;!&ndash; <li>on errors, only the 1st one is returned (this is what comments in code say)</li>&ndash;&gt;-->
<!--&lt;!&ndash; </ul>&ndash;&gt;-->
<!--&lt;!&ndash; </div>&ndash;&gt;-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!--</div>-->