diff options
author | Giuseppe Bilotta <giuseppe.bilotta@gmail.com> | 2011-01-02 18:23:45 +0100 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2011-01-06 14:40:33 -0400 |
commit | 962b1c130cbbb61855e14244b7ccc9d96f9f1847 (patch) | |
tree | 7a0d6d338394f10dac0a10c7c038acbc6932ab00 /IkiWiki | |
parent | ea713f002515c3c60c28fc5eb0d70d421093af83 (diff) |
inline: pass the Atom/RSS titles to the templates
The default templates are also updated to make use of this information.
The rel="alternate" attribute is also inserted, for completeness.
(cherry picked from commit 618ade535e6a7967a510d9e210edaef3d37cc9bc)
Diffstat (limited to 'IkiWiki')
-rw-r--r-- | IkiWiki/Plugin/inline.pm | 39 |
1 files changed, 31 insertions, 8 deletions
diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm index 7c5da7343..e5a5c112e 100644 --- a/IkiWiki/Plugin/inline.pm +++ b/IkiWiki/Plugin/inline.pm @@ -290,8 +290,17 @@ sub preprocess_inline (@) { } } - my $rssurl=abs2rel($feedbase."rss".$feednum, dirname(htmlpage($params{destpage}))) if $feeds && $rss; - my $atomurl=abs2rel($feedbase."atom".$feednum, dirname(htmlpage($params{destpage}))) if $feeds && $atom; + my ($rssurl, $atomurl, $rssdesc, $atomdesc); + if ($feeds) { + if ($rss) { + $rssurl=abs2rel($feedbase."rss".$feednum, dirname(htmlpage($params{destpage}))); + $rssdesc = "$desc (RSS)"; + } + if ($atom) { + $atomurl=abs2rel($feedbase."atom".$feednum, dirname(htmlpage($params{destpage}))); + $atomdesc = "$desc (Atom)"; + } + } my $ret=""; @@ -302,8 +311,16 @@ sub preprocess_inline (@) { my $formtemplate=template_depends("blogpost.tmpl", $params{page}, blind_cache => 1); $formtemplate->param(cgiurl => IkiWiki::cgiurl()); $formtemplate->param(rootpage => rootpage(%params)); - $formtemplate->param(rssurl => $rssurl) if $feeds && $rss; - $formtemplate->param(atomurl => $atomurl) if $feeds && $atom; + if ($feeds) { + if ($rss) { + $formtemplate->param(rssurl => $rssurl); + $formtemplate->param(rssdesc => $rssdesc); + } + if ($atom) { + $formtemplate->param(atomurl => $atomurl); + $formtemplate->param(atomdesc => $atomdesc); + } + } if (exists $params{postformtext}) { $formtemplate->param(postformtext => $params{postformtext}); @@ -321,8 +338,14 @@ sub preprocess_inline (@) { elsif ($feeds && !$params{preview} && ($emptyfeeds || @feedlist)) { # Add feed buttons. my $linktemplate=template_depends("feedlink.tmpl", $params{page}, blind_cache => 1); - $linktemplate->param(rssurl => $rssurl) if $rss; - $linktemplate->param(atomurl => $atomurl) if $atom; + if ($rss) { + $linktemplate->param(rssurl => $rssurl); + $linktemplate->param(rssdesc => $rssdesc); + } + if ($atom) { + $linktemplate->param(atomurl => $atomurl); + $linktemplate->param(atomdesc => $atomdesc); + } $ret.=$linktemplate->output; } @@ -419,7 +442,7 @@ sub preprocess_inline (@) { genfeed("rss", $config{url}."/".$rssp, $desc, $params{guid}, $params{destpage}, @feedlist)); $toping{$params{destpage}}=1 unless $config{rebuild}; - $feedlinks{$params{destpage}}.=qq{<link rel="alternate" type="application/rss+xml" title="$desc (RSS)" href="$rssurl" />}; + $feedlinks{$params{destpage}}.=qq{<link rel="alternate" type="application/rss+xml" title="$rssdesc" href="$rssurl" />}; } } if ($atom) { @@ -429,7 +452,7 @@ sub preprocess_inline (@) { writefile($atomp, $config{destdir}, genfeed("atom", $config{url}."/".$atomp, $desc, $params{guid}, $params{destpage}, @feedlist)); $toping{$params{destpage}}=1 unless $config{rebuild}; - $feedlinks{$params{destpage}}.=qq{<link rel="alternate" type="application/atom+xml" title="$desc (Atom)" href="$atomurl" />}; + $feedlinks{$params{destpage}}.=qq{<link rel="alternate" type="application/atom+xml" title="$atomdesc" href="$atomurl" />}; } } } |