Submit
Path:
~
/
home
/
getwphos
/
www
/
pioneerasphalt
/
wp-content
/
plugins
/
qi-blocks
/
inc
/
libraries
/
svg-sanitizer
/
data
/
File Content:
XPath.php
<?php namespace enshrined\svgSanitize\data; class XPath extends \DOMXPath { const DEFAULT_NAMESPACE_PREFIX = 'svg'; /** * @var string */ protected $defaultNamespaceURI; public function __construct(\DOMDocument $doc) { parent::__construct($doc); $this->handleDefaultNamespace(); } /** * @param string $nodeName * @return string */ public function createNodeName($nodeName) { if (empty($this->defaultNamespaceURI)) { return $nodeName; } return self::DEFAULT_NAMESPACE_PREFIX . ':' . $nodeName; } protected function handleDefaultNamespace() { $rootElements = $this->getRootElements(); if (count($rootElements) !== 1) { throw new \LogicException( sprintf('Got %d svg elements, expected exactly one', count($rootElements)), 1570870568 ); } $this->defaultNamespaceURI = (string)$rootElements[0]->namespaceURI; if ($this->defaultNamespaceURI !== '') { $this->registerNamespace(self::DEFAULT_NAMESPACE_PREFIX, $this->defaultNamespaceURI); } } /** * @return \DOMElement[] */ protected function getRootElements() { $rootElements = []; $elements = $this->document->getElementsByTagName('svg'); /** @var \DOMElement $element */ foreach ($elements as $element) { if ($element->parentNode !== $this->document) { continue; } $rootElements[] = $element; } return $rootElements; } }
Submit
FILE
FOLDER
Name
Size
Permission
Action
AllowedAttributes.php
8222 bytes
0644
AllowedTags.php
2086 bytes
0644
AttributeInterface.php
283 bytes
0644
TagInterface.php
263 bytes
0644
XPath.php
1645 bytes
0644
N4ST4R_ID | Naxtarrr