add reject all marked defer checkbox
authorJoey Hess <joey@gnu.kitenet.net>
Mon, 26 Jan 2009 03:25:45 +0000 (22:25 -0500)
committerJoey Hess <joey@gnu.kitenet.net>
Mon, 26 Jan 2009 03:25:45 +0000 (22:25 -0500)
IkiWiki/Plugin/comments.pm
templates/commentmoderation.tmpl

index f0b67a9ebc0c1d55ef8f4da67cfd328e31ad7259..32f3712f2423a05b04f91cd43da77af8adfa89b8 100644 (file)
@@ -539,12 +539,14 @@ sub commentmoderation ($$) {
        if (defined $cgi->param('sid')) {
                IkiWiki::checksessionexpiry($cgi, $session);
 
+               my $rejectalldefer=$cgi->param('rejectalldefer');
+
                my %vars=$cgi->Vars;
                my $added=0;
                foreach my $id (keys %vars) {
                        if ($id =~ /(.*)\Q._comment\E$/) {
                                my $action=$cgi->param($id);
-                               next if $action eq 'Defer';
+                               next if $action eq 'Defer' && ! $rejectalldefer;
 
                                # Make sure that the id is of a legal
                                # pending comment before untainting.
@@ -601,7 +603,6 @@ sub commentmoderation ($$) {
                my ($id, $ctime)=@{$_};
                my $file="$config{wikistatedir}/comments_pending/$id";
                my $content=readfile($file);
-               my $ctime=(stat($file))[10];
                {
                        id => $id,
                        view => previewcomment($content, $id,
@@ -668,14 +669,12 @@ sub previewcomment ($$$) {
 
        my $preview = IkiWiki::htmlize($location, $page, '_comment',
                        IkiWiki::linkify($location, $page,
-                               IkiWiki::preprocess($location, $page,
-                                       IkiWiki::filter($location,
-                                               $page, $content),
-                                       0, 1)));
+                       IkiWiki::preprocess($location, $page,
+                       IkiWiki::filter($location, $page, $content), 0, 1)));
        IkiWiki::run_hooks(format => sub {
-                       $preview = shift->(page => $page,
-                               content => $preview);
-               });
+               $preview = shift->(page => $page,
+                       content => $preview);
+       });
 
        my $template = template("comment.tmpl");
        $template->param(content => $preview);
index 3dadb791bbf4854e28adff1cd2e21c1713ef89da..e91d3146d511cc6aa4edd1f9ddf61802cdaeef41 100644 (file)
@@ -3,18 +3,24 @@
 <form action="<TMPL_VAR CGIURL>" method="post">
 <input type="hidden" name="do" value="commentmoderation" />
 <input type="hidden" name="sid" value="<TMPL_VAR SID>" />
+<input type="submit" value="Submit" />
+<input type="checkbox" name="rejectalldefer" value="1" />Reject
+all comments marked <em>Defer</em>
+<br />  
 <TMPL_LOOP NAME="COMMENTS">
 <div>
 <div>
 <TMPL_VAR VIEW>
 </div>
-<input type="radio" value="Defer" name="<TMPL_VAR ID>" checked>Defer</input>
-<input type="radio" value="Accept" name="<TMPL_VAR ID>">Accept</input>
-<input type="radio" value="Reject" name="<TMPL_VAR ID>">Reject</input>
+<input type="radio" value="Defer" name="<TMPL_VAR ID>" checked />Defer
+<input type="radio" value="Accept" name="<TMPL_VAR ID>" />Accept
+<input type="radio" value="Reject" name="<TMPL_VAR ID>" />Reject
 </div>
 <br />
 </TMPL_LOOP>
 <input type="submit" value="Submit" />
+<input type="checkbox" name="rejectalldefer" value="1" />Reject
+all comments marked <em>Defer</em>
 </form>
 <TMPL_ELSE>
 <p>