]> sipb.mit.edu Git - ikiwiki.git/blobdiff - IkiWiki/Plugin/ddate.pm
releasing version 2.72
[ikiwiki.git] / IkiWiki / Plugin / ddate.pm
index 6b67f420232adcc835800c5b4729a47a5a7eb1a6..3470640dc1ed30748181d14118847680cbd47284 100644 (file)
@@ -5,19 +5,27 @@ package IkiWiki::Plugin::ddate;
 use IkiWiki 2.00;
 no warnings;
 
-sub import { #{{{
-       hook(type => "checkconfig", id => "ddate", 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;
@@ -27,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