]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - IkiWiki/Plugin/pagetemplate.pm
Render.pm: also use 'our' for $backlinks_calculated
[git.ikiwiki.info.git] / IkiWiki / Plugin / pagetemplate.pm
index b5ebf623d19a08d94e669ce1940534141e46e0e1..60db8b327de0d4a60eef07e7d6e861024c0dd148 100644 (file)
@@ -7,27 +7,37 @@ use IkiWiki 2.00;
 
 my %templates;
 
-sub import { #{{{
+sub import {
+       hook(type => "getsetup", id => "pagetemplate", call => \&getsetup);
        hook(type => "preprocess", id => "pagetemplate", call => \&preprocess);
        hook(type => "templatefile", id => "pagetemplate", call => \&templatefile);
-} # }}}
+}
 
-sub preprocess (@) { #{{{
+sub getsetup () {
+       return 
+               plugin => {
+                       safe => 1,
+                       rebuild => undef,
+               },
+}
+
+sub preprocess (@) {
        my %params=@_;
 
        if (! exists $params{template} ||
            $params{template} !~ /^[-A-Za-z0-9._+]+$/ ||
            ! defined IkiWiki::template_file($params{template})) {
-                return "[[pagetemplate ".gettext("bad or missing template")."]]";
+                error gettext("bad or missing template")
        }
 
        if ($params{page} eq $params{destpage}) {
                $templates{$params{page}}=$params{template};
        }
 
-} # }}}
+       return "";
+}
 
-sub templatefile (@) { #{{{
+sub templatefile (@) {
        my %params=@_;
 
        if (exists $templates{$params{page}}) {
@@ -35,6 +45,6 @@ sub templatefile (@) { #{{{
        }
        
        return undef;
-} # }}}
+}
 
 1