I am doing this quite successfully with the following code:

In the HTML template

        <TMPL_INCLUDE NAME="%mainbody%">

In the perl script

my $filter = \&tmpl_filter;
my $template = HTML::Template->new(filename => 'insider_tmpl.html',
path=> $self->param('tmpl_path'), filter=>$filter);

sub tmpl_filter() 
{
my $text_ref = shift;
$$text_ref =~ s/%mainbody%/$body_include/g;
};

Regards,
Rajesh

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of
Peter Leonard
Sent: Wednesday, September 28, 2005 7:48 PM
To: [EMAIL PROTECTED]
Cc: [email protected]
Subject: Re: [htmltmpl] is it possible to use var in include


Michael,

In my experience, the only way to make that work is by making two passes

through HTML::Template, creating a custom filter on the first pass.

So your template syntax would look like this:

[TMPL_INCLUDE NAME=<TMPL_VAR NAME=mod>]

The first pass would set the 'mod' param, but ignore the outer tags.
The 
second pass would use a filter to convert all the [TMPL] tags to
standard 
<TMPL> tags, and then behave as normal.

Something like the following perl-pseudo:

$tmpl->param(mod=>'include.tmpl');
my $pass = $tmpl->output();

my $tmpl2 = HTML::Template->new(scalarref => $pass,
                                 filter =>
        sub { $_ =~ s/\[(TMPL[^\]]+)\]/<$1>/gis; });

$tmpl2->param(%other_vars);

return $tmpl2->output();


HTH,

        --pete


On Wed, 28 Sep 2005 [EMAIL PROTECTED] wrote:

> Hello all,
>
> Is that not possible? <TMPL_INCLUDE NAME=<TMPL_VAR NAME=mod>>
> Cause depending in which mode I open the template I want to show up a
> differnt body (e.g. start page, register page, search page...)
>
> Regards
> Michael

----
Peter Leonard
[EMAIL PROTECTED]


-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads,
discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
Html-template-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/html-template-users



DISCLAIMER:
This email (including any attachments) is intended for the sole use of the 
intended recipient/s and may contain material that is CONFIDENTIAL AND PRIVATE 
COMPANY INFORMATION. Any review or reliance by others or copying or 
distribution or forwarding of any or all of the contents in this message is 
STRICTLY PROHIBITED. If you are not the intended recipient, please contact the 
sender by email and delete all copies; your cooperation in this regard is 
appreciated.



-------------------------------------------------------
This SF.Net email is sponsored by:
Power Architecture Resource Center: Free content, downloads, discussions,
and more. http://solutions.newsforge.com/ibmarch.tmpl
_______________________________________________
Html-template-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/html-template-users

Reply via email to