X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/46617c23f41b4d530cff53399c625a324a73e1c7..295a08394f1f962459d26db06624ff5d17bc3008:/IkiWiki/Plugin/skeleton.pm.example?ds=sidebyside

diff --git a/IkiWiki/Plugin/skeleton.pm.example b/IkiWiki/Plugin/skeleton.pm.example
index 1af8e4e9d..7974d5e53 100644
--- a/IkiWiki/Plugin/skeleton.pm.example
+++ b/IkiWiki/Plugin/skeleton.pm.example
@@ -6,11 +6,13 @@ package IkiWiki::Plugin::skeleton;
 
 use warnings;
 use strict;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
 
-sub import { #{{{
+sub import {
 	hook(type => "getopt", id => "skeleton",  call => \&getopt);
+	hook(type => "getsetup", id => "skeleton",  call => \&getsetup);
 	hook(type => "checkconfig", id => "skeleton", call => \&checkconfig);
+	hook(type => "refresh", id => "skeleton", call => \&refresh);
 	hook(type => "needsbuild", id => "skeleton", call => \&needsbuild);
 	hook(type => "preprocess", id => "skeleton", call => \&preprocess);
 	hook(type => "filter", id => "skeleton", call => \&filter);
@@ -18,169 +20,247 @@ sub import { #{{{
 	hook(type => "scan", id => "skeleton", call => \&scan);
 	hook(type => "htmlize", id => "skeleton", call => \&htmlize);
 	hook(type => "sanitize", id => "skeleton", call => \&sanitize);
-	hook(type => "postscan", id => "skeleton", call => \&postscan);
+	hook(type => "indexhtml", id => "skeleton", call => \&indexhtml);
 	hook(type => "format", id => "skeleton", call => \&format);
 	hook(type => "pagetemplate", id => "skeleton", call => \&pagetemplate);
 	hook(type => "templatefile", id => "skeleton", call => \&templatefile);
+	hook(type => "pageactions", id => "skeleton", call => \&pageactions);
 	hook(type => "delete", id => "skeleton", call => \&delete);
 	hook(type => "change", id => "skeleton", call => \&change);
 	hook(type => "cgi", id => "skeleton", call => \&cgi);
 	hook(type => "auth", id => "skeleton", call => \&auth);
 	hook(type => "sessioncgi", id => "skeleton", call => \&sessioncgi);
 	hook(type => "canedit", id => "skeleton", call => \&canedit);
+	hook(type => "canremove", id => "skeleton", call => \&canremove);
+	hook(type => "canrename", id => "skeleton", call => \&canrename);
+	hook(type => "checkcontent", id => "skeleton", call => \&checkcontent);
 	hook(type => "editcontent", id => "skeleton", call => \&editcontent);
 	hook(type => "formbuilder_setup", id => "skeleton", call => \&formbuilder_setup);
 	hook(type => "formbuilder", id => "skeleton", call => \&formbuilder);
+	hook(type => "renamepage", id => "skeleton", call => \&renamepage);
+	hook(type => "rename", id => "skeleton", call => \&rename);
 	hook(type => "savestate", id => "skeleton", call => \&savestate);
-} # }}}
+	hook(type => "genwrapper", id => "skeleton", call => \&genwrapper);
+	hook(type => "disable", id => "skeleton", call => \&disable);
+}
 
-sub getopt () { #{{{
+sub getopt () {
 	debug("skeleton plugin getopt");
-} #}}}
-
-sub checkconfig () { #{{{
+}
+
+sub getsetup () {
+	return
+		plugin => {
+			safe => 1,
+			rebuild => undef,
+			section => "misc",
+		},
+		skeleton => {
+			type => "boolean",
+			example => 0,
+			description => "example option",
+			safe => 0,
+			rebuild => 0,
+		},
+}
+
+sub checkconfig () {
 	debug("skeleton plugin checkconfig");
-} #}}}
+}
+
+sub refresh () {
+	debug("skeleton plugin refresh");
+}
+
+sub needsbuild ($) {
+	my $needsbuild=shift;
 
-sub needsbuild () { #{{{
 	debug("skeleton plugin needsbuild");
-} #}}}
 
-sub preprocess (@) { #{{{
+	return $needsbuild;
+}
+
+sub preprocess (@) {
 	my %params=@_;
 
 	return "skeleton plugin result";
-} # }}}
+}
 
-sub filter (@) { #{{{
+sub filter (@) {
 	my %params=@_;
 	
 	debug("skeleton plugin running as filter");
 
 	return $params{content};
-} # }}}
+}
 
-sub linkify (@) { #{{{
+sub linkify (@) {
 	my %params=@_;
 	
 	debug("skeleton plugin running as linkify");
 
 	return $params{content};
-} # }}}
+}
 
-sub scan (@) { #{{{a
+sub scan (@) {
 	my %params=@_;
 
 	debug("skeleton plugin running as scan");
-} # }}}
+}
 
-sub htmlize (@) { #{{{
+sub htmlize (@) {
 	my %params=@_;
 
 	debug("skeleton plugin running as htmlize");
 
 	return $params{content};
-} # }}}
+}
 
-sub sanitize (@) { #{{{
+sub sanitize (@) {
 	my %params=@_;
 	
 	debug("skeleton plugin running as a sanitizer");
 
 	return $params{content};
-} # }}}
+}
 
-sub postscan (@) { #{{{
+sub indexhtml (@) {
 	my %params=@_;
 	
-	debug("skeleton plugin running as postscan");
-} # }}}
+	debug("skeleton plugin running as indexhtml");
+}
 
-sub format (@) { #{{{
+sub format (@) {
 	my %params=@_;
 	
 	debug("skeleton plugin running as a formatter");
 
 	return $params{content};
-} # }}}
+}
 
-sub pagetemplate (@) { #{{{
+sub pagetemplate (@) {
 	my %params=@_;
 	my $page=$params{page};
 	my $template=$params{template};
 	
 	debug("skeleton plugin running as a pagetemplate hook");
-} # }}}
+}
 
-sub templatefile (@) { #{{{
+sub templatefile (@) {
 	my %params=@_;
 	my $page=$params{page};
 	
 	debug("skeleton plugin running as a templatefile hook");
-} # }}}
+}
+
+sub pageactions (@) {
+	my %params=@_;
+	my $page=$params{page};
 
-sub delete (@) { #{{{
+	debug("skeleton plugin running as a pageactions hook");
+	return ();
+}
+
+sub delete (@) {
 	my @files=@_;
 
 	debug("skeleton plugin told that files were deleted: @files");
-} #}}}
+}
 
-sub change (@) { #{{{
+sub change (@) {
 	my @files=@_;
 
 	debug("skeleton plugin told that changed files were rendered: @files");
-} #}}}
+}
 
-sub cgi ($) { #{{{
+sub cgi ($) {
 	my $cgi=shift;
 
 	debug("skeleton plugin running in cgi");
-} #}}}
+}
 
-sub auth ($$) { #{{{
+sub auth ($$) {
 	my $cgi=shift;
 	my $session=shift;
 
 	debug("skeleton plugin running in auth");
-} #}}}
+}
 
-sub sessionncgi ($$) { #{{{
+sub sessioncgi ($$) {
 	my $cgi=shift;
 	my $session=shift;
 
 	debug("skeleton plugin running in sessioncgi");
-} #}}}
+}
 
-sub canedit ($$$) { #{{{
+sub canedit ($$$) {
 	my $page=shift;
 	my $cgi=shift;
 	my $session=shift;
 
 	debug("skeleton plugin running in canedit");
-} #}}}
+}
+
+sub canremove (@) {
+	my %params=@_;
 
-sub editcontent ($$$) { #{{{
+	debug("skeleton plugin running in canremove");
+}
+
+sub canrename (@) {
+	my %params=@_;
+
+	debug("skeleton plugin running in canrename");
+}
+
+sub checkcontent (@) {
+	my %params=@_;
+
+	debug("skeleton plugin running in checkcontent");
+}
+
+sub editcontent ($$$) {
 	my %params=@_;
 
 	debug("skeleton plugin running in editcontent");
 
 	return $params{content};
-} #}}}
+}
 
-sub formbuilder_setup (@) { #{{{
+sub formbuilder_setup (@) {
 	my %params=@_;
 	
 	debug("skeleton plugin running in formbuilder_setup");
-} # }}}
+}
 
-sub formbuilder (@) { #{{{
+sub formbuilder (@) {
 	my %params=@_;
 	
 	debug("skeleton plugin running in formbuilder");
-} # }}}
+}
+
+sub renamepage (@) {
+	my %params=@_;
+	
+	debug("skeleton plugin running in renamepage");
+}
+
+sub rename (@) {
+	my %params=@_;
+	
+	debug("skeleton plugin running in rename");
+}
 
-sub savestate () { #{{{
+sub savestate () {
 	debug("skeleton plugin running in savestate");
-} #}}}
+}
+
+sub genwrapper () {
+	debug("skeleton plugin running in genwrapper");
+}
+
+sub disable () {
+	debug("skeleton plugin running in disable");
+}
 
 1