* Patch from James Westby to add a template for the search form.

* Cache search form for speedup.
master
joey 2006-08-26 21:57:59 +00:00
parent 02a2de8ead
commit 2bec3518c2
5 changed files with 23 additions and 23 deletions

View File

@ -27,6 +27,7 @@ sub checkconfig () { #{{{
}
} #}}}
my $form;
sub pagetemplate (@) { #{{{
my %params=@_;
my $page=$params{page};
@ -34,15 +35,13 @@ sub pagetemplate (@) { #{{{
# Add search box to page header.
if ($template->query(name => "searchform")) {
$template->param(searchform => qq{
<form method="get" action="$IkiWiki::config{cgiurl}" id="searchform">
<div>
<input type="text" name="phrase" value="" size="16" />
<input type="hidden" name="enc" value="UTF-8" />
<input type="hidden" name="do" value="hyperestraier" />
</div>
</form>
});
if (! defined $form) {
my $searchform = IkiWiki::template("searchform.tmpl", blind_cache => 1);
$searchform->param(searchaction => $IkiWiki::config{cgiurl});
$form=$searchform->output;
}
$template->param(searchform => $form);
}
} #}}}

4
debian/changelog vendored
View File

@ -32,8 +32,10 @@ ikiwiki (1.22) UNRELEASED; urgency=low
from a different directory.
* Generalised preprocesser loop protection code.
* Patch from James Westby to allow a description to be set for rss feeds.
* Patch from James Westby to add a template for the search form.
* Cache search form for speedup.
-- Joey Hess <joeyh@debian.org> Sat, 26 Aug 2006 13:26:22 -0400
-- Joey Hess <joeyh@debian.org> Sat, 26 Aug 2006 17:51:16 -0400
ikiwiki (1.21) unstable; urgency=low

View File

@ -1,13 +0,0 @@
Here is a small patch that adds a new template for the search form.
http://jameswestby.net/scratch/search_template.diff
I wanted this so I could add a label to it easily.
I don't really think there's a problem with doing it except that it makes it
more easy to break the search box.
Thanks for the patch. The only problem I see is that the template
is identical but gets rebuilt per-page. Would probably be better to
build it only the first time, then reuse the rendered text for all
further pages, to avoid slowing ikiwiki down any. --[[Joey]]

View File

@ -29,6 +29,8 @@ It ships with some basic templates which can be customised:
* `rsslink.tmpl` - Used to add a rss link if blogpost.tmpl is not used.
* `aggregatepost.tmpl` - Used by the [[plugins/aggregate]] plugin to create
a page for a post.
* `searchform.tmpl` - Used by the [[plugins/search]] plugin to add a search
form to wiki pages.
If you like, you can add these to further customise it:
@ -44,3 +46,6 @@ CGI::FormBuilder, which interfaces to HTML::Template, so not all of it can
be customised with templates, although most of it can, by creating these
templates. Without the templates, CGI::FormBuilder creates the page bodies
by itself.
The [[plugin/template]] plugin also uses templates, though those templates
are stored in the wiki.

View File

@ -0,0 +1,7 @@
<form method="get" action="<TMPL_VAR SEARCHACTION>" id="searchform">
<div>
<input type="text" name="phrase" value="" size="16" />
<input type="hidden" name="enc" value="UTF-8" />
<input type="hidden" name="do" value="hyperestraier" />
</div>
</form>