![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-ui/TemplateEngine/Xhtml/Compiler/Element/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Ui\TemplateEngine\Xhtml\Compiler\Element; use Magento\Framework\DataObject; use Magento\Framework\View\Element\UiComponentInterface; use Magento\Framework\View\TemplateEngine\Xhtml\CompilerInterface; use Magento\Framework\View\TemplateEngine\Xhtml\Compiler\Element\ElementInterface; /** * Class Content */ class Content implements ElementInterface { /** * Compiles the Element node * * @param CompilerInterface $compiler * @param \DOMElement $node * @param DataObject $processedObject * @param DataObject $context * @return void */ public function compile( CompilerInterface $compiler, \DOMElement $node, DataObject $processedObject, DataObject $context ) { $name = $node->getAttribute('name'); /** @var UiComponentInterface $processedObject */ $content = (string)$processedObject->renderChildComponent($name); $name .= '_' . sprintf('%x', crc32(spl_object_hash($context))); if (!empty($content)) { $compiler->setPostprocessingData($name, $content); $newNode = $node->ownerDocument->createTextNode( CompilerInterface::PATTERN_TAG . $name . CompilerInterface::PATTERN_TAG ); $node->parentNode->replaceChild($newNode, $node); } else { $node->parentNode->removeChild($node); } } }