aboutsummaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/inline.pm
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-07-27 23:41:58 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2006-07-27 23:41:58 +0000
commitdea23a1031b55dbc408e9f99c761fd667331cccd (patch)
treed4f036e9c2ef355693503a0f7ea84158ae549f2b /IkiWiki/Plugin/inline.pm
parent8d2c59804253ae513dda89cc6b733478c4c86fb6 (diff)
downloadikiwiki-dea23a1031b55dbc408e9f99c761fd667331cccd.tar
ikiwiki-dea23a1031b55dbc408e9f99c761fd667331cccd.tar.gz
* Switch pagetemplate hooks to using named parameters.
* Pass a "destpage" parameter to preprocessor and pagetemplate hooks. This will be the page that a source page will be part of, which is different than the source page for inlined pages. * Audited all plugins to endure they pass page, destpage to htmllink appropriatly. This means inlining of various plugins will not work properly, with correct links generated.
Diffstat (limited to 'IkiWiki/Plugin/inline.pm')
-rw-r--r--IkiWiki/Plugin/inline.pm14
1 files changed, 9 insertions, 5 deletions
diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm
index 749e39fb6..06c4a3737 100644
--- a/IkiWiki/Plugin/inline.pm
+++ b/IkiWiki/Plugin/inline.pm
@@ -77,13 +77,17 @@ sub preprocess_inline (@) { #{{{
foreach my $page (@list) {
$template->param(pagelink => htmllink($params{page}, $params{page}, $page));
- $template->param(content => get_inline_content($params{page}, $page))
+ $template->param(content => get_inline_content($page, $params{page}))
if $params{archive} eq "no";
$template->param(ctime => displaytime($pagectime{$page}));
if (exists $hooks{pagetemplate}) {
foreach my $id (keys %{$hooks{pagetemplate}}) {
- $hooks{pagetemplate}{$id}{call}->($page, $template);
+ $hooks{pagetemplate}{$id}{call}->(
+ page => $page,
+ destpage => $params{page},
+ template => $template,
+ );
}
}
@@ -104,13 +108,13 @@ sub preprocess_inline (@) { #{{{
} #}}}
sub get_inline_content ($$) { #{{{
- my $parentpage=shift;
my $page=shift;
+ my $destpage=shift;
my $file=$pagesources{$page};
my $type=pagetype($file);
if (defined $type) {
- return htmlize($type, preprocess($page, linkify($page, $parentpage, readfile(srcfile($file))), 1));
+ return htmlize($type, preprocess($page, $destpage, linkify($page, $destpage, readfile(srcfile($file))), 1));
}
else {
return "";
@@ -156,7 +160,7 @@ sub genrss ($@) { #{{{
itemtitle => pagetitle(basename($p)),
itemurl => "$config{url}/$renderedfiles{$p}",
itempubdate => date_822($pagectime{$p}),
- itemcontent => absolute_urls(get_inline_content($page, $p), $url),
+ itemcontent => absolute_urls(get_inline_content($p, $page), $url),
} if exists $renderedfiles{$p};
}