Soft Delete
Author Message
Warning: this plugin has some known issues with messing up counters on the latest MyBB due to the complex workarounds it has to go through to get things working, and the fact that MyBB actually gets bug fixes sometimes.  This can lead to some quirky effects on your board, but usually can be resolved by recounting everything (but you have to do this every so often)

I spent quite a few days working on this plugin - it's quite fiddly to get right and I found it a bit of a challenge to implement (especially the counters).

Basically this stops threads and posts from being "fully" deleted.  Deleted threads/posts are displayed appropriately, only shown to moderators (see screenshots below).  Moderators can then undelete these deleted threads/posts if desired.  Administrators also have the ability to purge (completely remove) deleted threads/posts.

Due to the difficulty of this plugin, I can't be entirely sure that all cases are covered - I have done a fair bit of testing, but if you do find issues, please report them.  To give you an idea of how difficult this plugin was to get right, the development of this plugin actually lead to the finding of a few bugs in MyBB:
http://dev.mybboard.net/issues/827
http://dev.mybboard.net/issues/830
http://dev.mybboard.net/issues/831
http://dev.mybboard.net/issues/860
http://dev.mybboard.net/issues/861
http://dev.mybboard.net/issues/862
http://dev.mybboard.net/issues/863
http://dev.mybboard.net/issues/881

This plugin is somewhat affected by some of these bugs to an extent, though should be nothing major under normal usage.


This plugin requires a code modification (due to the lack of hooks provided).
For MyBB 1.6, see here
For MyBB 1.4 or 1.6 beta: in inc/class_moderation.php, find (FIRST INSTANCE):

PHP Code:
++$forum_counters[$post['fid']]['num_posts'];

add below:

PHP Code:
if(function_exists('softdeletex_approveposts')) eval(softdeletex_approveposts($post));

If you're a fag and think code edits are homosexual, you can GTFO or make a plugin (that works properly) which doesn't require them - go ahead, I challenge you

Upgrade instructions: If you're upgrading from v1.0 or v1.1 to v1.2x, please see this post

Notes:

  • The undelete function has been implemented as an approve, that is, approving a deleted thread/post will undelete it.
  • Deleting an unapproved item, when restored, will no longer be unapproved.
  • Uninstalling the plugin will remove all deleted threads and posts

Known issues:
  • Custom moderation has not been tested with deleted content and may cause issues.  Probably does work, but it may stuff up some counters.
  • Splitting posts from a thread, causing the first post to become a deleted post will cause the thread to be marked as deleted.  However, the thread count of the forum may not go down by 1 due to this.  This is mostly (indirectly) due to a MyBB bug.  But if this really bothers you, it's possible to fix this issue by doing the following modification to inc/class_moderation.php
    Find:

    PHP Code:
    			$forum_counters[$moveto]['threads'] = $forum_cache[$moveto]['threads'];
    			++$forum_counters[$moveto]['threads'];

    Replace with:

    PHP Code:
    			$forum_counters[$moveto]['threads'] = '+1';

  • Deleting posts containing attachments won't cause the attachment count of the thread to go down.  I don't really think this as much of an issue however, as, with standard MyBB behaviour, unapproving attachments or posts doesn't affect the thread's attachment count.


Changelogs: v1.1, v1.2, v1.21, v1.22, v1.23, v1.24, v1.25

Screenshots:


Attached File(s) Thumbnail(s)
       
(This post was last modified: 05-10-2012 09:04 AM by ZiNgA BuRgA.)
Find all posts by this user
Quote this message in a reply
Download: softdelete-1.25.7z (11.4 KB)
Plugin Version: 1.25
Last Updated: 03-12-2011, 09:24 AM

Downloads: 894
MyBB Compatibility: 1.4.x, 1.6.x
Plugin License: GPLv3
Uploader: ZiNgA BuRgA
ZiNgA BuRgA Offline
Fag
*******
Posts: 3,357
Joined: Jan 2008
Post: #21
RE: Soft Delete
Very minor update to v1.21 - fix a small bug when trying to merge posts, but user doesn't select any (fix just hides PHP errors).

