X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/9575948b51b907ed88ba23f93bd4f21e5502e284..3cd0c1f91a8e4b7accfe75d132066b79da4379fd:/IkiWiki/Plugin/ddate.pm 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