]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - IkiWiki/Plugin/comments.pm
po/todo: update
[git.ikiwiki.info.git] / IkiWiki / Plugin / comments.pm
index c9c7b2ed4c8f4eaa09b110426f2619617376f927..1c10417c389cf4aedc11d0f9d510eaa134ff8b32 100644 (file)
@@ -198,8 +198,17 @@ sub preprocess {
                        $pagestate{$page}{meta}{author} = $params{claimedauthor};
                }
 
                        $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 {
                }
        }
        else {
@@ -497,7 +506,10 @@ sub sessioncgi ($$) {
                error($conflict) if defined $conflict;
 
                # Jump to the new comment on the page.
                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,
        }
        else {
                IkiWiki::showform ($form, \@buttons, $session, $cgi,