Skip to content

Commit

Permalink
fixed: neo block issue
Browse files Browse the repository at this point in the history
  • Loading branch information
bhupeshappfoster committed Dec 12, 2024
1 parent 56b82c3 commit b9c5b56
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 9 deletions.
2 changes: 1 addition & 1 deletion src/Translations.php
Original file line number Diff line number Diff line change
Expand Up @@ -698,7 +698,7 @@ private function _onDeleteElement(Event $event)
if ($currentFile) {
$order = self::$plugin->orderRepository->getOrderById($currentFile->orderId);

$currentFile->status = Constants::FILE_STATUS_CANCELED;
$currentFile->status = Constants::FILE_STATUS_REVIEW_READY;

self::$plugin->fileRepository->saveFile($currentFile);

Expand Down
38 changes: 30 additions & 8 deletions src/services/fieldtranslator/NeoFieldTranslator.php
Original file line number Diff line number Diff line change
Expand Up @@ -111,17 +111,24 @@ public function toPostArrayFromTranslationTarget(ElementTranslator $elementTrans
foreach ($blocks as $i => $block) {
$i = 'new' . ++$new;

$blockId = $field->getIsTranslatable($element) ? $i : $block->id;
$isTranslatable = $field->getIsTranslatable($element);
$blockId = $isTranslatable ? $i : $this->getBlockUid($block);
$blockData = $allBlockData[$i] ?? array();

$post[$fieldHandle][$blockId] = array(
$data = [
'modified' => '1',
'type' => $block->getType()->handle,
'enabled' => $block->enabled,
'collapsed' => $block->collapsed,
'level' => $block->level,
'fields' => $elementTranslator->toPostArrayFromTranslationTarget($block, $sourceLanguage, $targetLanguage, $blockData, true),
);
'fields' => $elementTranslator->toPostArrayFromTranslationTarget($block, $sourceLanguage, $targetLanguage, $blockData, true),
];

if ($isTranslatable) {
$post[$fieldHandle][$blockId] = $data;
} else {
$post[$fieldHandle]['blocks'][$blockId] = $data;
}
}

return $post;
Expand All @@ -147,6 +154,11 @@ public function getWordCount(ElementTranslator $elementTranslator, Element $elem
return $wordCount;
}

private function getBlockUid($block)
{
return sprintf('uid:%s', $block->getCanonicalUid());
}

/**
* {@inheritdoc}
*/
Expand All @@ -165,13 +177,23 @@ public function toPostArray(ElementTranslator $elementTranslator, Element $eleme
);

foreach ($blocks as $i => $block) {
$isTranslatable = $field->getIsTranslatable($element);
$blockId = $isTranslatable ? $i : $this->getBlockUid($block);

$blockId = $block->id ?? sprintf('new%s', ++$i);
$post[$fieldHandle][$blockId] = array(
$data = [
'modified' => '1',
'type' => $block->getType()->handle,
'enabled' => $block->enabled,
'fields' => $elementTranslator->toPostArray($block),
);
'collapsed' => $block->collapsed,
'level' => $block->level,
'fields' => $elementTranslator->toPostArray($block)
];

if ($isTranslatable) {
$post[$fieldHandle][$blockId] = $data;
} else {
$post[$fieldHandle]['blocks'][$blockId] = $data;
}
}

return $post;
Expand Down

0 comments on commit b9c5b56

Please sign in to comment.