From 7f44deb52fb92a64c5a76f616ce8f90b5af437bc Mon Sep 17 00:00:00 2001
From: Hamza HRAMCHI <hamza.hramchi@xelians.fr>
Date: Thu, 28 Oct 2021 18:12:24 +0200
Subject: [PATCH] FIX #14839 TIME 0:10 control multigestUrl

---
 ...multigest-list-administration.component.ts | 23 +++++++++++--------
 1 file changed, 14 insertions(+), 9 deletions(-)

diff --git a/src/frontend/app/administration/multigest/multigest-list-administration.component.ts b/src/frontend/app/administration/multigest/multigest-list-administration.component.ts
index aaca62e76c7..b97b263c83e 100644
--- a/src/frontend/app/administration/multigest/multigest-list-administration.component.ts
+++ b/src/frontend/app/administration/multigest/multigest-list-administration.component.ts
@@ -35,6 +35,8 @@ export class MultigestListAdministrationComponent implements OnInit {
 
     dialogRef: MatDialogRef<any>;
 
+    multigestUrlClone: string = '';
+
     constructor(
         public translate: TranslateService,
         public http: HttpClient,
@@ -116,14 +118,17 @@ export class MultigestListAdministrationComponent implements OnInit {
     }
 
     saveUrl() {
-        this.http.put('../rest/multigest/configuration', { uri: this.multigestUrl }).pipe(
-            tap(() => {
-                this.notify.success(this.translate.instant('lang.dataUpdated'));
-            }),
-            catchError((err: any) => {
-                this.notify.handleSoftErrors(err);
-                return of(false);
-            })
-        ).subscribe();
+        if (JSON.stringify(this.multigestUrl) !== JSON.stringify(this.multigestUrlClone) || this.functions.empty(this.multigestUrl)) {
+            this.http.put('../rest/multigest/configuration', { uri: this.multigestUrl }).pipe(
+                tap(() => {
+                    this.multigestUrlClone = JSON.parse(JSON.stringify(this.multigestUrl));
+                    this.notify.success(this.translate.instant('lang.dataUpdated'));
+                }),
+                catchError((err: any) => {
+                    this.notify.handleSoftErrors(this.translate.instant('lang.multigestUriIsEmpty'));
+                    return of(false);
+                })
+            ).subscribe();
+        }
     }
 }
-- 
GitLab