summaryrefslogtreecommitdiff
path: root/lib/VNWeb/Discussions/PostEdit.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/VNWeb/Discussions/PostEdit.pm')
-rw-r--r--lib/VNWeb/Discussions/PostEdit.pm7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/VNWeb/Discussions/PostEdit.pm b/lib/VNWeb/Discussions/PostEdit.pm
index a645fb6f..d0e4e1d2 100644
--- a/lib/VNWeb/Discussions/PostEdit.pm
+++ b/lib/VNWeb/Discussions/PostEdit.pm
@@ -10,7 +10,7 @@ my $FORM = {
num => { id => 1 },
can_mod => { anybool => 1, _when => 'out' },
- hidden => { anybool => 1 }, # When can_mod
+ hidden => { default => sub { $_[0] } }, # When can_mod
nolastmod => { anybool => 1, _when => 'in' }, # When can_mod
delete => { anybool => 1 }, # When can_mod
@@ -44,14 +44,15 @@ elm_api DiscussionsPostEdit => $FORM_OUT, $FORM_IN, sub {
return tuwf->resNotFound if !$t->{id};
return elm_Unauth if !can_edit t => $t;
+ tuwf->dbExeci(q{DELETE FROM notifications WHERE iid =}, \$id, 'AND num =', \$num) if auth->permBoardmod && ($data->{delete} || defined $data->{hidden});
+
if($data->{delete} && auth->permBoardmod) {
auth->audit($t->{user_id}, 'post delete', "deleted $id.$num");
tuwf->dbExeci('DELETE FROM threads_posts WHERE tid =', \$id, 'AND num =', \$num);
tuwf->dbExeci('DELETE FROM reviews_posts WHERE id =', \$id, 'AND num =', \$num);
- tuwf->dbExeci(q{DELETE FROM notifications WHERE iid =}, \$id, 'AND num =', \$num);
return elm_Redirect "/$id";
}
- auth->audit($t->{user_id}, 'post edit', "edited $id.$num") if $t->{user_id} != auth->uid;
+ auth->audit($t->{user_id}, 'post edit', "edited $id.$num") if $t->{user_id} ne auth->uid;
my $post = {
tid => $id,