From 65b0e1a0a00fc334c25a67c74f10e32693882cab Mon Sep 17 00:00:00 2001
From: Alex ORLUC <alex.orluc@maarch.org>
Date: Thu, 14 Mar 2019 22:15:54 +0100
Subject: [PATCH] add if no param redirect

---
 .../redirect-action/redirect-action.component.html    |  5 ++++-
 .../redirect-action/redirect-action.component.ts      | 11 +++++++++--
 .../app/diffusions/diffusions-list.component.ts       |  2 +-
 3 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/src/frontend/app/actions/redirect-action/redirect-action.component.html b/src/frontend/app/actions/redirect-action/redirect-action.component.html
index 1932663bd58..da1052113a6 100644
--- a/src/frontend/app/actions/redirect-action/redirect-action.component.html
+++ b/src/frontend/app/actions/redirect-action/redirect-action.component.html
@@ -15,6 +15,9 @@
             <button mat-raised-button (click)="loadDestUser()">Vers un utilisateur</button>
         </div>
     </div>
+    <div *ngIf="redirectMode == 'none' && !loading">
+        <div class="alert-message alert-message-danger" role="alert" style="margin-top: 30px;">Aucun paramétrage disponible</div>
+    </div>
     <div *ngIf="redirectMode == 'entity'" class="row" style="display: flex;">
         <div class="redirectContent" style="flex:2">
             <h2>Rediriger vers :</h2>
@@ -65,7 +68,7 @@
         <div *ngIf="keepDestForRedirection && oldUser != null" class="alert-message alert-message-info" role="alert" style="margin-top: 30px;"><b>{{oldUser.labelToDisplay}}</b> sera automatiquement mise <b>en copie</b></div>
     </div>
 
-    <div class="row" *ngIf="redirectMode != ''">
+    <div class="row" *ngIf="redirectMode != '' && redirectMode != 'none'">
         <app-note-editor #noteEditor [resIds]="data.selectedRes"></app-note-editor>
     </div>
 </div>
diff --git a/src/frontend/app/actions/redirect-action/redirect-action.component.ts b/src/frontend/app/actions/redirect-action/redirect-action.component.ts
index 8998fa2309c..69f41160b87 100644
--- a/src/frontend/app/actions/redirect-action/redirect-action.component.ts
+++ b/src/frontend/app/actions/redirect-action/redirect-action.component.ts
@@ -45,6 +45,7 @@ export class RedirectActionComponent implements OnInit {
     constructor(public http: HttpClient, private notify: NotificationService, public dialogRef: MatDialogRef<RedirectActionComponent>, @Inject(MAT_DIALOG_DATA) public data: any) { }
 
     ngOnInit(): void {
+        let noEntity = true;
         this.loading = true;
         this.http.get("../../rest/resourcesList/users/" + this.data.currentBasketInfo.ownerId + "/groups/" + this.data.currentBasketInfo.groupId + "/baskets/" + this.data.currentBasketInfo.basketId + "/actions/" + this.data.action.id + "/getRedirect/entity")
             .subscribe((data: any) => {
@@ -56,15 +57,21 @@ export class RedirectActionComponent implements OnInit {
                     if (entity.state.selected) {
                         this.currentEntity = entity;
                     }
+                    if (entity.allowed) {
+                        noEntity = false;
+                    }
                 });
 
                 this.http.get("../../rest/resourcesList/users/" + this.data.currentBasketInfo.ownerId + "/groups/" + this.data.currentBasketInfo.groupId + "/baskets/" + this.data.currentBasketInfo.basketId + "/actions/" + this.data.action.id + "/getRedirect/users")
                     .subscribe((data: any) => {
                         this.userListRedirect = data.users;
                         this.keepDestForRedirection = data.keepDestForRedirection;
-                        if (this.userListRedirect.length == 0 && this.entities.length > 0) {
+                        if (this.userListRedirect.length == 0 && noEntity) {
+                            this.redirectMode = 'none';
+                            this.loading = false;
+                        } else if (this.userListRedirect.length == 0 && !noEntity) {
                             this.loadEntities();
-                        } else if (this.userListRedirect.length > 0 && this.entities.length == 0) {
+                        } else if (this.userListRedirect.length > 0 && noEntity) {
                             this.loadDestUser();
                         } else {
                             this.loading = false;
diff --git a/src/frontend/app/diffusions/diffusions-list.component.ts b/src/frontend/app/diffusions/diffusions-list.component.ts
index 925ef6ac3e0..5d3741b98d8 100644
--- a/src/frontend/app/diffusions/diffusions-list.component.ts
+++ b/src/frontend/app/diffusions/diffusions-list.component.ts
@@ -118,7 +118,7 @@ export class DiffusionsListComponent implements OnInit {
     injectListinstanceToKeep() {
         this.http.get("../../rest/resources/" + this.injectDatas.resId + "/listInstance").subscribe((data: any) => {
             data.listInstance.forEach((element: any) => {
-                if (element.item_mode = 'cc') {
+                if (element.item_mode == 'cc') {
                     element.item_mode = 'copy';
                 }
                 if (this.keepRoles.indexOf(element.item_mode) > -1 && this.diffList[element.item_mode].items.map((e: any) => { return e.item_id; }).indexOf(element.item_id) == -1) {
-- 
GitLab