X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/9575948b51b907ed88ba23f93bd4f21e5502e284..d8943d8668d2489b78d9c7c2abdad9f71d193724:/IkiWiki/Plugin/ddate.pm?ds=sidebyside

diff --git a/IkiWiki/Plugin/ddate.pm b/IkiWiki/Plugin/ddate.pm
index 862d4da5b..bb77ce59f 100644
--- a/IkiWiki/Plugin/ddate.pm
+++ b/IkiWiki/Plugin/ddate.pm
@@ -1,22 +1,31 @@
 #!/usr/bin/perl
 # Discordian date support fnord ikiwiki.
 package IkiWiki::Plugin::ddate;
-use IkiWiki;
+
+use IkiWiki 3.00;
 no warnings;
 
-sub import { #{{{
-	hook(type => "checkconfig", id => "skeleton", call => \&checkconfig);
-} # }}}
+sub import {
+	hook(type => "getsetup", id => "ddate", call => \&getsetup);
+}
 
-sub checkconfig () { #{{{
-	if (! defined $config{timeformat} ||
-	    $config{timeformat} eq '%c') {
-		$config{timeformat}='on %A, the %e of %B, %Y. %N%nCelebrate %H';
-	}
-} #}}}
+sub getsetup {
+	return
+		plugin => {
+			safe => 1,
+			rebuild => 1,
+		},
+}
 
-sub IkiWiki::displaytime ($) { #{{{
+sub IkiWiki::formattime ($;$) {
 	my $time=shift;
+	my $format=shift;
+	if (! defined $format) {
+		$format=$config{timeformat};
+		if ($format eq '%c') {
+			$format='on %A, the %e of %B, %Y. %N%nCelebrate %H';
+		}
+	}
 	eval q{
 		use DateTime;
 		use DateTime::Calendar::Discordian;
@@ -26,7 +35,7 @@ sub IkiWiki::displaytime ($) { #{{{
 	}
 	my $dt = DateTime->from_epoch(epoch => $time);
 	my $dd = DateTime::Calendar::Discordian->from_object(object => $dt);
-	return $dd->strftime($IkiWiki::config{timeformat});
-} #}}}
+	return $dd->strftime($format);
+}
 
 5