Kernel : Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
Disable function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Safe mode : OFF
Host : diestoffstrasse.com | Server ip : 127.0.0.1 | Your ip : 127.0.0.1 | Time @ Server : 23 Aug 2025 23:44:35
MySQL : OFF | MSSQL : OFF | cURL : ON | Oracle : OFF | wget : ON | Perl : ON

/home/dev2.destoffenstraat.com/vendor-1/magento/framework/View/Layout/

HOME about upload exec mass file domain root vuln newfile newfolder kill me

File Path : /home/dev2.destoffenstraat.com/vendor-1/magento/framework/View/Layout/Element.php

<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Framework\View\Layout; /** * Class Element * * @api * @since 100.0.2 */ class Element extends \Magento\Framework\Simplexml\Element { /**#@+ * Supported layout directives */ const TYPE_RENDERER = 'renderer'; const TYPE_TEMPLATE = 'template'; const TYPE_DATA = 'data'; const TYPE_BLOCK = 'block'; const TYPE_CONTAINER = 'container'; const TYPE_ACTION = 'action'; const TYPE_ARGUMENTS = 'arguments'; const TYPE_ARGUMENT = 'argument'; const TYPE_REFERENCE_BLOCK = 'referenceBlock'; const TYPE_REFERENCE_CONTAINER = 'referenceContainer'; const TYPE_REMOVE = 'remove'; const TYPE_MOVE = 'move'; const TYPE_UI_COMPONENT = 'uiComponent'; const TYPE_HEAD = 'head'; /**#@-*/ /**#@+ * Names of container options in layout */ const CONTAINER_OPT_HTML_TAG = 'htmlTag'; const CONTAINER_OPT_HTML_CLASS = 'htmlClass'; const CONTAINER_OPT_HTML_ID = 'htmlId'; const CONTAINER_OPT_LABEL = 'label'; /**#@-*/ /** * Prepare the element * * @return $this * * @SuppressWarnings(PHPMD.CyclomaticComplexity) */ public function prepare() { switch ($this->getName()) { case self::TYPE_BLOCK: case self::TYPE_RENDERER: case self::TYPE_TEMPLATE: case self::TYPE_DATA: case self::TYPE_UI_COMPONENT: $this->prepareBlock(); break; case self::TYPE_REFERENCE_BLOCK: case self::TYPE_REFERENCE_CONTAINER: $this->prepareReference(); break; case self::TYPE_ACTION: $this->prepareAction(); break; case self::TYPE_ARGUMENT: $this->prepareActionArgument(); break; default: break; } foreach ($this as $child) { /** @var Element $child */ $child->prepare(); } return $this; } /** * Get block name * * @return bool|string */ public function getBlockName() { $tagName = (string)$this->getName(); $isThisBlock = empty($this['name']) || !in_array( $tagName, [self::TYPE_BLOCK, self::TYPE_REFERENCE_BLOCK] ); if ($isThisBlock) { return false; } return (string)$this['name']; } /** * Get element name * * Advanced version of getBlockName() method: gets name for container as well as for block * * @return string|bool */ public function getElementName() { $tagName = $this->getName(); $isThisContainer = !in_array( $tagName, [self::TYPE_BLOCK, self::TYPE_REFERENCE_BLOCK, self::TYPE_CONTAINER, self::TYPE_REFERENCE_CONTAINER] ); if ($isThisContainer) { return false; } return $this->getAttribute('name'); } /** * Extracts sibling from 'before' and 'after' attributes * * @return string */ public function getSibling() { $sibling = null; if ($this->getAttribute('before')) { $sibling = $this->getAttribute('before'); } elseif ($this->getAttribute('after')) { $sibling = $this->getAttribute('after'); } return $sibling; } /** * Add parent element name to parent attribute * * @return $this */ public function prepareBlock() { $parent = $this->getParent(); if (isset($parent['name']) && !isset($this['parent'])) { $this->addAttribute('parent', (string)$parent['name']); } return $this; } /** * Prepare references * * @return $this */ public function prepareReference() { return $this; } /** * Add parent element name to block attribute * * @return $this */ public function prepareAction() { $parent = $this->getParent(); $this->addAttribute('block', (string)$parent['name']); return $this; } /** * Prepare action argument * * @return $this */ public function prepareActionArgument() { return $this; } /** * Returns information is this element allows caching * * @return bool */ public function isCacheable() { return !(bool)count($this->xpath('//' . self::TYPE_BLOCK . '[@cacheable="false"]')); } }