mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
93 lines
4.9 KiB
HTML
93 lines
4.9 KiB
HTML
<div *ngIf="(versionsDTO$ | async) as versionsDTO; else noItemVersion">
|
|
<div *ngIf="(versionRD$ | async)?.payload as itemVersion">
|
|
<div class="mb-2" *ngIf="versionsDTO.versionDTOs.length > 0 || displayWhenEmpty">
|
|
<h2 *ngIf="displayTitle" class="h4">{{"item.version.history.head" | translate}}</h2>
|
|
<ds-alert [type]="AlertTypeEnum.Info">
|
|
{{ "item.version.history.selected.alert" | translate : {version: itemVersion.version} }}
|
|
</ds-alert>
|
|
<ds-pagination *ngIf="versionsDTO.versionDTOs.length > 0"
|
|
(paginationChange)="onPageChange()"
|
|
[hideGear]="true"
|
|
[hidePagerWhenSinglePage]="true"
|
|
[paginationOptions]="options"
|
|
[collectionSize]="versionsDTO.totalElements"
|
|
[retainScrollPosition]="true">
|
|
<table class="table table-striped table-bordered align-middle my-2">
|
|
<thead>
|
|
<tr>
|
|
<th scope="col">{{"item.version.history.table.version" | translate}}</th>
|
|
<th scope="col" *ngIf="(showSubmitter$ | async)">{{"item.version.history.table.editor" | translate}}</th>
|
|
<th scope="col">{{"item.version.history.table.date" | translate}}</th>
|
|
<th scope="col">{{"item.version.history.table.summary" | translate}}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr *ngFor="let versionDTO of versionsDTO.versionDTOs" [id]="'version-row-' + versionDTO.version.id">
|
|
<td class="version-row-element-version">
|
|
<ds-item-versions-row-element-version [hasDraftVersion]="hasDraftVersion$ | async"
|
|
[version]="versionDTO.version"
|
|
[item]="item" [displayActions]="displayActions"
|
|
[itemVersion]="itemVersion"
|
|
[versionBeingEditedNumber]="versionBeingEditedNumber"
|
|
(versionsHistoryChange)="getAllVersions($event)"
|
|
></ds-item-versions-row-element-version>
|
|
</td>
|
|
<td class="version-row-element-editor" *ngIf="(showSubmitter$ | async)">
|
|
{{versionDTO.version.submitterName}}
|
|
</td>
|
|
<td class="version-row-element-date">
|
|
{{versionDTO.version.created | date : 'yyyy-MM-dd HH:mm:ss'}}
|
|
</td>
|
|
<td class="version-row-element-summary">
|
|
<div class="float-left">
|
|
<ng-container *ngIf="isThisBeingEdited(versionDTO.version); then editSummary else showSummary"></ng-container>
|
|
<ng-template #showSummary>{{versionDTO.version.summary}}</ng-template>
|
|
<ng-template #editSummary>
|
|
<input [attr.aria-label]="'item.version.history.table.action.editSummary' | translate"
|
|
[(ngModel)]="versionBeingEditedSummary" (keyup.enter)="onSummarySubmit()"
|
|
class="form-control" type="text"/>
|
|
</ng-template>
|
|
</div>
|
|
|
|
<div class="float-right btn-group edit-field space-children-mr" *ngIf="displayActions && versionDTO.canEditVersion | async">
|
|
<ng-container *ngIf="isThisBeingEdited(versionDTO.version); else notThisBeingEdited">
|
|
<!--DISCARD EDIT-->
|
|
<button class="btn btn-sm btn-outline-warning"
|
|
(click)="disableVersionEditing()"
|
|
title="{{'item.version.history.table.action.discardSummary' | translate}}">
|
|
<i class="fas fa-undo-alt fa-fw"></i>
|
|
</button>
|
|
<!--SAVE-->
|
|
<button class="btn btn-outline-success btn-sm"
|
|
(click)="onSummarySubmit()"
|
|
title="{{'item.version.history.table.action.saveSummary' | translate}}">
|
|
<i class="fas fa-check fa-fw"></i>
|
|
</button>
|
|
</ng-container>
|
|
<ng-template #notThisBeingEdited>
|
|
<!--EDIT-->
|
|
<button class="btn btn-outline-primary btn-sm version-row-element-edit"
|
|
[dsBtnDisabled]="isAnyBeingEdited()"
|
|
(click)="enableVersionEditing(versionDTO.version)"
|
|
title="{{'item.version.history.table.action.editSummary' | translate}}">
|
|
<i class="fas fa-edit fa-fw"></i>
|
|
</button>
|
|
</ng-template>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<div>* {{"item.version.history.selected" | translate}}</div>
|
|
</ds-pagination>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<ng-template #noItemVersion>
|
|
<ds-alert *ngIf="displayWhenEmpty"
|
|
[content]="'item.version.history.empty'"
|
|
[type]="AlertTypeEnum.Info">
|
|
</ds-alert>
|
|
</ng-template>
|