]> scripts.mit.edu Git - www/ikiwiki.git/blobdiff - IkiWiki/Plugin/ddate.pm
* Added a ddate plugin.
[www/ikiwiki.git] / IkiWiki / Plugin / ddate.pm
diff --git a/IkiWiki/Plugin/ddate.pm b/IkiWiki/Plugin/ddate.pm
new file mode 100644 (file)
index 0000000..c8cf3f6
--- /dev/null
@@ -0,0 +1,29 @@
+#!/usr/bin/perl
+# Discordian date support fnord ikiwiki.
+package IkiWiki::Plugin::ddate;
+use IkiWiki;
+use IkiWiki::Render; # so we can redefine it here:
+no warnings;
+
+sub import { #{{{
+       IkiWiki::hook(type => "checkconfig", id => "skeleton", 
+               call => \&checkconfig);
+} # }}}
+
+sub checkconfig () { #{{{
+       if (! defined $IkiWiki::config{timeformat} ||
+           $IkiWiki::config{timeformat} eq '%c') {
+               $IkiWiki::config{timeformat}='on %{%A, the %e of %B%}, %Y. %N%nCelebrate %H';
+       }
+} #}}}
+
+sub IkiWiki::displaytime ($) { #{{{
+       my $time=shift;
+        eval q{use POSIX};
+        my $gregorian=POSIX::strftime("%d %m %Y", localtime($time));
+       my $date=`ddate +'$IkiWiki::config{timeformat}' $gregorian`;
+       chomp $date;
+       return $date;
+} #}}}
+
+5