From 0f589d9ce43272153c3b7bd300d1a15fabb87cdd Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Mon, 26 Sep 2011 20:52:07 +0100 Subject: [ticket/10392] Fix access to nested special block variables. PHPBB3-10392 --- phpBB/includes/template/filter.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'phpBB/includes') diff --git a/phpBB/includes/template/filter.php b/phpBB/includes/template/filter.php index f24c3f4d09..1c8b45307c 100644 --- a/phpBB/includes/template/filter.php +++ b/phpBB/includes/template/filter.php @@ -871,6 +871,8 @@ class phpbb_template_filter extends php_user_filter { // Strip the trailing period. $namespace = substr($namespace, 0, -1); + $local_namespace = substr(strrchr($namespace, '.'), 1); + $local_namespace = ($local_namespace) ? $local_namespace : $namespace; $expr = true; @@ -880,19 +882,19 @@ class phpbb_template_filter extends php_user_filter { case 'S_ROW_NUM': case 'S_ROW_COUNT': - $varref = "\$_${namespace}_i"; + $varref = "\$_${local_namespace}_i"; break; case 'S_NUM_ROWS': - $varref = "\$_${namespace}_count"; + $varref = "\$_${local_namespace}_count"; break; case 'S_FIRST_ROW': - $varref = "(\$_${namespace}_i == 0)"; + $varref = "(\$_${local_namespace}_i == 0)"; break; case 'S_LAST_ROW': - $varref = "(\$_${namespace}_i == \$_${namespace}_count - 1)"; + $varref = "(\$_${local_namespace}_i == \$_${local_namespace}_count - 1)"; break; case 'S_BLOCK_NAME': -- cgit v1.2.1