From 3363ee6bf6d21fa357841cd985d2c5856b3a3c3e Mon Sep 17 00:00:00 2001
From: David Surville <david.surville@unicaen.fr>
Date: Tue, 17 Dec 2024 10:05:27 +0100
Subject: [PATCH] [Fix] PHP Warning:  array_diff(): Expected parameter 1 to be
 an array, string given

---
 src/UnicaenLdap/Entity/Base/Group.php | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/UnicaenLdap/Entity/Base/Group.php b/src/UnicaenLdap/Entity/Base/Group.php
index c75dbb1..4af70e3 100644
--- a/src/UnicaenLdap/Entity/Base/Group.php
+++ b/src/UnicaenLdap/Entity/Base/Group.php
@@ -137,6 +137,13 @@ class Group extends Entity
             }
         }, $value);
 
+        // Rustine nécessaire lorsque les nouvelles données sont identiques aux données actuelles mais pas triées de la même façon
+        $diff1 = array_diff($value, $this->getNode()->getAttribute('member') ?: []);
+        $diff2 = array_diff($this->getNode()->getAttribute('member') ?: [], $value);
+        if(empty($diff1) && empty($diff2)) {
+            $value = $this->getNode()->getAttribute('member');
+        }
+
         $value = array_filter($value);
         $members = !$append ? (!empty($value) ? $value : [$this->getMemberNobody()]) : $value;
 
-- 
GitLab