search: Update search page when page.tmpl or searchquery.tmpl are locally modified.

master
Joey Hess 2011-06-03 20:31:20 -04:00
parent 7f87035c8d
commit d7c4001748
3 changed files with 37 additions and 17 deletions

View File

@ -14,6 +14,7 @@ sub import {
hook(type => "delete", id => "search", call => \&delete); hook(type => "delete", id => "search", call => \&delete);
hook(type => "cgi", id => "search", call => \&cgi); hook(type => "cgi", id => "search", call => \&cgi);
hook(type => "disable", id => "search", call => \&disable); hook(type => "disable", id => "search", call => \&disable);
hook(type => "needsbuild", id => "search", call => \&needsbuild);
} }
sub getsetup () { sub getsetup () {
@ -226,7 +227,23 @@ sub setupfiles () {
writefile("omega.conf", $config{wikistatedir}."/xapian", writefile("omega.conf", $config{wikistatedir}."/xapian",
"database_dir .\n". "database_dir .\n".
"template_dir ./templates\n"); "template_dir ./templates\n");
omega_template();
$setup=1;
}
}
}
sub needsbuild {
my $list=shift;
if (grep {
$_ eq "templates/page.tmpl" ||
$_ eq "templates/searchquery.tmpl"
} @$list) {
omega_template();
}
}
sub omega_template {
# Avoid omega interpreting anything in the cgitemplate # Avoid omega interpreting anything in the cgitemplate
# as an omegascript command. # as an omegascript command.
eval q{use IkiWiki::CGI}; eval q{use IkiWiki::CGI};
@ -239,12 +256,8 @@ sub setupfiles () {
my $querytemplate=readfile(IkiWiki::template_file("searchquery.tmpl")); my $querytemplate=readfile(IkiWiki::template_file("searchquery.tmpl"));
$template=~s/\0/$querytemplate/; $template=~s/\0/$querytemplate/;
writefile("query", $config{wikistatedir}."/xapian/templates", writefile("query", $config{wikistatedir}."/xapian/templates",
$template); $template);
$setup=1;
}
}
} }
sub disable () { sub disable () {

7
debian/changelog vendored
View File

@ -1,3 +1,10 @@
ikiwiki (3.20110432) UNRELEASED; urgency=low
* search: Update search page when page.tmpl or searchquery.tmpl are locally
modified.
-- Joey Hess <joeyh@debian.org> Fri, 03 Jun 2011 20:30:35 -0400
ikiwiki (3.20110431) unstable; urgency=low ikiwiki (3.20110431) unstable; urgency=low
* Danish translation update. Closes: #625721 * Danish translation update. Closes: #625721

View File

@ -1,4 +1,4 @@
The [[plugins/search]] plugin caches a filled in version of `page.tmpl` for The [[plugins/search]] plugin caches a filled in version of `page.tmpl` for
omega. This is updated only if missing or on rebuild, so if the template is omega. This is updated only if missing or on rebuild, so if the template is
modified otherwise and normal refresh allowed to update the rest of the modified otherwise and normal refresh allowed to update the rest of the
site, this gets missed and a stale template is used. --[[Joey]] site, this gets missed and a stale template is used. --[[Joey]] [[done]]