Re: [SMARTY-DEV] compilerblock plugins patch

From: Date: Mon, 02 Dec 2002 20:36:15 +0000
Subject: Re: [SMARTY-DEV] compilerblock plugins patch
References: 1 2  Groups: php.smarty.dev 
Request: Send a blank email to php-smarty-dev+get-362@lists.php.net to get a copy of this message
On Mon, Dec 02, 2002 at 09:13:37AM -0600, Monte Ohrt wrote: > I'm wondering, what if we changed the block functions to use this > method, does anything break? (besides needing to be recompiled) If not, > this would keep the API simpler and no new documentation needed, maybe a > technical note adjustment. i thought about it. i don't think _compile_block_tag() can be recycled to handle compiler-block functions. but _compile_compiler_tag() can be. i think i can modify traditional compiler-function-handling to use optional closing-tags, so the same functionality that my compilerblock- functions provided would be achieved. this would require no change in the api, just a little update im the docs. i think i can come up with a pach soon :) have fun messju > Does your method resolve the issue of evaluating variables in a block > function at runtime? Problem outlined in this posting: > > > http://marc.theaimsgroup.com/?l=smarty-dev&m=103774868829224&w=2 > > Monte > > On Mon, 2002-12-02 at 05:47, M Mohr wrote: > > hello, > > > > i patched smarty to support block-function at compile time. the > > compilerblock-function is searched as compilerblock.[name].php in the > > plugins_dirs and has precedence before simple (==old) > > compiler-funcions. > > > > alternatively you can register compilerblock-functions using > > $smarty->register_compilerblock_function(..). > > > > the function has to be declared as: > > > > function func($tag_args, $start_tag, &$smarty) ... > > > > or > > > > function smarty_compilerblock_csv($tag_args, $start_tag, &$smarty) ... > > > > where tag_args ar the (unparsed) arguments, like in the simple > > compiler-functions and $start_tag is a boolean indicating wether the > > function was called at the beginning or the end of the block. > > > > i attached the diff against the lates cvs-version. it's not small, but > > pretty simple, since it is a mainly a rip-off of > > Smarty_Compiler::_compile_block_tag() > > > > i would love to see it applied in Smarty-2.3.2 and i am willing to > > provide documentation for such plugins and to maintain this patch if > > necessary. > > > > any use for it? > > any comments? > > > > regards > > messju mohr > > > > ______________________________________________________________________ > > > > -- > > Smarty Development Mailing List (http://smarty.php.net/) > > To unsubscribe, visit: http://www.php.net/unsub.php > -- > Monte Ohrt <monte@ispi.net> > > > -- > Smarty Development Mailing List (http://smarty.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php

« previous php.smarty.dev (#362) next »