Skip to content

Commit d1f7e18

Browse files
authored
Merge pull request #591 from deguif/fix-twig-3.12-deprecations
Fix deprecations triggered since twig 3.12.0
2 parents 90d26b3 + 3f7a03d commit d1f7e18

File tree

3 files changed

+6
-7
lines changed

3 files changed

+6
-7
lines changed

Translation/Extractor/File/TwigFileExtractor.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ public function enterNode(Node $node, Environment $env): Node
8282
$message->addSource($this->fileSourceFactory->create($this->file, $node->getTemplateLine()));
8383
$this->catalogue->add($message);
8484
} elseif ($node instanceof FilterExpression) {
85-
$name = $node->getNode('filter')->getAttribute('value');
85+
$name = $node->hasAttribute('name') ? $node->getAttribute('name') : $node->getNode('filter')->getAttribute('value');
8686

8787
if ('trans' === $name || 'transchoice' === $name) {
8888
$idNode = $node->getNode('node');
@@ -117,7 +117,7 @@ public function enterNode(Node $node, Environment $env): Node
117117
break;
118118
}
119119

120-
$name = $this->stack[$i]->getNode('filter')->getAttribute('value');
120+
$name = $this->stack[$i]->hasAttribute('name') ? $this->stack[$i]->getAttribute('name') : $this->stack[$i]->getNode('filter')->getAttribute('value');
121121
if ($name === 'desc' || $name === 'meaning') {
122122
$arguments = iterator_to_array($this->stack[$i]->getNode('arguments'));
123123
if (! isset($arguments[0])) {

Twig/DefaultApplyingNodeVisitor.php

+3-4
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,12 @@ public function enterNode(Node $node, Environment $env): Node
5959

6060
if (
6161
$node instanceof FilterExpression
62-
&& 'desc' === $node->getNode('filter')->getAttribute('value')
62+
&& 'desc' === ($node->hasAttribute('name') ? $node->getAttribute('name') : $node->getNode('filter')->getAttribute('value'))
6363
) {
6464
$transNode = $node->getNode('node');
6565
while (
6666
$transNode instanceof FilterExpression
67-
&& 'trans' !== $transNode->getNode('filter')->getAttribute('value')
68-
&& 'transchoice' !== $transNode->getNode('filter')->getAttribute('value')
67+
&& !in_array($transNode->hasAttribute('name') ? $transNode->getAttribute('name') : $transNode->getNode('filter')->getAttribute('value'), ['trans', 'transchoice'], true)
6968
) {
7069
$transNode = $transNode->getNode('node');
7170
}
@@ -83,7 +82,7 @@ public function enterNode(Node $node, Environment $env): Node
8382
// if the |transchoice filter is used, delegate the call to the TranslationExtension
8483
// so that we can catch a possible exception when the default translation has not yet
8584
// been extracted
86-
if ('transchoice' === $transNode->getNode('filter')->getAttribute('value')) {
85+
if ('transchoice' === ($transNode->hasAttribute('name') ? $transNode->getAttribute('name') : $transNode->getNode('filter')->getAttribute('value'))) {
8786
$transchoiceArguments = new ArrayExpression([], $transNode->getTemplateLine());
8887
$transchoiceArguments->addElement($wrappingNode->getNode('node'));
8988
$transchoiceArguments->addElement($defaultNode);

Twig/RemovingNodeVisitor.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public function setEnabled($bool)
4545
public function enterNode(Node $node, Environment $env): Node
4646
{
4747
if ($this->enabled && $node instanceof FilterExpression) {
48-
$name = $node->getNode('filter')->getAttribute('value');
48+
$name = $node->hasAttribute('name') ? $node->getAttribute('name') : $node->getNode('filter')->getAttribute('value');
4949

5050
if ('desc' === $name || 'meaning' === $name) {
5151
return $this->enterNode($node->getNode('node'), $env);

0 commit comments

Comments
 (0)