* Add templatefile hook.
[ikiwiki] / IkiWiki / Plugin / skeleton.pm
1 #!/usr/bin/perl
2 # Ikiwiki skeleton plugin. Replace "skeleton" with the name of your plugin
3 # in the lines below, remove hooks you don't use, and flesh out the code to
4 # make it do something.
5 package IkiWiki::Plugin::skeleton;
6
7 use warnings;
8 use strict;
9 use IkiWiki 2.00;
10
11 sub import { #{{{
12         hook(type => "getopt", id => "skeleton",  call => \&getopt);
13         hook(type => "checkconfig", id => "skeleton", call => \&checkconfig);
14         hook(type => "needsbuild", id => "skeleton", call => \&needsbuild);
15         hook(type => "preprocess", id => "skeleton", call => \&preprocess);
16         hook(type => "filter", id => "skeleton", call => \&filter);
17         hook(type => "htmlize", id => "skeleton", call => \&htmlize);
18         hook(type => "sanitize", id => "skeleton", call => \&sanitize);
19         hook(type => "format", id => "skeleton", call => \&format);
20         hook(type => "pagetemplate", id => "skeleton", call => \&pagetemplate);
21         hook(type => "templatefile", id => "skeleton", call => \&templatefile);
22         hook(type => "delete", id => "skeleton", call => \&delete);
23         hook(type => "change", id => "skeleton", call => \&change);
24         hook(type => "cgi", id => "skeleton", call => \&cgi);
25         hook(type => "auth", id => "skeleton", call => \&auth);
26         hook(type => "canedit", id => "skeleton", call => \&canedit);
27         hook(type => "formbuilder_setup", id => "skeleton", call => \&formbuilder_setup);
28         hook(type => "formbuilder", id => "skeleton", call => \&formbuilder);
29         hook(type => "savestate", id => "savestate", call => \&savestate);
30 } # }}}
31
32 sub getopt () { #{{{
33         debug("skeleton plugin getopt");
34 } #}}}
35
36 sub checkconfig () { #{{{
37         debug("skeleton plugin checkconfig");
38 } #}}}
39
40 sub needsbuild () { #{{{
41         debug("skeleton plugin needsbuild");
42 } #}}}
43
44 sub preprocess (@) { #{{{
45         my %params=@_;
46
47         return "skeleton plugin result";
48 } # }}}
49
50 sub filter (@) { #{{{
51         my %params=@_;
52         
53         debug("skeleton plugin running as filter");
54
55         return $params{content};
56 } # }}}
57
58 sub htmlize (@) { #{{{
59         my %params=@_;
60
61         debug("skeleton plugin running as htmlize");
62
63         return $params{content};
64 } # }}}
65
66 sub sanitize (@) { #{{{
67         my %params=@_;
68         
69         debug("skeleton plugin running as a sanitizer");
70
71         return $params{content};
72 } # }}}
73
74 sub format (@) { #{{{
75         my %params=@_;
76         
77         debug("skeleton plugin running as a formatter");
78
79         return $params{content};
80 } # }}}
81
82 sub pagetemplate (@) { #{{{
83         my %params=@_;
84         my $page=$params{page};
85         my $template=$params{template};
86         
87         debug("skeleton plugin running as a pagetemplate hook");
88 } # }}}
89
90 sub templatefile (@) { #{{{
91         my %params=@_;
92         my $page=$params{page};
93         
94         debug("skeleton plugin running as a templatefile hook");
95 } # }}}
96
97 sub delete (@) { #{{{
98         my @files=@_;
99
100         debug("skeleton plugin told that files were deleted: @files");
101 } #}}}
102
103 sub change (@) { #{{{
104         my @files=@_;
105
106         debug("skeleton plugin told that changed files were rendered: @files");
107 } #}}}
108
109 sub cgi ($) { #{{{
110         my $cgi=shift;
111
112         debug("skeleton plugin running in cgi");
113 } #}}}
114
115 sub auth ($$) { #{{{
116         my $cgi=shift;
117         my $session=shift;
118
119         debug("skeleton plugin running in auth");
120 } #}}}
121
122 sub canedit ($$$) { #{{{
123         my $page=shift;
124         my $cgi=shift;
125         my $session=shift;
126
127         debug("skeleton plugin running in canedit");
128 } #}}}
129
130 sub formbuilder_setup (@) { #{{{
131         my %params=@_;
132         
133         debug("skeleton plugin running in formbuilder_setup");
134 } # }}}
135
136 sub formbuilder (@) { #{{{
137         my %params=@_;
138         
139         debug("skeleton plugin running in formbuilder");
140 } # }}}
141
142 sub savestate () { #{{{
143         debug("skeleton plugin running in savestate");
144 } #}}}
145
146 1