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 | |
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)
-rw-r--r-- | IkiWiki/Plugin/inline.pm | 39 | ||||
-rw-r--r-- | templates/blogpost.tmpl | 4 | ||||
-rw-r--r-- | 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{<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" />}; } } } 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 @@ <form action="<TMPL_VAR CGIURL>" method="get"> <div id="blogform"> <TMPL_IF RSSURL> -<a class="feedbutton" type="application/rss+xml" href="<TMPL_VAR RSSURL>">RSS</a> +<a class="feedbutton" type="application/rss+xml" rel="alternate" title="<TMPL_VAR RSSDESC>" href="<TMPL_VAR RSSURL>">RSS</a> </TMPL_IF> <TMPL_IF ATOMURL> -<a class="feedbutton" type="application/atom+xml" href="<TMPL_VAR ATOMURL>">Atom</a> +<a class="feedbutton" type="application/atom+xml" rel="alternate" title="<TMPL_VAR ATOMDESC>" href="<TMPL_VAR ATOMURL>">Atom</a> </TMPL_IF> <input type="hidden" name="do" value="blog" /> <input type="hidden" name="from" value="<TMPL_VAR ROOTPAGE>" /> 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 @@ <div id="feedlink"> <TMPL_IF RSSURL> -<a class="feedbutton" type="application/rss+xml" href="<TMPL_VAR RSSURL>">RSS</a> +<a class="feedbutton" type="application/rss+xml" rel="alternate" title="<TMPL_VAR RSSDESC>" href="<TMPL_VAR RSSURL>">RSS</a> </TMPL_IF> <TMPL_IF ATOMURL> -<a class="feedbutton" type="application/atom+xml" href="<TMPL_VAR ATOMURL>">Atom</a> +<a class="feedbutton" type="application/atom+xml" rel="alternate" title="<TMPL_VAR ATOMDESC>" href="<TMPL_VAR ATOMURL>">Atom</a> </TMPL_IF> </div> |