My Blog
07-14-2010 09:20 AM
Find all posts by this user Quote this message in a reply
AXVIS Offline
Junior Member
**
Posts: 6
Joined: Apr 2010
Post: #22
RE: Soft Delete
Will this be updated for 1.6?
08-13-2010 05:48 AM
Find all posts by this user Quote this message in a reply
leefish Offline
Hamster
*****
Posts: 1,009
Joined: Apr 2010
Post: #23
RE: Soft Delete
Compatibility info in the download box seems to say it already is.....


[Image: leelink.gif]
MYBB1.6 & XThreads
08-13-2010 08:53 AM
Visit this user's website Find all posts by this user Quote this message in a reply
AXVIS Offline
Junior Member
**
Posts: 6
Joined: Apr 2010
Post: #24
RE: Soft Delete
It seems to be like it's not?
08-27-2010 07:35 AM
Find all posts by this user Quote this message in a reply
ZiNgA BuRgA Offline
Fag
*******
Posts: 3,357
Joined: Jan 2008
Post: #25
RE: Soft Delete
It was tested against the beta.  I haven't looked at whether it works on MyBB 1.6 final.  I assume you have?  If so, what issues are there?

EDIT: appears to work on MyBB 1.6.0 final, though I haven't tested everything.  Do note that the location of the code edit has changed:
find FIRST INSTANCE of:

PHP Code:
			if($post['threadvisible'] != 0)
			{
				++$forum_counters[$post['fid']]['num_posts'];
			}

add after:

PHP Code:
if(function_exists('softdeletex_approveposts')) eval(softdeletex_approveposts($post));


My Blog
(This post was last modified: 08-27-2010 09:23 AM by ZiNgA BuRgA.)
08-27-2010 08:56 AM
Find all posts by this user Quote this message in a reply
AXVIS Offline
Junior Member
**
Posts: 6
Joined: Apr 2010
Post: #26
RE: Soft Delete
Where do I throw the edit's in?
08-28-2010 01:15 AM
Find all posts by this user Quote this message in a reply
ZiNgA BuRgA Offline
Fag
*******
Posts: 3,357
Joined: Jan 2008
Post: #27
RE: Soft Delete
inc/class_moderation.php

As said in the first post.

My Blog
08-28-2010 09:36 AM
Find all posts by this user Quote this message in a reply
ZiNgA BuRgA Offline
Fag
*******
Posts: 3,357
Joined: Jan 2008
Post: #28
RE: Soft Delete
Updated to v1.22:
  • Will now block the class_moderation_delete_thread and class_moderation_delete_post hooks from being executed when soft deleting (note that the class_moderation_delete_thread_start and class_moderation_delete_post_start aren't blocked); the hooks will now only be run when the threads/posts are being purged.  This, hopefully, improves compatibility with some other plugins, mainly XThreads.
  • Some minor fixes for MyBB 1.6; 1.6 has fixed some of the counter bugs that I reported, of which, I haven't had the time to test them all, so I don't know whether this plugin still works with the changes, but from some quick tests, it appears to be fine.  Do note that 1.6 requires a slightly different code edit.

My Blog
09-17-2010 11:39 AM
Find all posts by this user Quote this message in a reply
ZiNgA BuRgA Offline
Fag
*******
Posts: 3,357
Joined: Jan 2008
Post: #29
RE: Soft Delete
Updated to v1.23, fixes some bugs.
Also realised one of the bug fixes in MyBB probably makes more of a mess of things.

My Blog
09-23-2010 03:50 PM
Find all posts by this user Quote this message in a reply
noammn Offline
Junior Member
**
Posts: 4
Joined: Oct 2010
Post: #30
RE: Soft Delete
Hi, i have a problem:
http://img176.imageshack.us/img176/3310/problemi.png
I think the problem is that I don't have the column of the Rating..
How can i fix this problem?
Please help me...
10-14-2010 04:20 AM
Find all posts by this user Quote this message in a reply


Forum Jump: