inline: Call indexhtml when inlining internal pages, so their text can be indexed for searching.

master
Joey Hess 2010-05-06 23:20:48 -04:00
parent 121e2ffc2f
commit ea4967f184
5 changed files with 15 additions and 6 deletions

View File

@ -476,6 +476,13 @@ sub get_inline_content ($$) {
filter($page, $destpage,
readfile(srcfile($file))))));
$nested--;
if (isinternal($page)) {
# make inlined text of internal pages searchable
run_hooks(indexhtml => sub {
shift->(page => $page, destpage => $page,
content => $ret);
});
}
}
if ($cached_destpage ne $destpage) {

View File

@ -10,7 +10,7 @@ sub import {
hook(type => "getsetup", id => "search", call => \&getsetup);
hook(type => "checkconfig", id => "search", call => \&checkconfig);
hook(type => "pagetemplate", id => "search", call => \&pagetemplate);
hook(type => "indexhtml", id => "search", call => \&index);
hook(type => "indexhtml", id => "search", call => \&indexhtml);
hook(type => "delete", id => "search", call => \&delete);
hook(type => "cgi", id => "search", call => \&cgi);
}
@ -68,7 +68,7 @@ sub pagetemplate (@) {
my $scrubber;
my $stemmer;
sub index (@) {
sub indexhtml (@) {
my %params=@_;
setupfiles();
@ -117,7 +117,7 @@ sub index (@) {
eval q{use HTML::Entities};
error $@ if $@;
$doc->set_data(
"url=".urlto($params{page}, "")."\n".
"url=".urlto($params{destpage}, "")."\n".
"sample=".decode_entities($sample)."\n".
"caption=".decode_entities($caption)."\n".
"modtime=$IkiWiki::pagemtime{$params{page}}\n".

View File

@ -63,7 +63,7 @@ sub genpage ($$) {
my $content=shift;
run_hooks(indexhtml => sub {
shift->(page => $page, content => $content);
shift->(page => $page, destpage => $page, content => $content);
});
my $templatefile;

2
debian/changelog vendored
View File

@ -7,6 +7,8 @@ ikiwiki (3.20100505) UNRELEASED; urgency=low
* Gave comment and page editing forms some CSS and accessability love.
* Renamed postscan hook to indexhtml, to reflect its changed position,
and typical use.
* inline: Call indexhtml when inlining internal pages, so their
text can be indexed for searching.
-- Joey Hess <joeyh@debian.org> Wed, 05 May 2010 18:07:29 -0400

View File

@ -290,8 +290,8 @@ This hook is called once the page has been converted to html (but before
the generated html is put in a template). The most common use is to
update search indexes. Added in ikiwiki 2.54.
The function is passed named parameters "page" and "content". Its return
value is ignored.
The function is passed named parameters "page", "destpage", and "content".
Its return value is ignored.
### pagetemplate