X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/10822a22b3d8872afb31e1847ee7448af86c574d..8d5cd865932b0c0feb1a398e5cde31de262a7649:/IkiWiki/Plugin/comments.pm diff --git a/IkiWiki/Plugin/comments.pm b/IkiWiki/Plugin/comments.pm index 2ad422f5f..e618d1a90 100644 --- a/IkiWiki/Plugin/comments.pm +++ b/IkiWiki/Plugin/comments.pm @@ -317,6 +317,13 @@ sub editcomment ($$) { force => 1); } + if (! defined $session->param('name')) { + # Make signinurl work and return here. + $form->tmpl_param(signinurl => IkiWiki::cgiurl(do => 'signin')); + $session->param(postsignin => $ENV{QUERY_STRING}); + IkiWiki::cgi_savesession($session); + } + # The untaint is OK (as in editpage) because we're about to pass # it to file_pruned anyway my $page = $form->field('page'); @@ -819,13 +826,10 @@ sub page_to_id ($) { # comment. my $page=shift; - # It needs to start with a letter. - $page="comment_".$page; - - # Encode any illegal characters. - $page=~s/([^A-Za-z0-9-_:.])/"__".ord($1)."__"/eg; + eval q{use Digest::MD5 'md5_hex'}; + error($@) if $@; - return $page; + return "comment-".md5_hex($page); } package IkiWiki::PageSpec;