cvs: smarty / NEWS /libs Smarty_Compiler.class.php

"Monte Ohrt" <[email protected]> Wed, 01 Aug 2007 13:34:39 -0000
Newsgroups gmane.comp.php.cvs.smarty
Message-ID <cvsmohrt1185975279@cvsserver>
mohrt		Wed Aug  1 13:34:39 2007 UTC

  Modified files:              
    /smarty	NEWS 
    /smarty/libs	Smarty_Compiler.class.php 
  Log:
  add append feature to capture
  
  
  
http://cvs.php.net/viewvc.cgi/smarty/NEWS?r1=1.557&r2=1.558&diff_format=u
Index: smarty/NEWS
diff -u smarty/NEWS:1.557 smarty/NEWS:1.558
--- smarty/NEWS:1.557	Mon Jun 18 14:29:00 2007
+++ smarty/NEWS	Wed Aug  1 13:34:39 2007
@@ -1,3 +1,4 @@
+- add append feature to {capture} (jablko, monte)
 - fix when (un)registering filters with the same method name but different class
   name (danilo)
 - fix calling registered objects' methods with an empty argument list
http://cvs.php.net/viewvc.cgi/smarty/libs/Smarty_Compiler.class.php?r1=1.397&r2=1.398&diff_format=u
Index: smarty/libs/Smarty_Compiler.class.php
diff -u smarty/libs/Smarty_Compiler.class.php:1.397 smarty/libs/Smarty_Compiler.class.php:1.398
--- smarty/libs/Smarty_Compiler.class.php:1.397	Fri May 11 13:45:36 2007
+++ smarty/libs/Smarty_Compiler.class.php	Wed Aug  1 13:34:39 2007
@@ -26,7 +26,7 @@
  * @package Smarty
  */
 
-/* $Id: Smarty_Compiler.class.php,v 1.397 2007/05/11 13:45:36 messju Exp $ */
+/* $Id: Smarty_Compiler.class.php,v 1.398 2007/08/01 13:34:39 mohrt Exp $ */
 
 /**
  * Template compiling class
@@ -1222,23 +1222,21 @@
         $attrs = $this->_parse_attrs($tag_args);
 
         if ($start) {
-            if (isset($attrs['name']))
-                $buffer = $attrs['name'];
-            else
-                $buffer = "'default'";
-
-            if (isset($attrs['assign']))
-                $assign = $attrs['assign'];
-            else
-                $assign = null;
+            $buffer = isset($attrs['name']) ? $attrs['name'] : "'default'";
+            $assign = isset($attrs['assign']) ? $attrs['assign'] : null;
+            $append = isset($attrs['append']) ? $attrs['append'] : null;
+            
             $output = "<?php ob_start(); ?>";
-            $this->_capture_stack[] = array($buffer, $assign);
+            $this->_capture_stack[] = array($buffer, $assign, $append);
         } else {
-            list($buffer, $assign) = array_pop($this->_capture_stack);
+            list($buffer, $assign, $append) = array_pop($this->_capture_stack);
             $output = "<?php \$this->_smarty_vars['capture'][$buffer] = ob_get_contents(); ";
             if (isset($assign)) {
                 $output .= " \$this->assign($assign, ob_get_contents());";
             }
+            if (isset($append)) {
+                $output .= " \$this->append($append, ob_get_contents());";
+            }
             $output .= "ob_end_clean(); ?>";
         }
 

-- 
Smarty CVS Mailing List (http://cvs.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php