From 962b1c130cbbb61855e14244b7ccc9d96f9f1847 Mon Sep 17 00:00:00 2001 From: Giuseppe Bilotta Date: Sun, 2 Jan 2011 18:23:45 +0100 Subject: 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) --- IkiWiki/Plugin/inline.pm | 39 +++++++++++++++++++++++++++++++-------- templates/blogpost.tmpl | 4 ++-- templates/feedlink.tmpl | 4 ++-- 3 files changed, 35 insertions(+), 12 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{}; + $feedlinks{$params{destpage}}.=qq{}; } } 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{}; + $feedlinks{$params{destpage}}.=qq{}; } } } diff --git a/templates/blogpost.tmpl b/templates/blogpost.tmpl index 5a31e3f8a..754f24b4e 100644 --- a/templates/blogpost.tmpl +++ b/templates/blogpost.tmpl @@ -1,10 +1,10 @@
-RSS +RSS -Atom +Atom diff --git a/templates/feedlink.tmpl b/templates/feedlink.tmpl index be8637f0f..fdad7f918 100644 --- a/templates/feedlink.tmpl +++ b/templates/feedlink.tmpl @@ -1,8 +1,8 @@ -- cgit v1.2.3