diff --git a/src/frontend/app/search/search.component.html b/src/frontend/app/search/search.component.html index 06cfb8f414986eee70e1248971a7beabb51c344f..dc63510e6bce3ae19eb3ad89589cb3fa35edd5da 100644 --- a/src/frontend/app/search/search.component.html +++ b/src/frontend/app/search/search.component.html @@ -113,8 +113,8 @@ </ion-icon> <ion-icon *ngIf="element.state === 'DEL'" color="danger" slot="start" name="close-circle-outline"></ion-icon> - <ion-label (click)="goTo(element.id)" [title]="'lang.accessDocument' | translate" - style="cursor: pointer;"> + <ion-label (click)="goTo(element)" [title]="element.status !== 'HARD_DEL' ? ('lang.accessDocument' | translate) : 'Impossible'" + [ngStyle]="{'cursor': element.status !== 'HARD_DEL' ? 'cursor' : 'not-allowed'}"> <p [class.unavailableDoc]="element.state === 'DEL'">{{element.reference}}</p> <h2 [class.unavailableDoc]="element.state === 'DEL'">{{element.title}}</h2> <p *ngIf="element.reason.length > 0" class="primary"> diff --git a/src/frontend/app/search/search.component.ts b/src/frontend/app/search/search.component.ts index 8897823b8f026f461a96d53931ef810851a64cb1..3361117dbc90037036f646499d5a528bc0a90b58 100644 --- a/src/frontend/app/search/search.component.ts +++ b/src/frontend/app/search/search.component.ts @@ -73,8 +73,8 @@ export class SearchComponent implements OnInit { selected: false }, { - id: 'DEL', - label: 'lang.deleted', + id: 'HARD_DEL', + label: 'lang.hardDeleted', selected: false } ] @@ -268,7 +268,7 @@ export class SearchComponent implements OnInit { } canShowButton(id: string, item: any) { - if (id === 'purgeDocument' && this.canPurge && ['STOP', 'VAL', 'REF'].indexOf(item.state) > -1 && item.status !== 'DELETED') { + if (id === 'purgeDocument' && this.canPurge && ['STOP', 'VAL', 'REF'].indexOf(item.state) > -1 && item.status !== 'SOFT_DEL') { return true; } else if (id === 'interruptWorkflow' && item.canInterrupt) { return true; @@ -302,7 +302,7 @@ export class SearchComponent implements OnInit { return new Promise((resolve) => { let uri: string = '../rest/search/documents?limit=10&offset=0'; - uri = this.canPurge && this.filters.find((filter: any) => filter.id === 'documentState')?.values[0].selected ? uri.concat('&deleted=true') : uri; + uri = this.canPurge && this.filters.find((filter: any) => filter.id === 'documentState')?.values[0].selected ? uri.concat('&softDeleted=true') : uri; this.http.post(`${uri}`, this.formatDatas()) .pipe( tap((data: any) => { @@ -420,7 +420,7 @@ export class SearchComponent implements OnInit { const alert = await this.alertController.create({ cssClass: 'promptProof', header: this.translate.instant('lang.download'), - inputs: item.state !== 'DEL' ? [ + inputs: item.state !== 'HARD_DEL' ? [ { name: 'option1', type: 'radio', @@ -491,8 +491,10 @@ export class SearchComponent implements OnInit { return currentUserWorkflow.length > 0 ? currentUserWorkflow[0].userId : null; } - goTo(resId: number) { - this.router.navigate([`/documents/${resId}`]); + goTo(element: any) { + if (element.status !== 'HARD_DEL') { + this.router.navigate([`/documents/${element.resId}`]); + } } clearFilters() {