Patch: https://github.com/phpbb/phpbb3/pull/1017 (WIP)
Terms:New RFC by nickvergessen
- Soft deleting:
If a post is soft deleted by a moderator or user, it is not visible in the topic for normal users anymore.
If the first post of a topic is soft deleted, the whole topic will no longer be visibile. - Restore:
Restoring a post/topic means to revert the soft deletion, so it's visibile again.
Configuration:
- Enable/Disable:
This simple boolean config will allow managing soft delete with one option, rather than having to check all permission.- Default value: true
Permissions:
- New permissions:
- m_softdelete:
Moderator forum permission to allow soft deleting a post, which hides it from normal users- Default value: Copied from m_delete
- f_softdelete:
User forum permission to allow soft deleting own posts, which hides it from normal users. Could be used in order to disallow Users to delete their posts instead, moderators could then decide whether to really delete the post or not.- Default value: Copied from f_delete
- m_softdelete:
- Modified permissions:
- m_approve:
The m_approve permission will not only be used for new unapproved posts, in order to approve them, but also for soft-deleted posts to restore them (revert soft-deletion).- Default value: Not modified
- m_approve:
- Soft delete:
Most might agree, that it would look a bit stupid to add a second delete button on each post. So I thought the following might be the best option:
- Soft delete posts:
Currently when you click on the X to delete a post, you are prompted with a confirm box, asking if you really want to delete the post. This Confirmbox would be modified to have 3 options, instead of Yes/No only:
- Soft delete:
Soft deletes the post/topic, so it can be recovered with "Restore". - Delete:
Hard deletes the post/topic. the post/topic can not be recovered/restored. - Cancel:
In case of a misclick or when the user decides not to delete the post/topic.
- Soft delete:
- Soft delete topics:
Topics can be soft deleted, by:- Soft deleting the first post of the topic, or
- Using the "Soft delete topic" option in the Quick-Moderation box.
- Soft delete posts:
- Restore:
- Restore posts:
Posts can be restored by moderators in two ways:- Click on a "Restore" button, like it is currently done with unapproved posts, for approving them, or
- In a MCP module within the queue category.
- Restore topics:
Topics can be restored, with performing the Restore post action for the first post of the topic.
- Restore posts:
Hey GuysPrevious RFC bellow this quote box:
First of all I'm not sure if this is an RFC, so put it here - if not move it or whatrver. Second of all I dont think 3.1 will have soft delete, hence this post - if it does then ignore it.
Soft Delete
Soft Delete is a feature only avaiable by mod for phpBB3, but exists in other forum software. Such a feature is in my opinion necesary, and many forums who do not have soft delete go through the trouble of splitting a post into another forum which brings disadvantages.
Though theres about 8 weeks until the phpBB3.1 date, I'm not sure if theres enough time for such an addition however this is what I propose (maybe this should be an RFC?)
About:
- Applies to topics and posts, and can be evolved to perhaps forums?
Configuration - On/Off:
- Soft Delete/Full Delete permision based on forums; option applies to all delete actions within that forum
- Global (forum wide) force soft delete/full delete option; as says would force the selected option - would be "Soft Delete", "Full Delete", "Forum Default"
- Forum 'Default' would be full delete - so admin must define soft delete; saves on database size from smaller forum admins or people no need for this
Proessing:
- As normal delete options, as in mcp/mass moderation or inline post
- AJAX post delete - Saves the extra page when deleting posts inline, confirmation window is a MUST despite undo being able since its only a soft delete. Makes mass inline moderation much quicker - Being asynchronous after confirmation the post block can simply grey out into that rolling image to show progress, then once its done formatting will be applied, if an error a dialog is displayed. Such a system would allow the moderator to hit post delete -> click yes -> do next post, etc etc - no need for the delete page
- Poster's post count would go down one, a 'void' or whatever field would determine whether the post has been deleted (so remains in the phpbb_posts table) - Not displayed for non moderators
- An additional permision for moderators "Display Deleted Posts"; determines whether deleted posts can be seen or not within forums they moderate.
- Further to the above, users who have deleted their posts cannot undelete (or perhaps a time limit to undelete?)
- Last Edit updated to the "<username who deleted this post> @ <time> - <user> soft deleted this post"
Purging/Full Delete of Soft Deleted Posts
- Eventually database size may become an issue, so purging is necesary
- Moderator Permision: Allow Deletion of soft deleted posts; lets moderators with this permisions fully delete (remove from db) posts which have been soft deleted
- Admin Panel - Purge soft deleted posts - gives time frame to delete, and perhaps forums to include/exclude?
Display:
- Admin must be able to distinguish easily between a soft deleted post; perhaps:
- Template would remain almost the same, however CSS would be used to identify identify posts:
- Reason for diffrent template would be something like a dialog to partially grayscale the post - this means images etc would be greyed out as they are displayed beneath a semi transparent block
- Buttons: Undelete, Full Delete
Thanks