`template` option for aggregate.pm.

Allows to specify the template file which is used to
create the html pages.
master
Bernd Zeimetz 2008-06-21 21:51:04 +02:00 committed by Joey Hess
parent 3542e5582b
commit b16c43a440
2 changed files with 10 additions and 1 deletions

View File

@ -154,6 +154,13 @@ sub preprocess (@) { #{{{
$feed->{updateinterval}=defined $params{updateinterval} ? $params{updateinterval} * 60 : 15 * 60; $feed->{updateinterval}=defined $params{updateinterval} ? $params{updateinterval} * 60 : 15 * 60;
$feed->{expireage}=defined $params{expireage} ? $params{expireage} : 0; $feed->{expireage}=defined $params{expireage} ? $params{expireage} : 0;
$feed->{expirecount}=defined $params{expirecount} ? $params{expirecount} : 0; $feed->{expirecount}=defined $params{expirecount} ? $params{expirecount} : 0;
if (exists $params{template}) {
$params{template}=~s/[^-_a-zA-Z0-9]+//g;
}
else {
$params{template} = "aggregatepost"
}
$feed->{template}=$params{template} . ".tmpl";
delete $feed->{unseen}; delete $feed->{unseen};
$feed->{lastupdate}=0 unless defined $feed->{lastupdate}; $feed->{lastupdate}=0 unless defined $feed->{lastupdate};
$feed->{numposts}=0 unless defined $feed->{numposts}; $feed->{numposts}=0 unless defined $feed->{numposts};
@ -507,7 +514,7 @@ sub add_page (@) { #{{{
$guid->{md5}=$digest; $guid->{md5}=$digest;
# Create the page. # Create the page.
my $template=template("aggregatepost.tmpl", blind_cache => 1); my $template=template($feed->{template}, blind_cache => 1);
$template->param(title => $params{title}) $template->param(title => $params{title})
if defined $params{title} && length($params{title}); if defined $params{title} && length($params{title});
$template->param(content => htmlescape(htmlabs($params{content}, $feed->{feedurl}))); $template->param(content => htmlescape(htmlabs($params{content}, $feed->{feedurl})));

View File

@ -59,6 +59,8 @@ directive:
* `tag` - A tag to tag each post from the feed with. A good tag to use is * `tag` - A tag to tag each post from the feed with. A good tag to use is
the name of the feed. Can be repeated multiple times. The [[tag]] plugin the name of the feed. Can be repeated multiple times. The [[tag]] plugin
must be enabled for this to work. must be enabled for this to work.
* `template` - Template to use for creating the html pages. Defaults to
aggregatepost.
Note that even if you are using subversion or another revision control Note that even if you are using subversion or another revision control
system, pages created by aggregation will *not* be checked into revision system, pages created by aggregation will *not* be checked into revision