From eac3c1f75c370e9ddb7319db0b11c7c8fa161709 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Mon, 10 Jun 2013 11:57:51 -0500 Subject: [PATCH] [feature/twig] BEGIN loops now work PHPBB3-11598 --- phpBB/includes/template/twig/lexer.php | 2 +- phpBB/includes/template/twig/node/begin.php | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/phpBB/includes/template/twig/lexer.php b/phpBB/includes/template/twig/lexer.php index a880377583..4402760a7b 100644 --- a/phpBB/includes/template/twig/lexer.php +++ b/phpBB/includes/template/twig/lexer.php @@ -49,7 +49,7 @@ class phpbb_template_twig_lexer extends Twig_Lexer $code = preg_replace('##', '{% $1 $2$4 %}', $code); // Replace all of our variables, {VARNAME} or {$VARNAME}, with Twig style, {{ VARNAME }} - $code = preg_replace('#{\$?([A-Z_][A-Z_0-9]+)}#', '{{ $1 }}', $code); + $code = preg_replace('#{\$?([a-zA-Z0-9_\.]+)}#', '{{ $1 }}', $code); //echo $code; //exit; return parent::tokenize($code, $filename); diff --git a/phpBB/includes/template/twig/node/begin.php b/phpBB/includes/template/twig/node/begin.php index 52e0a96f2a..1f4de9deda 100644 --- a/phpBB/includes/template/twig/node/begin.php +++ b/phpBB/includes/template/twig/node/begin.php @@ -45,10 +45,9 @@ class phpbb_template_twig_node_begin extends Twig_Node } $compiler - ->write("if (isset(\$context['loop'])) {") - ->write("foreach (\$context['loop']['") - ->write($this->getAttribute('beginName')) - ->write("'] as \$loops[\$nestingLevel]['i'] => \$loops[\$nestingLevel]['values']) {") + ->write("if (isset(\$context['loop']['" . $this->getAttribute('beginName') . "'])) {") + ->write("foreach (\$context['loop']['". $this->getAttribute('beginName'). "'] as \$" . $this->getAttribute('beginName') . ") {") + ->write("\$context['". $this->getAttribute('beginName'). "'] = \$" . $this->getAttribute('beginName') . ";") ->indent() ;