From 7c90b107b25e13f822a299c01c84fce4e0c9a304 Mon Sep 17 00:00:00 2001 From: "uwe.tews@googlemail.com" Date: Sun, 29 May 2011 10:37:57 +0000 Subject: [PATCH] - bugfix in templates did break "cache modified check" --- change_log.txt | 3 + .../smarty_internal_templateparser.php | 661 +++++++++--------- 2 files changed, 337 insertions(+), 327 deletions(-) diff --git a/change_log.txt b/change_log.txt index 2809bc48..bc18c92d 100644 --- a/change_log.txt +++ b/change_log.txt @@ -1,4 +1,7 @@ ===== SVN trunk ===== +29/05/2011 +- bugfix in templates did break "cache modified check" + 14/05/2011 - bugfix error handling at stream resources diff --git a/libs/sysplugins/smarty_internal_templateparser.php b/libs/sysplugins/smarty_internal_templateparser.php index cdd46a56..18c35a87 100644 --- a/libs/sysplugins/smarty_internal_templateparser.php +++ b/libs/sysplugins/smarty_internal_templateparser.php @@ -2218,8 +2218,10 @@ static public $yy_action = array( #line 132 "smarty_internal_templateparser.y" function yy_r8(){if ($this->is_xml) { $this->compiler->tag_nocache = true; - $this->is_xml = true; + $this->is_xml = false; + $save = $this->template->has_nocache_code; $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode("';?>", $this->compiler, true)); + $this->template->has_nocache_code = $save; }elseif ($this->php_handling == Smarty::PHP_PASSTHRU) { $this->_retvalue = new _smarty_text($this, '?>'); } elseif ($this->php_handling == Smarty::PHP_QUOTE) { @@ -2230,8 +2232,8 @@ static public $yy_action = array( $this->_retvalue = new _smarty_text($this, ''); } } -#line 2229 "smarty_internal_templateparser.php" -#line 148 "smarty_internal_templateparser.y" +#line 2231 "smarty_internal_templateparser.php" +#line 150 "smarty_internal_templateparser.y" function yy_r9(){ if ($this->php_handling == Smarty::PHP_PASSTHRU) { $this->_retvalue = new _smarty_text($this, '<%'); @@ -2251,8 +2253,8 @@ static public $yy_action = array( } } } -#line 2250 "smarty_internal_templateparser.php" -#line 169 "smarty_internal_templateparser.y" +#line 2252 "smarty_internal_templateparser.php" +#line 171 "smarty_internal_templateparser.y" function yy_r10(){ if ($this->php_handling == Smarty::PHP_PASSTHRU) { $this->_retvalue = new _smarty_text($this, '%>'); @@ -2272,162 +2274,167 @@ static public $yy_action = array( } } } -#line 2271 "smarty_internal_templateparser.php" -#line 189 "smarty_internal_templateparser.y" +#line 2273 "smarty_internal_templateparser.php" +#line 191 "smarty_internal_templateparser.y" function yy_r11(){if ($this->lex->strip) { $this->_retvalue = new _smarty_text($this, preg_replace('![\$this->yystack[$this->yyidx + 0]->minor ]*[\r\n]+[\$this->yystack[$this->yyidx + 0]->minor ]*!', '', self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor))); } else { $this->_retvalue = new _smarty_text($this, self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor)); } } -#line 2279 "smarty_internal_templateparser.php" -#line 197 "smarty_internal_templateparser.y" - function yy_r12(){ $this->compiler->tag_nocache = true; $this->is_xml = true; $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode("", $this->compiler, true)); } -#line 2282 "smarty_internal_templateparser.php" -#line 200 "smarty_internal_templateparser.y" +#line 2281 "smarty_internal_templateparser.php" +#line 199 "smarty_internal_templateparser.y" + function yy_r12(){ $this->compiler->tag_nocache = true; + $this->is_xml = true; + $save = $this->template->has_nocache_code; + $this->_retvalue = new _smarty_text($this, $this->compiler->processNocacheCode("", $this->compiler, true)); + $this->template->has_nocache_code = $save; + } +#line 2289 "smarty_internal_templateparser.php" +#line 207 "smarty_internal_templateparser.y" function yy_r13(){if ($this->lex->strip) { $this->_retvalue = new _smarty_text($this, preg_replace('![\t ]*[\r\n]+[\t ]*!', '', $this->yystack[$this->yyidx + 0]->minor)); } else { $this->_retvalue = new _smarty_text($this, $this->yystack[$this->yyidx + 0]->minor); } } -#line 2290 "smarty_internal_templateparser.php" -#line 206 "smarty_internal_templateparser.y" +#line 2297 "smarty_internal_templateparser.php" +#line 213 "smarty_internal_templateparser.y" function yy_r14(){ $this->_retvalue = new _smarty_linebreak($this, $this->yystack[$this->yyidx + 0]->minor); } -#line 2295 "smarty_internal_templateparser.php" -#line 211 "smarty_internal_templateparser.y" +#line 2302 "smarty_internal_templateparser.php" +#line 218 "smarty_internal_templateparser.y" function yy_r15(){ $this->_retvalue = ''; } -#line 2298 "smarty_internal_templateparser.php" -#line 212 "smarty_internal_templateparser.y" - function yy_r16(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } -#line 2301 "smarty_internal_templateparser.php" -#line 214 "smarty_internal_templateparser.y" - function yy_r17(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2304 "smarty_internal_templateparser.php" -#line 217 "smarty_internal_templateparser.y" - function yy_r19(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2307 "smarty_internal_templateparser.php" +#line 2305 "smarty_internal_templateparser.php" #line 219 "smarty_internal_templateparser.y" - function yy_r21(){ $this->_retvalue = self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor); } -#line 2310 "smarty_internal_templateparser.php" + function yy_r16(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } +#line 2308 "smarty_internal_templateparser.php" #line 221 "smarty_internal_templateparser.y" + function yy_r17(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2311 "smarty_internal_templateparser.php" +#line 224 "smarty_internal_templateparser.y" + function yy_r19(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } +#line 2314 "smarty_internal_templateparser.php" +#line 226 "smarty_internal_templateparser.y" + function yy_r21(){ $this->_retvalue = self::escape_start_tag($this->yystack[$this->yyidx + 0]->minor); } +#line 2317 "smarty_internal_templateparser.php" +#line 228 "smarty_internal_templateparser.y" function yy_r23(){ $this->_retvalue = self::escape_end_tag($this->yystack[$this->yyidx + 0]->minor); } -#line 2313 "smarty_internal_templateparser.php" -#line 222 "smarty_internal_templateparser.y" +#line 2320 "smarty_internal_templateparser.php" +#line 229 "smarty_internal_templateparser.y" function yy_r24(){ $this->_retvalue = '<%'; } -#line 2316 "smarty_internal_templateparser.php" -#line 223 "smarty_internal_templateparser.y" +#line 2323 "smarty_internal_templateparser.php" +#line 230 "smarty_internal_templateparser.y" function yy_r25(){ $this->_retvalue = '%>'; } -#line 2319 "smarty_internal_templateparser.php" -#line 231 "smarty_internal_templateparser.y" +#line 2326 "smarty_internal_templateparser.php" +#line 238 "smarty_internal_templateparser.y" function yy_r26(){ $this->_retvalue = $this->compiler->compileTag('private_print_expression',array(),array('value'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2322 "smarty_internal_templateparser.php" -#line 232 "smarty_internal_templateparser.y" +#line 2329 "smarty_internal_templateparser.php" +#line 239 "smarty_internal_templateparser.y" function yy_r27(){ $this->_retvalue = $this->compiler->compileTag('private_print_expression',$this->yystack[$this->yyidx + -1]->minor,array('value'=>$this->yystack[$this->yyidx + -3]->minor, 'modifierlist'=>$this->yystack[$this->yyidx + -2]->minor)); } -#line 2325 "smarty_internal_templateparser.php" -#line 233 "smarty_internal_templateparser.y" +#line 2332 "smarty_internal_templateparser.php" +#line 240 "smarty_internal_templateparser.y" function yy_r28(){ $this->_retvalue = $this->compiler->compileTag('private_print_expression',$this->yystack[$this->yyidx + -1]->minor,array('value'=>$this->yystack[$this->yyidx + -2]->minor)); } -#line 2328 "smarty_internal_templateparser.php" -#line 236 "smarty_internal_templateparser.y" +#line 2335 "smarty_internal_templateparser.php" +#line 243 "smarty_internal_templateparser.y" function yy_r31(){ $this->_retvalue = $this->compiler->compileTag('private_print_expression',$this->yystack[$this->yyidx + -1]->minor,array('value'=>$this->yystack[$this->yyidx + -3]->minor,'modifierlist'=>$this->yystack[$this->yyidx + -2]->minor)); } -#line 2331 "smarty_internal_templateparser.php" -#line 244 "smarty_internal_templateparser.y" +#line 2338 "smarty_internal_templateparser.php" +#line 251 "smarty_internal_templateparser.y" function yy_r33(){ $this->_retvalue = $this->compiler->compileTag('assign',array(array('value'=>$this->yystack[$this->yyidx + -1]->minor),array('var'=>"'".$this->yystack[$this->yyidx + -3]->minor."'"))); } -#line 2334 "smarty_internal_templateparser.php" -#line 246 "smarty_internal_templateparser.y" +#line 2341 "smarty_internal_templateparser.php" +#line 253 "smarty_internal_templateparser.y" function yy_r35(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array(array('value'=>$this->yystack[$this->yyidx + -2]->minor),array('var'=>"'".$this->yystack[$this->yyidx + -4]->minor."'")),$this->yystack[$this->yyidx + -1]->minor)); } -#line 2337 "smarty_internal_templateparser.php" -#line 247 "smarty_internal_templateparser.y" - function yy_r36(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array(array('value'=>$this->yystack[$this->yyidx + -2]->minor),array('var'=>$this->yystack[$this->yyidx + -4]->minor['var'])),$this->yystack[$this->yyidx + -1]->minor),array('smarty_internal_index'=>$this->yystack[$this->yyidx + -4]->minor['smarty_internal_index'])); } -#line 2340 "smarty_internal_templateparser.php" -#line 249 "smarty_internal_templateparser.y" - function yy_r37(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor,$this->yystack[$this->yyidx + -1]->minor); } -#line 2343 "smarty_internal_templateparser.php" -#line 250 "smarty_internal_templateparser.y" - function yy_r38(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor,array()); } -#line 2346 "smarty_internal_templateparser.php" -#line 252 "smarty_internal_templateparser.y" - function yy_r39(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor,$this->yystack[$this->yyidx + -1]->minor,array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor)); } -#line 2349 "smarty_internal_templateparser.php" +#line 2344 "smarty_internal_templateparser.php" #line 254 "smarty_internal_templateparser.y" + function yy_r36(){ $this->_retvalue = $this->compiler->compileTag('assign',array_merge(array(array('value'=>$this->yystack[$this->yyidx + -2]->minor),array('var'=>$this->yystack[$this->yyidx + -4]->minor['var'])),$this->yystack[$this->yyidx + -1]->minor),array('smarty_internal_index'=>$this->yystack[$this->yyidx + -4]->minor['smarty_internal_index'])); } +#line 2347 "smarty_internal_templateparser.php" +#line 256 "smarty_internal_templateparser.y" + function yy_r37(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor,$this->yystack[$this->yyidx + -1]->minor); } +#line 2350 "smarty_internal_templateparser.php" +#line 257 "smarty_internal_templateparser.y" + function yy_r38(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor,array()); } +#line 2353 "smarty_internal_templateparser.php" +#line 259 "smarty_internal_templateparser.y" + function yy_r39(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor,$this->yystack[$this->yyidx + -1]->minor,array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor)); } +#line 2356 "smarty_internal_templateparser.php" +#line 261 "smarty_internal_templateparser.y" function yy_r40(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor,$this->yystack[$this->yyidx + -1]->minor).'_retvalue .= $this->compiler->compileTag('private_modifier',array(),array('modifierlist'=>$this->yystack[$this->yyidx + -2]->minor,'value'=>'ob_get_clean()')).'?>'; } -#line 2354 "smarty_internal_templateparser.php" -#line 258 "smarty_internal_templateparser.y" +#line 2361 "smarty_internal_templateparser.php" +#line 265 "smarty_internal_templateparser.y" function yy_r41(){ $this->_retvalue = ''.$this->compiler->compileTag($this->yystack[$this->yyidx + -5]->minor,$this->yystack[$this->yyidx + -1]->minor,array('object_methode'=>$this->yystack[$this->yyidx + -3]->minor)).'_retvalue .= $this->compiler->compileTag('private_modifier',array(),array('modifierlist'=>$this->yystack[$this->yyidx + -2]->minor,'value'=>'ob_get_clean()')).'?>'; } -#line 2359 "smarty_internal_templateparser.php" -#line 262 "smarty_internal_templateparser.y" +#line 2366 "smarty_internal_templateparser.php" +#line 269 "smarty_internal_templateparser.y" function yy_r42(){ $tag = trim(substr($this->yystack[$this->yyidx + -2]->minor,$this->lex->ldel_length)); $this->_retvalue = $this->compiler->compileTag(($tag == 'else if')? 'elseif' : $tag,array(),array('if condition'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2362 "smarty_internal_templateparser.php" -#line 263 "smarty_internal_templateparser.y" - function yy_r43(){ $tag = trim(substr($this->yystack[$this->yyidx + -3]->minor,$this->lex->ldel_length)); $this->_retvalue = $this->compiler->compileTag(($tag == 'else if')? 'elseif' : $tag,$this->yystack[$this->yyidx + -1]->minor,array('if condition'=>$this->yystack[$this->yyidx + -2]->minor)); } -#line 2365 "smarty_internal_templateparser.php" -#line 267 "smarty_internal_templateparser.y" - function yy_r46(){ - $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -10]->minor),array('ifexp'=>$this->yystack[$this->yyidx + -7]->minor),array('var'=>$this->yystack[$this->yyidx + -3]->minor),array('step'=>$this->yystack[$this->yyidx + -2]->minor))),1); } #line 2369 "smarty_internal_templateparser.php" #line 270 "smarty_internal_templateparser.y" - function yy_r47(){ $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor; } + function yy_r43(){ $tag = trim(substr($this->yystack[$this->yyidx + -3]->minor,$this->lex->ldel_length)); $this->_retvalue = $this->compiler->compileTag(($tag == 'else if')? 'elseif' : $tag,$this->yystack[$this->yyidx + -1]->minor,array('if condition'=>$this->yystack[$this->yyidx + -2]->minor)); } #line 2372 "smarty_internal_templateparser.php" -#line 271 "smarty_internal_templateparser.y" - function yy_r48(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2375 "smarty_internal_templateparser.php" -#line 272 "smarty_internal_templateparser.y" - function yy_r49(){ $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -4]->minor),array('to'=>$this->yystack[$this->yyidx + -2]->minor))),0); } -#line 2378 "smarty_internal_templateparser.php" -#line 273 "smarty_internal_templateparser.y" - function yy_r50(){ $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -6]->minor),array('to'=>$this->yystack[$this->yyidx + -4]->minor),array('step'=>$this->yystack[$this->yyidx + -2]->minor))),0); } -#line 2381 "smarty_internal_templateparser.php" -#line 275 "smarty_internal_templateparser.y" - function yy_r51(){ $this->_retvalue = $this->compiler->compileTag('foreach',$this->yystack[$this->yyidx + -1]->minor); } -#line 2384 "smarty_internal_templateparser.php" +#line 274 "smarty_internal_templateparser.y" + function yy_r46(){ + $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -10]->minor),array('ifexp'=>$this->yystack[$this->yyidx + -7]->minor),array('var'=>$this->yystack[$this->yyidx + -3]->minor),array('step'=>$this->yystack[$this->yyidx + -2]->minor))),1); } +#line 2376 "smarty_internal_templateparser.php" #line 277 "smarty_internal_templateparser.y" + function yy_r47(){ $this->_retvalue = '='.$this->yystack[$this->yyidx + 0]->minor; } +#line 2379 "smarty_internal_templateparser.php" +#line 278 "smarty_internal_templateparser.y" + function yy_r48(){ $this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } +#line 2382 "smarty_internal_templateparser.php" +#line 279 "smarty_internal_templateparser.y" + function yy_r49(){ $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -4]->minor),array('to'=>$this->yystack[$this->yyidx + -2]->minor))),0); } +#line 2385 "smarty_internal_templateparser.php" +#line 280 "smarty_internal_templateparser.y" + function yy_r50(){ $this->_retvalue = $this->compiler->compileTag('for',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('start'=>$this->yystack[$this->yyidx + -6]->minor),array('to'=>$this->yystack[$this->yyidx + -4]->minor),array('step'=>$this->yystack[$this->yyidx + -2]->minor))),0); } +#line 2388 "smarty_internal_templateparser.php" +#line 282 "smarty_internal_templateparser.y" + function yy_r51(){ $this->_retvalue = $this->compiler->compileTag('foreach',$this->yystack[$this->yyidx + -1]->minor); } +#line 2391 "smarty_internal_templateparser.php" +#line 284 "smarty_internal_templateparser.y" function yy_r52(){ $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -5]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor)))); } -#line 2388 "smarty_internal_templateparser.php" -#line 279 "smarty_internal_templateparser.y" +#line 2395 "smarty_internal_templateparser.php" +#line 286 "smarty_internal_templateparser.y" function yy_r53(){ $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -8]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor),array('key'=>$this->yystack[$this->yyidx + -5]->minor)))); } -#line 2392 "smarty_internal_templateparser.php" -#line 281 "smarty_internal_templateparser.y" +#line 2399 "smarty_internal_templateparser.php" +#line 288 "smarty_internal_templateparser.y" function yy_r54(){ $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -5]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor)))); } -#line 2396 "smarty_internal_templateparser.php" -#line 283 "smarty_internal_templateparser.y" +#line 2403 "smarty_internal_templateparser.php" +#line 290 "smarty_internal_templateparser.y" function yy_r55(){ $this->_retvalue = $this->compiler->compileTag('foreach',array_merge($this->yystack[$this->yyidx + -1]->minor,array(array('from'=>$this->yystack[$this->yyidx + -8]->minor),array('item'=>$this->yystack[$this->yyidx + -2]->minor),array('key'=>$this->yystack[$this->yyidx + -5]->minor)))); } -#line 2400 "smarty_internal_templateparser.php" -#line 287 "smarty_internal_templateparser.y" +#line 2407 "smarty_internal_templateparser.php" +#line 294 "smarty_internal_templateparser.y" function yy_r56(){ $this->_retvalue = SMARTY_INTERNAL_COMPILE_BLOCK::compileChildBlock($this->compiler); } -#line 2403 "smarty_internal_templateparser.php" -#line 291 "smarty_internal_templateparser.y" +#line 2410 "smarty_internal_templateparser.php" +#line 298 "smarty_internal_templateparser.y" function yy_r57(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -1]->minor.'close',array()); } -#line 2406 "smarty_internal_templateparser.php" -#line 293 "smarty_internal_templateparser.y" +#line 2413 "smarty_internal_templateparser.php" +#line 300 "smarty_internal_templateparser.y" function yy_r58(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -2]->minor.'close',array(),array('modifier_list'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2410 "smarty_internal_templateparser.php" -#line 296 "smarty_internal_templateparser.y" - function yy_r59(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor.'close',array(),array('object_methode'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2413 "smarty_internal_templateparser.php" -#line 297 "smarty_internal_templateparser.y" - function yy_r60(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor.'close',array(),array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor, 'modifier_list'=>$this->yystack[$this->yyidx + -1]->minor)); } -#line 2416 "smarty_internal_templateparser.php" +#line 2417 "smarty_internal_templateparser.php" #line 303 "smarty_internal_templateparser.y" - function yy_r61(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; $this->_retvalue[] = $this->yystack[$this->yyidx + 0]->minor; } -#line 2419 "smarty_internal_templateparser.php" -#line 305 "smarty_internal_templateparser.y" - function yy_r62(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } -#line 2422 "smarty_internal_templateparser.php" -#line 307 "smarty_internal_templateparser.y" - function yy_r63(){ $this->_retvalue = array(); } -#line 2425 "smarty_internal_templateparser.php" + function yy_r59(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -3]->minor.'close',array(),array('object_methode'=>$this->yystack[$this->yyidx + -1]->minor)); } +#line 2420 "smarty_internal_templateparser.php" +#line 304 "smarty_internal_templateparser.y" + function yy_r60(){ $this->_retvalue = $this->compiler->compileTag($this->yystack[$this->yyidx + -4]->minor.'close',array(),array('object_methode'=>$this->yystack[$this->yyidx + -2]->minor, 'modifier_list'=>$this->yystack[$this->yyidx + -1]->minor)); } +#line 2423 "smarty_internal_templateparser.php" #line 310 "smarty_internal_templateparser.y" + function yy_r61(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; $this->_retvalue[] = $this->yystack[$this->yyidx + 0]->minor; } +#line 2426 "smarty_internal_templateparser.php" +#line 312 "smarty_internal_templateparser.y" + function yy_r62(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } +#line 2429 "smarty_internal_templateparser.php" +#line 314 "smarty_internal_templateparser.y" + function yy_r63(){ $this->_retvalue = array(); } +#line 2432 "smarty_internal_templateparser.php" +#line 317 "smarty_internal_templateparser.y" function yy_r64(){ if (preg_match('~^true$~i', $this->yystack[$this->yyidx + 0]->minor)) { $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>'true'); } elseif (preg_match('~^false$~i', $this->yystack[$this->yyidx + 0]->minor)) { @@ -2436,86 +2443,86 @@ static public $yy_action = array( $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>'null'); } else $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>"'".$this->yystack[$this->yyidx + 0]->minor."'"); } -#line 2435 "smarty_internal_templateparser.php" -#line 318 "smarty_internal_templateparser.y" +#line 2442 "smarty_internal_templateparser.php" +#line 325 "smarty_internal_templateparser.y" function yy_r65(){ $this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2438 "smarty_internal_templateparser.php" -#line 320 "smarty_internal_templateparser.y" +#line 2445 "smarty_internal_templateparser.php" +#line 327 "smarty_internal_templateparser.y" function yy_r67(){ $this->_retvalue = "'".$this->yystack[$this->yyidx + 0]->minor."'"; } -#line 2441 "smarty_internal_templateparser.php" -#line 323 "smarty_internal_templateparser.y" - function yy_r70(){$this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2444 "smarty_internal_templateparser.php" +#line 2448 "smarty_internal_templateparser.php" #line 330 "smarty_internal_templateparser.y" + function yy_r70(){$this->_retvalue = array($this->yystack[$this->yyidx + -2]->minor=>$this->yystack[$this->yyidx + 0]->minor); } +#line 2451 "smarty_internal_templateparser.php" +#line 337 "smarty_internal_templateparser.y" function yy_r72(){ $this->yystack[$this->yyidx + -2]->minor[]=$this->yystack[$this->yyidx + 0]->minor; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor; } -#line 2447 "smarty_internal_templateparser.php" -#line 332 "smarty_internal_templateparser.y" +#line 2454 "smarty_internal_templateparser.php" +#line 339 "smarty_internal_templateparser.y" function yy_r73(){ $this->_retvalue = array('var' => $this->yystack[$this->yyidx + -2]->minor, 'value'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2450 "smarty_internal_templateparser.php" -#line 334 "smarty_internal_templateparser.y" +#line 2457 "smarty_internal_templateparser.php" +#line 341 "smarty_internal_templateparser.y" function yy_r75(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } -#line 2453 "smarty_internal_templateparser.php" -#line 345 "smarty_internal_templateparser.y" +#line 2460 "smarty_internal_templateparser.php" +#line 352 "smarty_internal_templateparser.y" function yy_r78(){$this->_retvalue = '$_smarty_tpl->getStreamVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'://'. $this->yystack[$this->yyidx + 0]->minor . '\')'; } -#line 2456 "smarty_internal_templateparser.php" -#line 347 "smarty_internal_templateparser.y" +#line 2463 "smarty_internal_templateparser.php" +#line 354 "smarty_internal_templateparser.y" function yy_r79(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor . trim($this->yystack[$this->yyidx + -1]->minor) . $this->yystack[$this->yyidx + 0]->minor; } -#line 2459 "smarty_internal_templateparser.php" -#line 353 "smarty_internal_templateparser.y" - function yy_r82(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2462 "smarty_internal_templateparser.php" -#line 356 "smarty_internal_templateparser.y" - function yy_r83(){ $this->_retvalue = $this->compiler->compileTag('private_modifier',array(),array('value'=>$this->yystack[$this->yyidx + -1]->minor,'modifierlist'=>$this->yystack[$this->yyidx + 0]->minor)); } -#line 2465 "smarty_internal_templateparser.php" +#line 2466 "smarty_internal_templateparser.php" #line 360 "smarty_internal_templateparser.y" - function yy_r84(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2468 "smarty_internal_templateparser.php" -#line 361 "smarty_internal_templateparser.y" - function yy_r85(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2471 "smarty_internal_templateparser.php" -#line 362 "smarty_internal_templateparser.y" - function yy_r86(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.',(array)'.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2474 "smarty_internal_templateparser.php" -#line 364 "smarty_internal_templateparser.y" - function yy_r88(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2477 "smarty_internal_templateparser.php" -#line 365 "smarty_internal_templateparser.y" - function yy_r89(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2480 "smarty_internal_templateparser.php" -#line 366 "smarty_internal_templateparser.y" - function yy_r90(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2483 "smarty_internal_templateparser.php" + function yy_r82(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } +#line 2469 "smarty_internal_templateparser.php" +#line 363 "smarty_internal_templateparser.y" + function yy_r83(){ $this->_retvalue = $this->compiler->compileTag('private_modifier',array(),array('value'=>$this->yystack[$this->yyidx + -1]->minor,'modifierlist'=>$this->yystack[$this->yyidx + 0]->minor)); } +#line 2472 "smarty_internal_templateparser.php" #line 367 "smarty_internal_templateparser.y" - function yy_r91(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2486 "smarty_internal_templateparser.php" + function yy_r84(){$this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2475 "smarty_internal_templateparser.php" #line 368 "smarty_internal_templateparser.y" - function yy_r92(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2489 "smarty_internal_templateparser.php" + function yy_r85(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2478 "smarty_internal_templateparser.php" #line 369 "smarty_internal_templateparser.y" - function yy_r93(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } -#line 2492 "smarty_internal_templateparser.php" + function yy_r86(){$this->_retvalue = 'in_array('.$this->yystack[$this->yyidx + -2]->minor.',(array)'.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2481 "smarty_internal_templateparser.php" +#line 371 "smarty_internal_templateparser.y" + function yy_r88(){$this->_retvalue = '!('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2484 "smarty_internal_templateparser.php" +#line 372 "smarty_internal_templateparser.y" + function yy_r89(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -2]->minor.' % '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2487 "smarty_internal_templateparser.php" +#line 373 "smarty_internal_templateparser.y" + function yy_r90(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2490 "smarty_internal_templateparser.php" +#line 374 "smarty_internal_templateparser.y" + function yy_r91(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2493 "smarty_internal_templateparser.php" #line 375 "smarty_internal_templateparser.y" - function yy_r99(){$this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'='.$this->yystack[$this->yyidx + 0]->minor.';?>'; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.'$_tmp'.$this->prefix_number; } -#line 2495 "smarty_internal_templateparser.php" -#line 381 "smarty_internal_templateparser.y" - function yy_r100(){ $this->_retvalue = $this->yystack[$this->yyidx + -6]->minor.' ? $_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'\')->value : '.$this->yystack[$this->yyidx + 0]->minor; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable('$this->yystack[$this->yyidx + -2]->minor', null, true, false)->nocache; } -#line 2498 "smarty_internal_templateparser.php" + function yy_r92(){$this->_retvalue = '!(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2496 "smarty_internal_templateparser.php" +#line 376 "smarty_internal_templateparser.y" + function yy_r93(){$this->_retvalue = '(1 & '.$this->yystack[$this->yyidx + -2]->minor.' / '.$this->yystack[$this->yyidx + 0]->minor.')'; } +#line 2499 "smarty_internal_templateparser.php" #line 382 "smarty_internal_templateparser.y" - function yy_r101(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.' ? '.$this->yystack[$this->yyidx + -2]->minor.' : '.$this->yystack[$this->yyidx + 0]->minor; } -#line 2501 "smarty_internal_templateparser.php" + function yy_r99(){$this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'='.$this->yystack[$this->yyidx + 0]->minor.';?>'; $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.'$_tmp'.$this->prefix_number; } +#line 2502 "smarty_internal_templateparser.php" +#line 388 "smarty_internal_templateparser.y" + function yy_r100(){ $this->_retvalue = $this->yystack[$this->yyidx + -6]->minor.' ? $_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -2]->minor .'\')->value : '.$this->yystack[$this->yyidx + 0]->minor; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable('$this->yystack[$this->yyidx + -2]->minor', null, true, false)->nocache; } +#line 2505 "smarty_internal_templateparser.php" #line 389 "smarty_internal_templateparser.y" - function yy_r104(){ $this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2504 "smarty_internal_templateparser.php" -#line 395 "smarty_internal_templateparser.y" - function yy_r109(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2507 "smarty_internal_templateparser.php" + function yy_r101(){ $this->_retvalue = $this->yystack[$this->yyidx + -5]->minor.' ? '.$this->yystack[$this->yyidx + -2]->minor.' : '.$this->yystack[$this->yyidx + 0]->minor; } +#line 2508 "smarty_internal_templateparser.php" #line 396 "smarty_internal_templateparser.y" + function yy_r104(){ $this->_retvalue = '!'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2511 "smarty_internal_templateparser.php" +#line 402 "smarty_internal_templateparser.y" + function yy_r109(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2514 "smarty_internal_templateparser.php" +#line 403 "smarty_internal_templateparser.y" function yy_r110(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'; } -#line 2510 "smarty_internal_templateparser.php" -#line 397 "smarty_internal_templateparser.y" +#line 2517 "smarty_internal_templateparser.php" +#line 404 "smarty_internal_templateparser.y" function yy_r111(){ $this->_retvalue = '.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2513 "smarty_internal_templateparser.php" -#line 399 "smarty_internal_templateparser.y" +#line 2520 "smarty_internal_templateparser.php" +#line 406 "smarty_internal_templateparser.y" function yy_r112(){ if (preg_match('~^true$~i', $this->yystack[$this->yyidx + 0]->minor)) { $this->_retvalue = 'true'; } elseif (preg_match('~^false$~i', $this->yystack[$this->yyidx + 0]->minor)) { @@ -2524,11 +2531,11 @@ static public $yy_action = array( $this->_retvalue = 'null'; } else $this->_retvalue = "'".$this->yystack[$this->yyidx + 0]->minor."'"; } -#line 2523 "smarty_internal_templateparser.php" -#line 410 "smarty_internal_templateparser.y" +#line 2530 "smarty_internal_templateparser.php" +#line 417 "smarty_internal_templateparser.y" function yy_r114(){ $this->_retvalue = "(". $this->yystack[$this->yyidx + -1]->minor .")"; } -#line 2526 "smarty_internal_templateparser.php" -#line 416 "smarty_internal_templateparser.y" +#line 2533 "smarty_internal_templateparser.php" +#line 423 "smarty_internal_templateparser.y" function yy_r117(){if (!$this->security || isset($this->smarty->registered_classes[$this->yystack[$this->yyidx + -2]->minor]) || $this->smarty->security_policy->isTrustedStaticClass($this->yystack[$this->yyidx + -2]->minor, $this->compiler)) { if (isset($this->smarty->registered_classes[$this->yystack[$this->yyidx + -2]->minor])) { $this->_retvalue = $this->smarty->registered_classes[$this->yystack[$this->yyidx + -2]->minor].'::'.$this->yystack[$this->yyidx + 0]->minor; @@ -2539,15 +2546,15 @@ static public $yy_action = array( $this->compiler->trigger_template_error ("static class '".$this->yystack[$this->yyidx + -2]->minor."' is undefined or not allowed by security setting"); } } -#line 2538 "smarty_internal_templateparser.php" -#line 426 "smarty_internal_templateparser.y" +#line 2545 "smarty_internal_templateparser.php" +#line 433 "smarty_internal_templateparser.y" function yy_r118(){ if ($this->yystack[$this->yyidx + -2]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('private_special_variable',array(),$this->yystack[$this->yyidx + -2]->minor['smarty_internal_index']).'::'.$this->yystack[$this->yyidx + 0]->minor;} else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor['var'] .')->value'.$this->yystack[$this->yyidx + -2]->minor['smarty_internal_index'].'::'.$this->yystack[$this->yyidx + 0]->minor; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor['var'],"'"), null, true, false)->nocache;} } -#line 2542 "smarty_internal_templateparser.php" -#line 429 "smarty_internal_templateparser.y" +#line 2549 "smarty_internal_templateparser.php" +#line 436 "smarty_internal_templateparser.y" function yy_r119(){ $this->prefix_number++; $this->compiler->prefix_code[] = ''.$this->yystack[$this->yyidx + 0]->minor.'prefix_number.'=ob_get_clean();?>'; $this->_retvalue = '$_tmp'.$this->prefix_number; } -#line 2545 "smarty_internal_templateparser.php" -#line 439 "smarty_internal_templateparser.y" +#line 2552 "smarty_internal_templateparser.php" +#line 446 "smarty_internal_templateparser.y" function yy_r121(){if ($this->yystack[$this->yyidx + 0]->minor['var'] == '\'smarty\'') { $smarty_var = $this->compiler->compileTag('private_special_variable',array(),$this->yystack[$this->yyidx + 0]->minor['smarty_internal_index']); $this->_retvalue = $smarty_var; @@ -2563,105 +2570,105 @@ static public $yy_action = array( $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor['var'],"'"), null, true, false)->nocache; } } -#line 2562 "smarty_internal_templateparser.php" -#line 455 "smarty_internal_templateparser.y" +#line 2569 "smarty_internal_templateparser.php" +#line 462 "smarty_internal_templateparser.y" function yy_r122(){if (isset($this->compiler->local_var[$this->yystack[$this->yyidx + -2]->minor])) { $this->_retvalue = '$_smarty_tpl->tpl_vars['. $this->yystack[$this->yyidx + -2]->minor .']->'.$this->yystack[$this->yyidx + 0]->minor; } else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor; } $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"), null, true, false)->nocache; } -#line 2570 "smarty_internal_templateparser.php" -#line 464 "smarty_internal_templateparser.y" +#line 2577 "smarty_internal_templateparser.php" +#line 471 "smarty_internal_templateparser.y" function yy_r124(){$this->_retvalue = '$_smarty_tpl->getConfigVariable(\''. $this->yystack[$this->yyidx + -1]->minor .'\')'; } -#line 2573 "smarty_internal_templateparser.php" -#line 465 "smarty_internal_templateparser.y" +#line 2580 "smarty_internal_templateparser.php" +#line 472 "smarty_internal_templateparser.y" function yy_r125(){$this->_retvalue = '$_smarty_tpl->getConfigVariable('. $this->yystack[$this->yyidx + -1]->minor .')'; } -#line 2576 "smarty_internal_templateparser.php" -#line 468 "smarty_internal_templateparser.y" +#line 2583 "smarty_internal_templateparser.php" +#line 475 "smarty_internal_templateparser.y" function yy_r126(){$this->_retvalue = array('var'=>$this->yystack[$this->yyidx + -1]->minor, 'smarty_internal_index'=>$this->yystack[$this->yyidx + 0]->minor); } -#line 2579 "smarty_internal_templateparser.php" -#line 474 "smarty_internal_templateparser.y" - function yy_r127(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2582 "smarty_internal_templateparser.php" -#line 476 "smarty_internal_templateparser.y" - function yy_r128(){return; } -#line 2585 "smarty_internal_templateparser.php" -#line 480 "smarty_internal_templateparser.y" - function yy_r129(){ $this->_retvalue = '[$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + 0]->minor .')->value]'; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable('$this->yystack[$this->yyidx + 0]->minor', null, true, false)->nocache; } -#line 2588 "smarty_internal_templateparser.php" +#line 2586 "smarty_internal_templateparser.php" #line 481 "smarty_internal_templateparser.y" - function yy_r130(){ $this->_retvalue = '[$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor.']'; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"), null, true, false)->nocache; } -#line 2591 "smarty_internal_templateparser.php" -#line 482 "smarty_internal_templateparser.y" - function yy_r131(){ $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']"; } -#line 2594 "smarty_internal_templateparser.php" + function yy_r127(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } +#line 2589 "smarty_internal_templateparser.php" #line 483 "smarty_internal_templateparser.y" - function yy_r132(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]"; } -#line 2597 "smarty_internal_templateparser.php" -#line 484 "smarty_internal_templateparser.y" - function yy_r133(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]"; } -#line 2600 "smarty_internal_templateparser.php" -#line 486 "smarty_internal_templateparser.y" - function yy_r134(){ $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable',array(),'[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']'; } -#line 2603 "smarty_internal_templateparser.php" + function yy_r128(){return; } +#line 2592 "smarty_internal_templateparser.php" #line 487 "smarty_internal_templateparser.y" - function yy_r135(){ $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable',array(),'[\'section\'][\''.$this->yystack[$this->yyidx + -3]->minor.'\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\']').']'; } -#line 2606 "smarty_internal_templateparser.php" + function yy_r129(){ $this->_retvalue = '[$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + 0]->minor .')->value]'; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable('$this->yystack[$this->yyidx + 0]->minor', null, true, false)->nocache; } +#line 2595 "smarty_internal_templateparser.php" +#line 488 "smarty_internal_templateparser.y" + function yy_r130(){ $this->_retvalue = '[$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -2]->minor .')->'.$this->yystack[$this->yyidx + 0]->minor.']'; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -2]->minor,"'"), null, true, false)->nocache; } +#line 2598 "smarty_internal_templateparser.php" +#line 489 "smarty_internal_templateparser.y" + function yy_r131(){ $this->_retvalue = "['". $this->yystack[$this->yyidx + 0]->minor ."']"; } +#line 2601 "smarty_internal_templateparser.php" +#line 490 "smarty_internal_templateparser.y" + function yy_r132(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + 0]->minor ."]"; } +#line 2604 "smarty_internal_templateparser.php" #line 491 "smarty_internal_templateparser.y" + function yy_r133(){ $this->_retvalue = "[". $this->yystack[$this->yyidx + -1]->minor ."]"; } +#line 2607 "smarty_internal_templateparser.php" +#line 493 "smarty_internal_templateparser.y" + function yy_r134(){ $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable',array(),'[\'section\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\'][\'index\']').']'; } +#line 2610 "smarty_internal_templateparser.php" +#line 494 "smarty_internal_templateparser.y" + function yy_r135(){ $this->_retvalue = '['.$this->compiler->compileTag('private_special_variable',array(),'[\'section\'][\''.$this->yystack[$this->yyidx + -3]->minor.'\'][\''.$this->yystack[$this->yyidx + -1]->minor.'\']').']'; } +#line 2613 "smarty_internal_templateparser.php" +#line 498 "smarty_internal_templateparser.y" function yy_r137(){$this->_retvalue = '[]'; } -#line 2609 "smarty_internal_templateparser.php" -#line 499 "smarty_internal_templateparser.y" +#line 2616 "smarty_internal_templateparser.php" +#line 506 "smarty_internal_templateparser.y" function yy_r139(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.'.'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2612 "smarty_internal_templateparser.php" -#line 501 "smarty_internal_templateparser.y" - function yy_r140(){$this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } -#line 2615 "smarty_internal_templateparser.php" -#line 503 "smarty_internal_templateparser.y" - function yy_r141(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2618 "smarty_internal_templateparser.php" +#line 2619 "smarty_internal_templateparser.php" #line 508 "smarty_internal_templateparser.y" + function yy_r140(){$this->_retvalue = '\''.$this->yystack[$this->yyidx + 0]->minor.'\''; } +#line 2622 "smarty_internal_templateparser.php" +#line 510 "smarty_internal_templateparser.y" + function yy_r141(){$this->_retvalue = '('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2625 "smarty_internal_templateparser.php" +#line 515 "smarty_internal_templateparser.y" function yy_r142(){ if ($this->yystack[$this->yyidx + -1]->minor['var'] == '\'smarty\'') { $this->_retvalue = $this->compiler->compileTag('private_special_variable',array(),$this->yystack[$this->yyidx + -1]->minor['smarty_internal_index']).$this->yystack[$this->yyidx + 0]->minor;} else { $this->_retvalue = '$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -1]->minor['var'] .')->value'.$this->yystack[$this->yyidx + -1]->minor['smarty_internal_index'].$this->yystack[$this->yyidx + 0]->minor; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -1]->minor['var'],"'"), null, true, false)->nocache;} } -#line 2622 "smarty_internal_templateparser.php" -#line 511 "smarty_internal_templateparser.y" +#line 2629 "smarty_internal_templateparser.php" +#line 518 "smarty_internal_templateparser.y" function yy_r143(){$this->_retvalue = $this->yystack[$this->yyidx + 0]->minor; } -#line 2625 "smarty_internal_templateparser.php" -#line 513 "smarty_internal_templateparser.y" +#line 2632 "smarty_internal_templateparser.php" +#line 520 "smarty_internal_templateparser.y" function yy_r144(){$this->_retvalue = $this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2628 "smarty_internal_templateparser.php" -#line 515 "smarty_internal_templateparser.y" +#line 2635 "smarty_internal_templateparser.php" +#line 522 "smarty_internal_templateparser.y" function yy_r145(){if ($this->security && substr($this->yystack[$this->yyidx + -1]->minor,0,1) == '_') { $this->compiler->trigger_template_error (self::Err1); } $this->_retvalue = '->'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2635 "smarty_internal_templateparser.php" -#line 520 "smarty_internal_templateparser.y" +#line 2642 "smarty_internal_templateparser.php" +#line 527 "smarty_internal_templateparser.y" function yy_r146(){if ($this->security) { $this->compiler->trigger_template_error (self::Err2); } $this->_retvalue = '->{$_smarty_tpl->getVariable('. $this->yystack[$this->yyidx + -1]->minor .')->value'.$this->yystack[$this->yyidx + 0]->minor.'}'; $this->compiler->tag_nocache=$this->compiler->tag_nocache|$this->template->getVariable(trim($this->yystack[$this->yyidx + -1]->minor,"'"), null, true, false)->nocache; } -#line 2642 "smarty_internal_templateparser.php" -#line 525 "smarty_internal_templateparser.y" +#line 2649 "smarty_internal_templateparser.php" +#line 532 "smarty_internal_templateparser.y" function yy_r147(){if ($this->security) { $this->compiler->trigger_template_error (self::Err2); } $this->_retvalue = '->{'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2649 "smarty_internal_templateparser.php" -#line 530 "smarty_internal_templateparser.y" +#line 2656 "smarty_internal_templateparser.php" +#line 537 "smarty_internal_templateparser.y" function yy_r148(){if ($this->security) { $this->compiler->trigger_template_error (self::Err2); } $this->_retvalue = '->{\''.$this->yystack[$this->yyidx + -4]->minor.'\'.'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + 0]->minor.'}'; } -#line 2656 "smarty_internal_templateparser.php" -#line 536 "smarty_internal_templateparser.y" +#line 2663 "smarty_internal_templateparser.php" +#line 543 "smarty_internal_templateparser.y" function yy_r149(){ $this->_retvalue = '->'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2659 "smarty_internal_templateparser.php" -#line 542 "smarty_internal_templateparser.y" +#line 2666 "smarty_internal_templateparser.php" +#line 549 "smarty_internal_templateparser.y" function yy_r150(){if (!$this->security || $this->smarty->security_policy->isTrustedPhpFunction($this->yystack[$this->yyidx + -3]->minor, $this->compiler)) { if (strcasecmp($this->yystack[$this->yyidx + -3]->minor,'isset') === 0 || strcasecmp($this->yystack[$this->yyidx + -3]->minor,'empty') === 0 || strcasecmp($this->yystack[$this->yyidx + -3]->minor,'array') === 0 || is_callable($this->yystack[$this->yyidx + -3]->minor)) { $func_name = strtolower($this->yystack[$this->yyidx + -3]->minor); @@ -2688,115 +2695,115 @@ static public $yy_action = array( } } } -#line 2687 "smarty_internal_templateparser.php" -#line 572 "smarty_internal_templateparser.y" +#line 2694 "smarty_internal_templateparser.php" +#line 579 "smarty_internal_templateparser.y" function yy_r151(){if ($this->security && substr($this->yystack[$this->yyidx + -3]->minor,0,1) == '_') { $this->compiler->trigger_template_error (self::Err1); } $this->_retvalue = $this->yystack[$this->yyidx + -3]->minor . "(". implode(',',$this->yystack[$this->yyidx + -1]->minor) .")"; } -#line 2694 "smarty_internal_templateparser.php" -#line 577 "smarty_internal_templateparser.y" +#line 2701 "smarty_internal_templateparser.php" +#line 584 "smarty_internal_templateparser.y" function yy_r152(){if ($this->security) { $this->compiler->trigger_template_error (self::Err2); } $this->prefix_number++; $this->compiler->prefix_code[] = 'prefix_number.'=$_smarty_tpl->getVariable(\''. $this->yystack[$this->yyidx + -3]->minor .'\')->value;?>'; $this->_retvalue = '$_tmp'.$this->prefix_number.'('. implode(',',$this->yystack[$this->yyidx + -1]->minor) .')'; } -#line 2701 "smarty_internal_templateparser.php" -#line 585 "smarty_internal_templateparser.y" +#line 2708 "smarty_internal_templateparser.php" +#line 592 "smarty_internal_templateparser.y" function yy_r153(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -2]->minor,array($this->yystack[$this->yyidx + 0]->minor)); } -#line 2704 "smarty_internal_templateparser.php" -#line 594 "smarty_internal_templateparser.y" +#line 2711 "smarty_internal_templateparser.php" +#line 601 "smarty_internal_templateparser.y" function yy_r156(){$this->_retvalue = array_merge($this->yystack[$this->yyidx + -2]->minor,array(array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor))); } -#line 2707 "smarty_internal_templateparser.php" -#line 595 "smarty_internal_templateparser.y" +#line 2714 "smarty_internal_templateparser.php" +#line 602 "smarty_internal_templateparser.y" function yy_r157(){$this->_retvalue = array(array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor)); } -#line 2710 "smarty_internal_templateparser.php" -#line 598 "smarty_internal_templateparser.y" - function yy_r159(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } -#line 2713 "smarty_internal_templateparser.php" -#line 603 "smarty_internal_templateparser.y" - function yy_r160(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } -#line 2716 "smarty_internal_templateparser.php" +#line 2717 "smarty_internal_templateparser.php" #line 605 "smarty_internal_templateparser.y" + function yy_r159(){ $this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } +#line 2720 "smarty_internal_templateparser.php" +#line 610 "smarty_internal_templateparser.y" + function yy_r160(){ $this->_retvalue = array_merge($this->yystack[$this->yyidx + -1]->minor,$this->yystack[$this->yyidx + 0]->minor); } +#line 2723 "smarty_internal_templateparser.php" +#line 612 "smarty_internal_templateparser.y" function yy_r161(){$this->_retvalue = array(); } -#line 2719 "smarty_internal_templateparser.php" -#line 607 "smarty_internal_templateparser.y" +#line 2726 "smarty_internal_templateparser.php" +#line 614 "smarty_internal_templateparser.y" function yy_r162(){$this->_retvalue = array($this->yystack[$this->yyidx + 0]->minor); } -#line 2722 "smarty_internal_templateparser.php" -#line 617 "smarty_internal_templateparser.y" +#line 2729 "smarty_internal_templateparser.php" +#line 624 "smarty_internal_templateparser.y" function yy_r167(){ $this->_retvalue = '$'.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2725 "smarty_internal_templateparser.php" -#line 619 "smarty_internal_templateparser.y" +#line 2732 "smarty_internal_templateparser.php" +#line 626 "smarty_internal_templateparser.y" function yy_r168(){ $this->_retvalue = '$'.$this->yystack[$this->yyidx + -2]->minor.$this->yystack[$this->yyidx + -1]->minor.$this->yystack[$this->yyidx + 0]->minor; } -#line 2728 "smarty_internal_templateparser.php" -#line 628 "smarty_internal_templateparser.y" - function yy_r169(){$this->_retvalue = '=='; } -#line 2731 "smarty_internal_templateparser.php" -#line 629 "smarty_internal_templateparser.y" - function yy_r170(){$this->_retvalue = '!='; } -#line 2734 "smarty_internal_templateparser.php" -#line 630 "smarty_internal_templateparser.y" - function yy_r171(){$this->_retvalue = '>'; } -#line 2737 "smarty_internal_templateparser.php" -#line 631 "smarty_internal_templateparser.y" - function yy_r172(){$this->_retvalue = '<'; } -#line 2740 "smarty_internal_templateparser.php" -#line 632 "smarty_internal_templateparser.y" - function yy_r173(){$this->_retvalue = '>='; } -#line 2743 "smarty_internal_templateparser.php" -#line 633 "smarty_internal_templateparser.y" - function yy_r174(){$this->_retvalue = '<='; } -#line 2746 "smarty_internal_templateparser.php" -#line 634 "smarty_internal_templateparser.y" - function yy_r175(){$this->_retvalue = '==='; } -#line 2749 "smarty_internal_templateparser.php" +#line 2735 "smarty_internal_templateparser.php" #line 635 "smarty_internal_templateparser.y" - function yy_r176(){$this->_retvalue = '!=='; } -#line 2752 "smarty_internal_templateparser.php" + function yy_r169(){$this->_retvalue = '=='; } +#line 2738 "smarty_internal_templateparser.php" #line 636 "smarty_internal_templateparser.y" - function yy_r177(){$this->_retvalue = '%'; } -#line 2755 "smarty_internal_templateparser.php" + function yy_r170(){$this->_retvalue = '!='; } +#line 2741 "smarty_internal_templateparser.php" +#line 637 "smarty_internal_templateparser.y" + function yy_r171(){$this->_retvalue = '>'; } +#line 2744 "smarty_internal_templateparser.php" #line 638 "smarty_internal_templateparser.y" - function yy_r178(){$this->_retvalue = '&&'; } -#line 2758 "smarty_internal_templateparser.php" + function yy_r172(){$this->_retvalue = '<'; } +#line 2747 "smarty_internal_templateparser.php" #line 639 "smarty_internal_templateparser.y" - function yy_r179(){$this->_retvalue = '||'; } -#line 2761 "smarty_internal_templateparser.php" + function yy_r173(){$this->_retvalue = '>='; } +#line 2750 "smarty_internal_templateparser.php" #line 640 "smarty_internal_templateparser.y" - function yy_r180(){$this->_retvalue = ' XOR '; } -#line 2764 "smarty_internal_templateparser.php" + function yy_r174(){$this->_retvalue = '<='; } +#line 2753 "smarty_internal_templateparser.php" +#line 641 "smarty_internal_templateparser.y" + function yy_r175(){$this->_retvalue = '==='; } +#line 2756 "smarty_internal_templateparser.php" +#line 642 "smarty_internal_templateparser.y" + function yy_r176(){$this->_retvalue = '!=='; } +#line 2759 "smarty_internal_templateparser.php" +#line 643 "smarty_internal_templateparser.y" + function yy_r177(){$this->_retvalue = '%'; } +#line 2762 "smarty_internal_templateparser.php" #line 645 "smarty_internal_templateparser.y" - function yy_r181(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } -#line 2767 "smarty_internal_templateparser.php" + function yy_r178(){$this->_retvalue = '&&'; } +#line 2765 "smarty_internal_templateparser.php" +#line 646 "smarty_internal_templateparser.y" + function yy_r179(){$this->_retvalue = '||'; } +#line 2768 "smarty_internal_templateparser.php" #line 647 "smarty_internal_templateparser.y" + function yy_r180(){$this->_retvalue = ' XOR '; } +#line 2771 "smarty_internal_templateparser.php" +#line 652 "smarty_internal_templateparser.y" + function yy_r181(){ $this->_retvalue = 'array('.$this->yystack[$this->yyidx + -1]->minor.')'; } +#line 2774 "smarty_internal_templateparser.php" +#line 654 "smarty_internal_templateparser.y" function yy_r183(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.','.$this->yystack[$this->yyidx + 0]->minor; } -#line 2770 "smarty_internal_templateparser.php" -#line 648 "smarty_internal_templateparser.y" +#line 2777 "smarty_internal_templateparser.php" +#line 655 "smarty_internal_templateparser.y" function yy_r184(){ return; } -#line 2773 "smarty_internal_templateparser.php" -#line 649 "smarty_internal_templateparser.y" +#line 2780 "smarty_internal_templateparser.php" +#line 656 "smarty_internal_templateparser.y" function yy_r185(){ $this->_retvalue = $this->yystack[$this->yyidx + -2]->minor.'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2776 "smarty_internal_templateparser.php" -#line 650 "smarty_internal_templateparser.y" - function yy_r186(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } -#line 2779 "smarty_internal_templateparser.php" +#line 2783 "smarty_internal_templateparser.php" #line 657 "smarty_internal_templateparser.y" + function yy_r186(){ $this->_retvalue = '\''.$this->yystack[$this->yyidx + -2]->minor.'\'=>'.$this->yystack[$this->yyidx + 0]->minor; } +#line 2786 "smarty_internal_templateparser.php" +#line 664 "smarty_internal_templateparser.y" function yy_r188(){ $this->_retvalue = "''"; } -#line 2782 "smarty_internal_templateparser.php" -#line 658 "smarty_internal_templateparser.y" - function yy_r189(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor->to_smarty_php(); } -#line 2785 "smarty_internal_templateparser.php" -#line 660 "smarty_internal_templateparser.y" - function yy_r190(){ $this->yystack[$this->yyidx + -1]->minor->append_subtree($this->yystack[$this->yyidx + 0]->minor); $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } -#line 2788 "smarty_internal_templateparser.php" -#line 661 "smarty_internal_templateparser.y" - function yy_r191(){ $this->_retvalue = new _smarty_doublequoted($this, $this->yystack[$this->yyidx + 0]->minor); } -#line 2791 "smarty_internal_templateparser.php" -#line 663 "smarty_internal_templateparser.y" - function yy_r192(){ $this->_retvalue = new _smarty_code($this, $this->yystack[$this->yyidx + -1]->minor); } -#line 2794 "smarty_internal_templateparser.php" +#line 2789 "smarty_internal_templateparser.php" #line 665 "smarty_internal_templateparser.y" + function yy_r189(){ $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor->to_smarty_php(); } +#line 2792 "smarty_internal_templateparser.php" +#line 667 "smarty_internal_templateparser.y" + function yy_r190(){ $this->yystack[$this->yyidx + -1]->minor->append_subtree($this->yystack[$this->yyidx + 0]->minor); $this->_retvalue = $this->yystack[$this->yyidx + -1]->minor; } +#line 2795 "smarty_internal_templateparser.php" +#line 668 "smarty_internal_templateparser.y" + function yy_r191(){ $this->_retvalue = new _smarty_doublequoted($this, $this->yystack[$this->yyidx + 0]->minor); } +#line 2798 "smarty_internal_templateparser.php" +#line 670 "smarty_internal_templateparser.y" + function yy_r192(){ $this->_retvalue = new _smarty_code($this, $this->yystack[$this->yyidx + -1]->minor); } +#line 2801 "smarty_internal_templateparser.php" +#line 672 "smarty_internal_templateparser.y" function yy_r194(){if (isset($this->compiler->local_var["'".substr($this->yystack[$this->yyidx + 0]->minor,1)."'"])) { $this->_retvalue = new _smarty_code($this, '$_smarty_tpl->tpl_vars[\''. substr($this->yystack[$this->yyidx + 0]->minor,1) .'\']->value'); } else { @@ -2804,21 +2811,21 @@ static public $yy_action = array( } $this->compiler->tag_nocache = $this->compiler->tag_nocache | $this->template->getVariable(trim($this->yystack[$this->yyidx + 0]->minor,"'"), null, true, false)->nocache; } -#line 2803 "smarty_internal_templateparser.php" -#line 673 "smarty_internal_templateparser.y" +#line 2810 "smarty_internal_templateparser.php" +#line 680 "smarty_internal_templateparser.y" function yy_r196(){ $this->_retvalue = new _smarty_code($this, '('.$this->yystack[$this->yyidx + -1]->minor.')'); } -#line 2806 "smarty_internal_templateparser.php" -#line 674 "smarty_internal_templateparser.y" +#line 2813 "smarty_internal_templateparser.php" +#line 681 "smarty_internal_templateparser.y" function yy_r197(){ $this->_retvalue = new _smarty_tag($this, $this->yystack[$this->yyidx + 0]->minor); } -#line 2811 "smarty_internal_templateparser.php" -#line 677 "smarty_internal_templateparser.y" - function yy_r198(){ $this->_retvalue = new _smarty_dq_content($this, $this->yystack[$this->yyidx + 0]->minor); } -#line 2814 "smarty_internal_templateparser.php" +#line 2818 "smarty_internal_templateparser.php" #line 684 "smarty_internal_templateparser.y" + function yy_r198(){ $this->_retvalue = new _smarty_dq_content($this, $this->yystack[$this->yyidx + 0]->minor); } +#line 2821 "smarty_internal_templateparser.php" +#line 691 "smarty_internal_templateparser.y" function yy_r200(){$this->_retvalue = ''; } -#line 2817 "smarty_internal_templateparser.php" +#line 2824 "smarty_internal_templateparser.php" private $_retvalue; @@ -2880,7 +2887,7 @@ static public $yy_action = array( $this->internalError = true; $this->yymajor = $yymajor; $this->compiler->trigger_template_error(); -#line 2880 "smarty_internal_templateparser.php" +#line 2887 "smarty_internal_templateparser.php" } function yy_accept() @@ -2897,7 +2904,7 @@ static public $yy_action = array( $this->internalError = false; $this->retvalue = $this->_retvalue; //echo $this->retvalue."\n\n"; -#line 2898 "smarty_internal_templateparser.php" +#line 2905 "smarty_internal_templateparser.php" } function doParse($yymajor, $yytokenvalue)