From 23c4ec918578c60db099fe7e86a687faeabacaa7 Mon Sep 17 00:00:00 2001
From: Damien <damien.burel@maarch.org>
Date: Thu, 20 Feb 2020 17:48:31 +0100
Subject: [PATCH] FEAT #12091 TIME 0:20 Fix contacts autocomplete

---
 src/app/contact/controllers/ContactController.php              | 3 +++
 .../contact/list/contacts-list-administration.component.ts     | 3 +--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/app/contact/controllers/ContactController.php b/src/app/contact/controllers/ContactController.php
index 04fe89893a8..80edf56531a 100755
--- a/src/app/contact/controllers/ContactController.php
+++ b/src/app/contact/controllers/ContactController.php
@@ -98,6 +98,9 @@ class ContactController
             'limit'     => $queryParams['limit']
         ]);
         $count = $contacts[0]['count'] ?? 0;
+        if (empty($contacts)) {
+            return $response->withJson(['contacts' => $contacts, 'count' => $count]);
+        }
 
         $contactIds = array_column($contacts, 'id');
         $contactsUsed = ContactController::isContactUsed(['ids' => $contactIds]);
diff --git a/src/frontend/app/administration/contact/list/contacts-list-administration.component.ts b/src/frontend/app/administration/contact/list/contacts-list-administration.component.ts
index 7fa23144154..784338fcfc3 100644
--- a/src/frontend/app/administration/contact/list/contacts-list-administration.component.ts
+++ b/src/frontend/app/administration/contact/list/contacts-list-administration.component.ts
@@ -11,7 +11,6 @@ import { takeUntil, startWith, switchMap, map, catchError, filter, exhaustMap, t
 import { ConfirmComponent } from '../../../../plugins/modal/confirm.component';
 import { FormControl } from '@angular/forms';
 import { FunctionsService } from '../../../../service/functions.service';
-import {UserAdministrationRedirectModalComponent} from "../../user/user-administration.component";
 
 @Component({
     selector: 'contact-list',
@@ -131,7 +130,7 @@ export class ContactsListAdministrationComponent implements OnInit {
             element.formatedAddress = tmpFormatedAddress.filter(address => !this.isEmptyValue(address)).join(' ');
         });
 
-        if (!this.functions.empty(data.contacts[0].filling)) {
+        if (!this.functions.empty(data.contacts[0]) && !this.functions.empty(data.contacts[0].filling)) {
             this.displayedColumnsContact = ['filling', 'firstname', 'lastname', 'company', 'formatedAddress', 'actions'];
         } else {
             this.displayedColumnsContact = ['firstname', 'lastname', 'company', 'formatedAddress', 'actions'];
-- 
GitLab