X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/f9957d11ed3674b5c2ff7ba7c234bed7cb036b5f..1ef40ff68370aba85e9816221675a8edd7a308f5:/IkiWiki/Plugin/google.pm?ds=sidebyside

diff --git a/IkiWiki/Plugin/google.pm b/IkiWiki/Plugin/google.pm
index be07ca2be..68cde261c 100644
--- a/IkiWiki/Plugin/google.pm
+++ b/IkiWiki/Plugin/google.pm
@@ -3,33 +3,36 @@ package IkiWiki::Plugin::google;
 
 use warnings;
 use strict;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
 use URI;
 
-sub import { #{{{
+sub import {
 	hook(type => "getsetup", id => "google", call => \&getsetup);
 	hook(type => "checkconfig", id => "google", call => \&checkconfig);
 	hook(type => "pagetemplate", id => "google", call => \&pagetemplate);
-} # }}}
+}
 
-sub getsetup () { #{{{
+sub getsetup () {
 	return
 		plugin => {
 			safe => 1,
 			rebuild => 1,
+			section => "web",
 		},
-} #}}}
+}
 
-sub checkconfig () { #{{{
-	foreach my $required (qw(url)) {
-		if (! length $config{$required}) {
-			error(sprintf(gettext("Must specify %s when using the google search plugin"), $required));
-		}
+sub checkconfig () {
+	if (! length $config{url}) {
+		error(sprintf(gettext("Must specify %s when using the %s plugin"), "url", 'google'));
 	}
-} #}}}
+	
+	# This is a mass dependency, so if the search form template
+	# changes, every page is rebuilt.
+	add_depends("", "templates/googleform.tmpl");
+}
 
 my $form;
-sub pagetemplate (@) { #{{{
+sub pagetemplate (@) {
 	my %params=@_;
 	my $page=$params{page};
 	my $template=$params{template};
@@ -38,12 +41,13 @@ sub pagetemplate (@) { #{{{
 	if ($template->query(name => "searchform")) {
 		if (! defined $form) {
 			my $searchform = template("googleform.tmpl", blind_cache => 1);
-			$searchform->param(sitefqdn => URI->new($config{url})->host);
+			$searchform->param(url => $config{url});
+			$searchform->param(html5 => $config{html5});
 			$form=$searchform->output;
 		}
 
 		$template->param(searchform => $form);
 	}
-} #}}}
+}
 
 1