X-Git-Url: https://scripts.mit.edu/gitweb/www/ikiwiki.git/blobdiff_plain/aa2b3b8f637d0f3abe2ebf3845a22781ffd83c72..2a0cb4e9b16203264dad358fae7abc38bfce93e3:/IkiWiki/Plugin/googlecalendar.pm diff --git a/IkiWiki/Plugin/googlecalendar.pm b/IkiWiki/Plugin/googlecalendar.pm index c99563d95..81a3ad677 100644 --- a/IkiWiki/Plugin/googlecalendar.pm +++ b/IkiWiki/Plugin/googlecalendar.pm @@ -3,16 +3,25 @@ package IkiWiki::Plugin::googlecalendar; use warnings; use strict; -use IkiWiki; -use IPC::Open2; +use IkiWiki 2.00; sub import { #{{{ - IkiWiki::hook(type => "preprocess", id => "googlecalendar", + hook(type => "getsetup", id => "googlecalendar", + call => \&getsetup); + hook(type => "preprocess", id => "googlecalendar", call => \&preprocess); - IkiWiki::hook(type => "format", id => "googlecalendar", + hook(type => "format", id => "googlecalendar", call => \&format); } # }}} +sub getsetup () { #{{{ + return + plugin => { + safe => 1, + rebuild => undef, + }, +} #}}} + sub preprocess (@) { #{{{ my %params=@_; @@ -20,7 +29,7 @@ sub preprocess (@) { #{{{ # Avoid XSS attacks.. my ($url)=$params{html}=~m#iframe\s+src="http://www\.google\.com/calendar/embed\?([^"<>]+)"#; if (! defined $url || ! length $url) { - return "[[googlecalendar failed to find url in html]]"; + error gettext("failed to find url in html") } my ($height)=$params{html}=~m#height="(\d+)"#; my ($width)=$params{html}=~m#width="(\d+)"#;