- m_softdelete:
Moderator forum permission to allow soft deleting a post, which hides it from normal users[1] - m_restore:
Moderator forum permission to restore soft deleted posts in a sub module of the moderator queue or in the topic. As we had a RFC to simplify the permission system and similarity to m_approve, I personally would merge this two permissions (meaning to just modify its description in the ACP). - f_softdelete:
User forum permission to allow soft deleting own posts, which hides it from normal users[1]
Could be used to disallow Users to delete their posts instead. - f_restore:
User forum permission to allow restoring own soft deleted posts. However users can only restore their posts within the topic view. This however is only possible, when the user can view his own soft deleted posts, so [1] is not really correct. This also means, we have an extra OR in all queries that retrieve posts/topics from the DB.
Also users could use the f_restore to overrule a moderators decision:- Moderator A hides post of user B
- User B unhides the post himself
[RFC|Accepted] Soft Delete
- nickvergessen
- Former Team Member
- Posts: 733
- Joined: Sun Oct 07, 2007 11:54 am
- Location: Stuttgart, Germany
- Contact:
Re: [RFC|Accepted] Soft Delete
The current Implementation includes 4 permissions, which were added by A_Jelly_Donut. 2 of them are okay (green), but i think the other two (red) should be removed.
Member of the Development-Team — No Support via PM
Re: [RFC|Accepted] Soft Delete
I say there's a fatal flaw in the was this was made, according to what you just wrote.
I think there should be a "kinda" override when the moderator does it. If the moderator soft deletes it, the user may not restore it. That's crutial and if it does not work, it's a major code design flaw.
You may join m_softdelete and m_restore for the sake of the "simplify the permission system". Just make the code such way that's not "that hard" to have that permission back in an extension. Not so much for f_softdelete and f_restore (if for these 2 f_* the performance impact is quite significant forget what's after this). The forum admin may want to allow a user to delete his post and also to be able to restore it at a later time I don't know how likely is that to happen I'd actually activate the f_restore permission for "power users" of the forum because that gives 'em more freedom in the forum. Ofc, these are not that needed, just as nickvergessen stated.
Either way, I'm not against nickvergessen's opinion
I think there should be a "kinda" override when the moderator does it. If the moderator soft deletes it, the user may not restore it. That's crutial and if it does not work, it's a major code design flaw.
You may join m_softdelete and m_restore for the sake of the "simplify the permission system". Just make the code such way that's not "that hard" to have that permission back in an extension. Not so much for f_softdelete and f_restore (if for these 2 f_* the performance impact is quite significant forget what's after this). The forum admin may want to allow a user to delete his post and also to be able to restore it at a later time I don't know how likely is that to happen I'd actually activate the f_restore permission for "power users" of the forum because that gives 'em more freedom in the forum. Ofc, these are not that needed, just as nickvergessen stated.
Either way, I'm not against nickvergessen's opinion
Re: [RFC|Accepted] Soft Delete
I personally thing that m_restore should be kept while f_restore should be removed.
I would maybe add a m_viewsoftdeleted that would be a separate permission that would decide whether or not a moderator can view soft deleted posts?
I would maybe add a m_viewsoftdeleted that would be a separate permission that would decide whether or not a moderator can view soft deleted posts?
Formerly known as Unknown Bliss
No unsolicited PMs please except for quotes.psoTFX wrote: I went with Olympus because as I said to the teams ... "It's been one hell of a hill to climb"
- canonknipser
- Registered User
- Posts: 71
- Joined: Mon Sep 19, 2011 4:42 am
- Location: Germany
Re: [RFC|Accepted] Soft Delete
Remove f_restore and use softdelete as default for non-moderators, so users can't hard-delete their posts. Merge those m_-permissions
Greetings
Frank
phpbb.de support team member - no support via PM or mail
English is not my native language
Extensions and scripts for phpBB
Frank
phpbb.de support team member - no support via PM or mail
English is not my native language
Extensions and scripts for phpBB
- nickvergessen
- Former Team Member
- Posts: 733
- Joined: Sun Oct 07, 2007 11:54 am
- Location: Stuttgart, Germany
- Contact:
Re: [RFC|Accepted] Soft Delete
I updated the first post with my idea of a phpBB Soft Delete Implementation:
Ticket: http://tracker.phpbb.com/browse/PHPBB3-9657
Patch: https://github.com/nickvergessen/phpbb3 ... oft-delete (WIP)
Terms:
- 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:
How to:
- 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
- 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
- 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:
If the user does not have *_softdelete, the soft delete option is not displayed, if the user does not have *_delete, the hard delete option is missing, and the Soft delete option is named "Delete" in order to avoid confusion.
- 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 topics:
Topics can be soft deleted, by:(Both actions have the exactly same result)
- Soft deleting the first post of the topic, or
- Using the "Soft delete topic" option in the Quick-Moderation box.
- 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.
Member of the Development-Team — No Support via PM
- EXreaction
- Registered User
- Posts: 1555
- Joined: Sat Sep 10, 2005 2:15 am
Re: [RFC|Accepted] Soft Delete
Why would the whole topic not be visible? That's not the way deleting posts works now, so the behavior should not change. No behavior should change from the way posts/topics are currently deleted, except that they will still be visible to certain people and be able to be restored by certain people.nickvergessen wrote:If the first post of a topic is soft deleted, the whole topic will no longer be visibile.
Instead of adding new permissions for soft deletion, permissions should be added for permanent deletion, and the current delete permission would become the soft delete permission setting. Permission to permanently delete posts or topics should be given out less often after soft deletion is available.
When a user soft deletes their own post, they should be able to see it, plus anyone with moderator level soft deletion permission. This should not be m_approve because they are not "approving" posts, the OP wanted the post removed for a reason and the moderator is not approving them by undeleting them.
The moderator permission setting could be titled: "Can soft delete and restore soft deleted posts" to make this clear.
When a moderator soft deletes a post, only someone with the moderator permission to soft delete should be able to see it.
If someone has the ability to see a soft deleted post, they should be able to restore it (after all, they could just quote and repost it), there does not need to be a separate permission for that.
Soft deleted posts should not show up in a moderation queue. They were deleted for a reason and they should not be restored without greater reason. If administrators don't want users deleting their own posts without approval, they should not allow post deletion at all.nickvergessen wrote: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.
Re: [RFC|Accepted] Soft Delete
I also agree (with EXreaction) that if the current system is:
if the 1st post is deleted the topic remains, then that should not change unless you have a good reason for it.
I've got nothing else to add, for now.
EDIT:
BTW, if the post is locked by a moderator, is the user able to restore or soft delete?
IMO if a post is locked, the user should be unable to do anything to it. You don't mention that here so I don't know if you do such check while applying the soft delete or the restore.
if the 1st post is deleted the topic remains, then that should not change unless you have a good reason for it.
I've got nothing else to add, for now.
EDIT:
BTW, if the post is locked by a moderator, is the user able to restore or soft delete?
IMO if a post is locked, the user should be unable to do anything to it. You don't mention that here so I don't know if you do such check while applying the soft delete or the restore.
- nickvergessen
- Former Team Member
- Posts: 733
- Joined: Sun Oct 07, 2007 11:54 am
- Location: Stuttgart, Germany
- Contact:
Re: [RFC|Accepted] Soft Delete
Well that was already implemented like that, but I see your point. I will think about it.EXreaction wrote:Why would the whole topic not be visible? That's not the way deleting posts works now, so the behavior should not change. No behavior should change from the way posts/topics are currently deleted, except that they will still be visible to certain people and be able to be restored by certain people.nickvergessen wrote:If the first post of a topic is soft deleted, the whole topic will no longer be visibile.
Whats the difference between what i was saying? Doesnt really matter which one is which, if the setting is copied anyway.EXreaction wrote:Instead of adding new permissions for soft deletion, permissions should be added for permanent deletion, and the current delete permission would become the soft delete permission setting. Permission to permanently delete posts or topics should be given out less often after soft deletion is available.
Why should users be able to see posts they just deleted, and don't have permissions to restore? I really dont see a point in this, so the next three questions are obsoleted.EXreaction wrote:When a user soft deletes their own post, they should be able to see it, plus anyone with moderator level soft deletion permission.
So restoring would be part of m_softdelete rather then m_approve? This will increase the complexity of queries and so slowing down search/feed and other get topics of all forums functionsEXreaction wrote:If someone has the ability to see a soft deleted post, they should be able to restore it (after all, they could just quote and repost it), there does not need to be a separate permission for that.
Where else would a moderator have the ability to restore posts/topics in the MCP then?!EXreaction wrote:Soft deleted posts should not show up in a moderation queue....
1. users should never be able to restore postsbrunoais wrote:if the post is locked by a moderator, is the user able to restore or soft delete?
2. if a post is locked it can not be modified by the user (irrelevant because of 1)
Member of the Development-Team — No Support via PM
- Pony99CA
- Registered User
- Posts: 986
- Joined: Sun Feb 08, 2009 2:35 am
- Location: Hollister, CA
- Contact:
Re: [RFC|Accepted] Soft Delete
Here are a few other questions.
Currently, for users to delete posts, that post must be the last in the topic. Will that rule still be true for soft deleting? As the post can easily be restored, I see no reason to prevent users from soft deleting any of their posts.
If a user soft deletes a post, and a moderator restores it (perhaps because the deletion broke the flow of the topic), should the user be blocked from soft deleting it again or is appropriate action for the moderator to restore and then lock the post (because the user could still edit it)?
If we have both f_delete and f_softdelete (or f_harddelete and f_softdelete) permissions, shouldn't the ability to hard delete automatically allow the ability to soft delete? Why would you want to allow somebody to hard delete but not soft delete? (The same is true of moderator permissions.)
When combined with post revisions, should a soft delete and/or restore be considered a revision (for auditing purposes)?
Steve
Currently, for users to delete posts, that post must be the last in the topic. Will that rule still be true for soft deleting? As the post can easily be restored, I see no reason to prevent users from soft deleting any of their posts.
If a user soft deletes a post, and a moderator restores it (perhaps because the deletion broke the flow of the topic), should the user be blocked from soft deleting it again or is appropriate action for the moderator to restore and then lock the post (because the user could still edit it)?
If we have both f_delete and f_softdelete (or f_harddelete and f_softdelete) permissions, shouldn't the ability to hard delete automatically allow the ability to soft delete? Why would you want to allow somebody to hard delete but not soft delete? (The same is true of moderator permissions.)
When combined with post revisions, should a soft delete and/or restore be considered a revision (for auditing purposes)?
Steve
Silicon Valley Pocket PC (http://www.svpocketpc.com)
Creator of manage_bots and spoof_user (ask me)
Need hosting for a small forum with full cPanel & MySQL access? Contact me or PM me.
Creator of manage_bots and spoof_user (ask me)
Need hosting for a small forum with full cPanel & MySQL access? Contact me or PM me.
- Pony99CA
- Registered User
- Posts: 986
- Joined: Sun Feb 08, 2009 2:35 am
- Location: Hollister, CA
- Contact:
Re: [RFC|Accepted] Soft Delete
Actually, it could be a significant difference. if f_delete becomes the soft delete permission, users who could currently hard delete will now only be able to soft delete. That may be fine, but it's a consideration.nickvergessen wrote:Whats the difference between what i was saying? Doesnt really matter which one is which, if the setting is copied anyway.EXreaction wrote:Instead of adding new permissions for soft deletion, permissions should be added for permanent deletion, and the current delete permission would become the soft delete permission setting. Permission to permanently delete posts or topics should be given out less often after soft deletion is available.
Regardless, I would rename f_delete to either f_harddelete or f_softdelete (depending on the answer to the above question) to prevent confusion about what f_delete means. I would also do the same for m_delete.
Steve
Silicon Valley Pocket PC (http://www.svpocketpc.com)
Creator of manage_bots and spoof_user (ask me)
Need hosting for a small forum with full cPanel & MySQL access? Contact me or PM me.
Creator of manage_bots and spoof_user (ask me)
Need hosting for a small forum with full cPanel & MySQL access? Contact me or PM me.