From 4ac414375a884368022d008f9feb70ce09c4b81f Mon Sep 17 00:00:00 2001 From: ihormandzyuk <75434014+ihormandzyuk@users.noreply.github.com> Date: Thu, 15 Jun 2023 17:14:09 +0300 Subject: [PATCH] Update ConvertConfigToJsonPatch.php --- Setup/Patch/Data/ConvertConfigToJsonPatch.php | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Setup/Patch/Data/ConvertConfigToJsonPatch.php b/Setup/Patch/Data/ConvertConfigToJsonPatch.php index 70ddd81..ccfba8e 100644 --- a/Setup/Patch/Data/ConvertConfigToJsonPatch.php +++ b/Setup/Patch/Data/ConvertConfigToJsonPatch.php @@ -114,6 +114,17 @@ public function apply() $this->moduleDataSetup->endSetup(); } + /** + * @param $block + * @return string + */ + protected function getNumberHashForBlock ($block): string { + $numberHashFromString = sprintf('%u', crc32($block)); + $numberHashFromStringSuffix = substr($numberHashFromString, -3); + + return '_' . $numberHashFromString . $numberHashFromStringSuffix . '_' . $numberHashFromStringSuffix; + } + /** * @param $blocks * @return bool|string @@ -121,15 +132,12 @@ public function apply() protected function getJsonForBlocks($blocks) { $arrayBlocks = []; - $counter = 1; foreach ($blocks as $block) { - $arrayBlocks[(string)$counter] = + $arrayBlocks[$this->getNumberHashForBlock($block)] = [ 'block_identifier' => $block, 'first_images_to_skip' => ($block == 'category.products.list') ? '2' : '0' ]; - - $counter++; } return $this->serializer->serialize($arrayBlocks);