Skip to:
Content

bbPress.org

Opened 9 years ago

Closed 9 years ago

#2281 closed enhancement (fixed)

Add Redundant Topic Closed Check

Reported by: aaclayton Owned by: MZAWeb
Milestone: 2.3 Priority: normal
Severity: normal Version: 2.2.3
Component: General - Content Creation Keywords: has-patch 2nd-opinion
Cc: jared@…

Description

If a topic is closed, but a user still has an active browser tab with that topic open, they are still able to submit a new reply. Could we add a secondary check when the new reply is processed to make sure the topic has not been closed since the post form was generated?

Attachments (1)

functions.php.patch (664 bytes) - added by MZAWeb 9 years ago.

Download all attachments as: .zip

Change History (9)

#1 @johnjamesjacoby
9 years ago

  • Component changed from General to Content Creation
  • Keywords needs-patch added
  • Milestone changed from Awaiting Review to 2.4

This makes sense to me. Not a regression, so moving to 2.4.

Anyone wanting to stab at this, can look at the bbp_new_reply_handler() function.

#2 @MZAWeb
9 years ago

  • Owner set to MZAWeb

I'll take a pass later this week

#3 @MZAWeb
9 years ago

  • Cc wordpress@… added

#4 @jaredatch
9 years ago

  • Cc jared@… added

#5 @MZAWeb
9 years ago

Patch fixes the issue, but there's a challenge. Errors added with bbp_add_error in bbp_new_reply_handler are shown at the top of the reply form, but when you close the topic, the reply form is not shown anymore, so the user doesn't see the error message. What do you think johnjamesjacoby? Should we move the error reporting to the top of the replies loop?

#6 @MZAWeb
9 years ago

  • Cc wordpress@… removed
  • Keywords has-patch 2nd-opinion added; needs-patch removed

#7 @johnjamesjacoby
9 years ago

  • Milestone changed from 2.4 to 2.3

#8 @johnjamesjacoby
9 years ago

  • Resolution set to fixed
  • Status changed from new to closed

(In [4843]) Don't allow replies to closed topics, unless user can moderate. Props mzaweb. Fixes #2281.

Note: See TracTickets for help on using tickets.