diff options
author | Joey Hess <joey@kitenet.net> | 2012-03-28 18:38:37 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2012-03-28 18:38:37 -0400 |
commit | 1916f974722ff509e44c16b4c07c054ef9a11f96 (patch) | |
tree | 5086fa98454dc48ced0d848fc588d4c25d129ca7 /IkiWiki/Plugin | |
parent | e07b876486ec523e232aff8674135f8d867e6dad (diff) | |
download | ikiwiki-1916f974722ff509e44c16b4c07c054ef9a11f96.tar ikiwiki-1916f974722ff509e44c16b4c07c054ef9a11f96.tar.gz |
integrate comments plugin with notifyemail
Diffstat (limited to 'IkiWiki/Plugin')
-rw-r--r-- | IkiWiki/Plugin/comments.pm | 19 |
1 files changed, 17 insertions, 2 deletions
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'), |