/** * @param Template $template * @param $blockName * @param $parentBlock * @param null $params * @return mixed */ protected function makeChildNode($template, $blockName, $parentBlock, $params = null) { if ($template->isBlockLogicExists($blockName)) { if ($params == null) { $params = $this->params; } $logic = $this->logicProcessor->processBlockLogic($template, $blockName, $params); } else { $logic = new Data(); } $node['markup'] = $template->getBlockMarkup($blockName); $node['type'] = MarkupNodeEnum::NODE_BLOCK; $node['template'] = $template; $node['logic'] = $logic; $node['parentBlock'] = $parentBlock; $node['name'] = $blockName; $node['params'] = $params; return $node; }