From 574c62013abe6b8ef3d46b952b96ae072f52bec6 Mon Sep 17 00:00:00 2001
From: Alex ORLUC <alex.orluc@maarch.org>
Date: Wed, 5 Jun 2019 18:59:10 +0200
Subject: [PATCH] FEAT #10619 TIME 1:30 add userlist signaturebook

---
 src/core/controllers/AutoCompleteController.php   |  5 +++++
 .../app/visa/visa-workflow.component.html         |  2 +-
 src/frontend/app/visa/visa-workflow.component.ts  | 15 ++++++++++++++-
 3 files changed, 20 insertions(+), 2 deletions(-)

diff --git a/src/core/controllers/AutoCompleteController.php b/src/core/controllers/AutoCompleteController.php
index fafe1117b97..4e1ad461916 100755
--- a/src/core/controllers/AutoCompleteController.php
+++ b/src/core/controllers/AutoCompleteController.php
@@ -154,6 +154,11 @@ class AutoCompleteController
                 }
                 return $response->withStatus(400)->withJson(['errors' => $errors]);
             }
+
+            foreach ($curlResponse['response'] as $key => $value) {
+                $curlResponse['response'][$key]['idToDisplay'] = $value['firstname'] . ' ' . $value['lastname'];
+                $curlResponse['response'][$key]['externalId']['maarchParapheur'] = $value['id'];
+            }
             return $response->withJson($curlResponse['response']);
         } else {
             return $response->withStatus(403)->withJson(['errors' => 'maarchParapheur is not enabled']);
diff --git a/src/frontend/app/visa/visa-workflow.component.html b/src/frontend/app/visa/visa-workflow.component.html
index cb2d80f1fd7..b444e609de7 100644
--- a/src/frontend/app/visa/visa-workflow.component.html
+++ b/src/frontend/app/visa/visa-workflow.component.html
@@ -4,7 +4,7 @@
             [matAutocomplete]="auto" [formControl]="userCtrl">
         <mat-autocomplete #auto="matAutocomplete" (optionSelected)="addItem($event)" isOpen="true">
             <mat-option *ngFor="let user of filteredUsers | async" [value]="user">
-                {{user.displayName}}
+                {{user.idToDisplay}}
             </mat-option>
         </mat-autocomplete>
     </mat-form-field>
diff --git a/src/frontend/app/visa/visa-workflow.component.ts b/src/frontend/app/visa/visa-workflow.component.ts
index e6a62a3879d..334d3258a86 100644
--- a/src/frontend/app/visa/visa-workflow.component.ts
+++ b/src/frontend/app/visa/visa-workflow.component.ts
@@ -1,10 +1,12 @@
-import { Component, Input, OnInit } from '@angular/core';
+import { Component, Input, OnInit, ElementRef, ViewChild } from '@angular/core';
 import { HttpClient } from '@angular/common/http';
 import { LANG } from '../translate.component';
 import { NotificationService } from '../notification.service';
 import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';
 import { AutoCompletePlugin } from '../../plugins/autocomplete.plugin';
 
+declare function $j(selector: any): any;
+
 @Component({
     selector: 'app-visa-workflow',
     templateUrl: 'visa-workflow.component.html',
@@ -92,4 +94,15 @@ export class VisaWorkflowComponent extends AutoCompletePlugin implements OnInit
 
         return usersMissing;
     }
+    
+    addItem(event: any) {
+        const user = {
+            'externalId': event.option.value.externalId,
+            'labelToDisplay' : event.option.value.idToDisplay,
+            'requested_signature' : false,
+        }
+        this.visaWorkflow.items.push(user);
+        $j('#availableUsers').blur();
+        this.userCtrl.setValue('');
+    }
 }
\ No newline at end of file
-- 
GitLab