private readonly EntityRepository
$cmsBlockRepository,
private readonly AbstractBlockTemplateLoader
$blockTemplateLoader,
) { } public function updateCmsBlocks( CmsExtensions
$cmsExtensions,
string
$appId,
string
$defaultLocale,
Context
$context ): void
{ $existingCmsBlocks =
$this->
getExistingCmsBlocks($appId,
$context);
$cmsBlocks =
$cmsExtensions->
getBlocks() !== null ?
$cmsExtensions->
getBlocks()->
getBlocks() :
[];
$upserts =
[];
foreach ($cmsBlocks as $cmsBlock) { $payload =
$cmsBlock->
toEntityArray($appId,
$defaultLocale);
$template =
$this->blockTemplateLoader->
getTemplateForBlock($cmsExtensions,
$cmsBlock->
getName());
$payload['template'
] =
$template;
$payload['styles'
] =
$this->blockTemplateLoader->
getStylesForBlock($cmsExtensions,
$cmsBlock->
getName());