Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
isSafeName example
public
function
translatePseudo
(
Node\PseudoNode
$node
, Translator
$translator
)
: XPathExpr
{
$xpath
=
$translator
->
nodeToXPath
(
$node
->
getSelector
(
)
)
;
return
$translator
->
addPseudoClass
(
$xpath
,
$node
->
getIdentifier
(
)
)
;
}
public
function
translateAttribute
(
Node\AttributeNode
$node
, Translator
$translator
)
: XPathExpr
{
$name
=
$node
->
getAttribute
(
)
;
$safe
=
$this
->
isSafeName
(
$name
)
;
if
(
$this
->
hasFlag
(
self::ATTRIBUTE_NAME_IN_LOWER_CASE
)
)
{
$name
=
strtolower
(
$name
)
;
}
if
(
$node
->
getNamespace
(
)
)
{
$name
=
sprintf
(
'%s:%s',
$node
->
getNamespace
(
)
,
$name
)
;
$safe
=
$safe
&&
$this
->
isSafeName
(
$node
->
getNamespace
(
)
)
;
}
$attribute
=
$safe
? '@'.
$name
:
sprintf
(
'attribute::*[name() = %s]', Translator::
getXpathLiteral
(
$name
)
)
;