From 469cf385639bcd2f724098a5f7e63618c15c1680 Mon Sep 17 00:00:00 2001
From: Hamza HRAMCHI <hamza.hramchi@xelians.fr>
Date: Tue, 5 Apr 2022 12:14:03 +0200
Subject: [PATCH] FIX #17436 TIME 0:10 update url + getPrivilegeParameters
 function

---
 .../administration/group/group.component.ts   | 40 +++++++++----------
 1 file changed, 19 insertions(+), 21 deletions(-)

diff --git a/src/frontend/app/administration/group/group.component.ts b/src/frontend/app/administration/group/group.component.ts
index d531b687ab..3cc7a0a8a6 100644
--- a/src/frontend/app/administration/group/group.component.ts
+++ b/src/frontend/app/administration/group/group.component.ts
@@ -158,32 +158,30 @@ export class GroupComponent implements OnInit {
     }
 
     getPrivilegeParameters() {
-        const privilege: any = this.group.privileges.find((item: any) => item.id === 'manage_users');
         return new Promise((resolve) => {
-            this.http.get('../rest/groups/' + this.group.id + '/privilege/' + privilege.id).pipe(
+            this.http.get('../rest/groups/' + this.group.id).pipe(
                 tap((data: any) => {
-                    this.allGroups.forEach((element: any, index: number) => {
-                        if (this.groups.find((item: any) => item.id === element.id) === undefined) {
-                            let checked: boolean;
-                            if (data.parameters.authorized !== undefined) {
-                                if (data.parameters.authorized.indexOf(element.id) > -1) {
-                                    checked = true;
+                    const manageUsers: any = data.group.privileges.find((item: any) => item.id === 'manage_users');
+                    if (!this.functions.empty(manageUsers)) {
+                        this.allGroups.forEach((element: any, index: number) => {
+                            if (this.groups.find((item: any) => item.id === element.id) === undefined) {
+                                let checked: boolean;
+                                if (!this.functions.empty(manageUsers.parameters.authorized)) {
+                                    checked = manageUsers.parameters.authorized.indexOf(element.id) > -1;
                                 } else {
-                                    checked = false;
+                                    checked = true;
                                 }
-                            } else {
-                                checked = true;
+                                this.groups.push(
+                                    {
+                                        id: element.id,
+                                        label: element.label,
+                                        checked:  checked
+                                    }
+                                );
                             }
-                            this.groups.push(
-                                {
-                                    id: element.id,
-                                    label: element.label,
-                                    checked:  checked
-                                }
-                            );
-                        }
-                    });
-                    this.groups = [...new Set(this.groups)];
+                        });
+                        this.groups = [...new Set(this.groups)];
+                    }
                     resolve(true);
                 }),
                 catchError((err: any) => {
-- 
GitLab