aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <smcv@debian.org>2016-01-21 07:50:13 +0000
committerSimon McVittie <smcv@debian.org>2016-01-21 07:50:13 +0000
commit855b757f37af9af00be77b1f668270a8a8c3db11 (patch)
tree29ba3ed7918758633ae9c864324b8f4cf06ae370
parent02a1aa4e49e7d459edd12621046bd35259036ae7 (diff)
downloadikiwiki-855b757f37af9af00be77b1f668270a8a8c3db11.tar
ikiwiki-855b757f37af9af00be77b1f668270a8a8c3db11.tar.gz
Force comments URL in RSS feeds to be absolute
Now I'm going to get bug reports about wanting the URLs to be protocol-relative, but we can't win there as long as we generate RSS, because RSS doesn't have well-defined semantics for relative URLs (and the W3C's validator complains about them). If absolute URLs are a problem for you, please use Atom feeds.
-rw-r--r--IkiWiki/Plugin/comments.pm6
-rw-r--r--IkiWiki/Plugin/inline.pm1
2 files changed, 5 insertions, 2 deletions
diff --git a/IkiWiki/Plugin/comments.pm b/IkiWiki/Plugin/comments.pm
index ad813d19d..e93db94eb 100644
--- a/IkiWiki/Plugin/comments.pm
+++ b/IkiWiki/Plugin/comments.pm
@@ -919,16 +919,18 @@ sub pagetemplate (@) {
}
if ($shown) {
+ my $absolute = $template->param('wants_absolute_urls');
+
if ($template->query(name => 'commentsurl')) {
$template->param(commentsurl =>
- urlto($page).'#comments');
+ urlto($page, undef, $absolute).'#comments');
}
if ($template->query(name => 'atomcommentsurl') && $config{usedirs}) {
# This will 404 until there are some comments, but I
# think that's probably OK...
$template->param(atomcommentsurl =>
- urlto($page).'comments.atom');
+ urlto($page, undef, $absolute).'comments.atom');
}
if ($template->query(name => 'commentslink')) {
diff --git a/IkiWiki/Plugin/inline.pm b/IkiWiki/Plugin/inline.pm
index d68723dff..5ea5f35af 100644
--- a/IkiWiki/Plugin/inline.pm
+++ b/IkiWiki/Plugin/inline.pm
@@ -725,6 +725,7 @@ sub genfeed ($$$$$@) {
my $template=template_depends($feedtype."page.tmpl", $page, blind_cache => 1);
$template->param(
+ wants_absolute_urls => 1,
title => $feedtitle,
wikiname => $config{wikiname},
pageurl => $url,