use warnings;
use strict;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
use Encode;
use POSIX qw(strftime);
$pagestate{$page}{meta}{author} = $params{claimedauthor};
}
- if (defined $params{url} and safeurl($params{url})) {
- $pagestate{$page}{meta}{authorurl} = $params{url};
+ if (defined $params{url}) {
+ my $url=$params{url};
+
+ eval q{use URI::Heuristic};
+ if (! $@) {
+ $url=URI::Heuristic::uf_uristr($url);
+ }
+
+ if (safeurl($url)) {
+ $pagestate{$page}{meta}{authorurl} = $url;
+ }
}
}
else {
error($conflict) if defined $conflict;
# Jump to the new comment on the page.
- IkiWiki::redirect($cgi, urlto($page, undef, 1)."#$location");
+ # The trailing question mark tries to avoid broken
+ # caches and get the most recent version of the page.
+ IkiWiki::redirect($cgi, urlto($page, undef, 1)."#$location?updated");
+
}
else {
IkiWiki::showform ($form, \@buttons, $session, $cgi,