X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/c5919df5f3697e0f8968e2b8f49cd15c1e0aa412..543479eb22c43d26f73f2b43dbea45eea6bd56c1:/IkiWiki/Plugin/inline.pm diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm index 71e71c02e..66cba027a 100644 --- a/IkiWiki/Plugin/inline.pm +++ b/IkiWiki/Plugin/inline.pm @@ -5,6 +5,7 @@ package IkiWiki::Plugin::inline; use warnings; use strict; use IkiWiki; +use URI; sub import { #{{{ IkiWiki::hook(type => "preprocess", id => "inline", @@ -92,8 +93,11 @@ sub preprocess_inline (@) { #{{{ $link=abs2rel($link, dirname($params{page})); $template->param(pageurl => $link); $template->param(title => pagetitle(basename($page))); - $template->param(content => get_inline_content($page, $params{page})) - if $params{archive} eq "no"; + # TODO: if $params{archive} eq "no", the only reason to do this + # is to let the meta plugin get page title info; so stop + # calling this next line then once the meta plugin can + # store that accross runs (also tags plugin). + $template->param(content => get_inline_content($page, $params{page})); $template->param(ctime => displaytime($pagectime{$page})); run_hooks(pagetemplate => sub { @@ -137,7 +141,11 @@ sub date_822 ($) { #{{{ my $time=shift; eval q{use POSIX}; - return POSIX::strftime("%a, %d %b %Y %H:%M:%S %z", localtime($time)); + my $lc_time= POSIX::setlocale(&POSIX::LC_TIME); + POSIX::setlocale(&POSIX::LC_TIME, "C"); + my $ret=POSIX::strftime("%a, %d %b %Y %H:%M:%S %z", localtime($time)); + POSIX::setlocale(&POSIX::LC_TIME, $lc_time); + return $ret; } #}}} sub absolute_urls ($$) { #{{{ @@ -162,18 +170,19 @@ sub genrss ($@) { #{{{ my $page=shift; my @pages=@_; - my $url="$config{url}/".htmlpage($page); + my $url=URI->new(encode_utf8("$config{url}/".htmlpage($page))); - my $itemtemplate=template("rssitem.tmpl", blind_cache => 1, - die_on_bad_params => 0); + my $itemtemplate=template("rssitem.tmpl", blind_cache => 1); my $content=""; foreach my $p (@pages) { next unless exists $renderedfiles{$p}; + my $u=URI->new(encode_utf8("$config{url}/$renderedfiles{$p}")); + $itemtemplate->param( title => pagetitle(basename($p)), - url => "$config{url}/$renderedfiles{$p}", - permalink => "$config{url}/$renderedfiles{$p}", + url => $u, + permalink => $u, pubdate => date_822($pagectime{$p}), content => absolute_urls(get_inline_content($p, $page), $url), );