X-Git-Url: http://git.tremily.us/?a=blobdiff_plain;f=IkiWiki%2FPlugin%2Fcomments.pm;h=c2b2d919d4ac55c07ef2eb15a1c8f64e10282d2c;hb=1916f974722ff509e44c16b4c07c054ef9a11f96;hp=91a482ed6660059ed3a77f30b5236dbd891303a8;hpb=111db0b6be5b8fc5881e1e383d5360b768f68845;p=ikiwiki.git diff --git a/IkiWiki/Plugin/comments.pm b/IkiWiki/Plugin/comments.pm index 91a482ed6..c2b2d919d 100644 --- a/IkiWiki/Plugin/comments.pm +++ b/IkiWiki/Plugin/comments.pm @@ -301,7 +301,8 @@ sub editcomment ($$) { my @buttons = (POST_COMMENT, PREVIEW, CANCEL); my $form = CGI::FormBuilder->new( - fields => [qw{do sid page subject editcontent type author url}], + fields => [qw{do sid page subject editcontent type author + url subscribe}], charset => 'utf-8', method => 'POST', required => [qw{editcontent}], @@ -346,7 +347,15 @@ sub editcomment ($$) { $form->field(name => "type", value => $type, force => 1, type => 'select', options => \@page_types); - $form->tmpl_param(username => $session->param('name')); + my $username=$session->param('name'); + $form->tmpl_param(username => $username); + if (defined $username && IkiWiki::Plugin::notifyemail->can("subscribe")) { + $form->field(name => "subscribe", + options => [gettext("email replies to me")]); + } + else { + $form->field(name => "subscribe", type => 'hidden'); + } if ($config{comments_allowauthor} and ! defined $session->param('name')) { @@ -490,6 +499,12 @@ sub editcomment ($$) { if ($form->submitted eq POST_COMMENT && $form->validate) { IkiWiki::checksessionexpiry($cgi, $session); + + if (defined $username && length $form->field("subscribe") && + IkiWiki::Plugin::notifyemail->can("subscribe")) { + IkiWiki::Plugin::notifyemail::subscribe($username, + "comment($page)"); + } $postcomment=1; my $ok=IkiWiki::check_content(content => $form->field('editcontent'),