From 863c47ae38a60c644838790be8b760bfa7c6df43 Mon Sep 17 00:00:00 2001 From: Henning Leutz <leutz@pcsg.de> Date: Thu, 1 Sep 2022 13:44:09 +0200 Subject: [PATCH] fix: check if areas has been changed, trigger the save only if areas changed --- src/QUI/Bricks/Events.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/QUI/Bricks/Events.php b/src/QUI/Bricks/Events.php index 5ee59e6..bdf35e6 100644 --- a/src/QUI/Bricks/Events.php +++ b/src/QUI/Bricks/Events.php @@ -44,8 +44,9 @@ public static function onSiteSave($Site) QUI\Permissions\Permission::checkPermission('quiqqer.bricks.assign'); - $areas = $Site->getAttribute('quiqqer.bricks.areas'); - $areas = json_decode($areas, true); + $areas = $Site->getAttribute('quiqqer.bricks.areas'); + $oldAreaString = $areas; + $areas = json_decode($areas, true); if (empty($areas)) { return; @@ -166,8 +167,10 @@ public static function onSiteSave($Site) self::$saved[$Site->getId()] = true; // save bricks with unique ids - $Site->setAttribute('quiqqer.bricks.areas', json_encode($areas)); - $Site->save(); + if ($oldAreaString !== json_encode($areas)) { + $Site->setAttribute('quiqqer.bricks.areas', json_encode($areas)); + $Site->save(); + } } /** -- GitLab