Re: [htmltmpl] Writing an extension for HTML::Template - how to do it?
Brought to you by:
samtregar
From: Webmaster Techcode.N. <web...@te...> - 2005-11-08 23:53:47
|
MessageNo need to send emails to both me and list (twice) I guess ? Anyway - I already looked into that. It's what = CGI::Application::Framework uses. But it's not what I need/want. That way I can only call some run_mode (method) from current module (one = that is outputing the template in the first place). I would need to manualy add plugins = to each of the module (or just in base module).=20 On the other hand, I could write an method in my base module (inherited = by others). And implement that logic inside of him (require SomeModule, call some_run_mode in it = ...). But all that would be similar like this: <TMPL_VAR = NAME=3D"CGIAPP_EMBED('run_plugin','some_plugin','param1','param')"> I was hopping to avoid that ... and make it shorter/simpler as: <TMPL_PLUGIN NAME=3D"SomeName(param1, param2)"> ----- Original Message -----=20 From: Dan Horne=20 To: 'Webmaster Techcode.NET' ; = htm...@li...=20 Sent: Tuesday, November 08, 2005 11:33 PM Subject: RE: [htmltmpl] Writing an extension for HTML::Template - how = to do it? Hi Since you're using CGI::App, you should have a look at = CGI::Application::Plugin::AnyTemplate - which will allow you to call a = run mode with the H::T <TMPL_VAR NAME=3D"CGIAPP_embed('some_run_mode', 'param, 'param')"> Dan -----Original Message----- From: htm...@li... = [mailto:htm...@li...] On Behalf Of = Webmaster Techcode.NET Sent: Wednesday, 9 November 2005 11:16 To: htm...@li... Subject: [htmltmpl] Writing an extension for HTML::Template - how to = do it? Hello folks! Don't know if it's just me or documentation of = HTML::Template::Extension isn't good. Eitherway, I can't figure out how = to write an extenstion for it, that I need for my project.=20 I work with CGI::Application, and I wan't to be able to use = (reusable) objects in my templates. For instance : <tmpl_plugin name=3D"SomeName(param1, param2)"> My filter would find SomeName module (Prefix such as = MyApp::Plugin::SomeName) make an instance of it and call method - say = named run. And place returned value instead of this tag. Think of it as another template file that is included but it has = some processing ... That way I can create one module/plugin and use it = througth whole site/application. If I don't figure this out soon - I will have to give a shot to = HTML::Template::Expr and register a function with it (<tmpl_var = name=3D"plugin(SomeName, param1, param2)">). Thanks. |