Save deleted members files

 We want to save files uploaded by members even after they delete their profile. This would pertain to the entire site and every module.  Is there a way to remove personal information and replace their username with something different such as 'unknown'?

  Our issue is this, we have a very active forum that is very technical regarding the repair of antique tractors and some forum posts are invaluable to members. If a member removes himself from the site we want their posts to remain, we would like to include the sounds module as well.
  It seems that we saw something like this in the market several days ago, but can't find it now.

Bill and Deb
Quote · 15 Dec 2014

If you are using the Boonex forum, then when a member leaves, their posts will stay and will be listed as by Anonymous.  For photos and videos and sounds, that would require rewriting the code to leave those in place and to change the ownership of the albums.

Geeks, making the world a better place
Quote · 15 Dec 2014

UGH. Thank you Geek Girl. Is anyone aware of this being done, maybe steer a fella in the direction of someone that would do this for us?

Bill and Deb
Quote · 16 Dec 2014

I would start with the delete profile code.  You will need to figure out a way to rename the account; each user name should be unique.  Most of Dolphin will work off the member ID.  You will need to change the profile viewing code so that deleted profiles are not able to be viewed; you can work off of the new member name for example to block those profiles.

 

Post a job with your budget and someone might work on it for you.  boonex.com/jobs.

Geeks, making the world a better place
Quote · 16 Dec 2014

I would suggest to add the following in the beginning of profile_delete function in inc/admin.inc.php file (near ~380 line):

function profile_delete($ID, $isDeleteSpammer = false) 
{

if (!$isDeleteSpammer && $ID == getLoggedId()) { $ID = (int)$ID; $sUsername = 'unknown-' . genRndSalt(); db_res("UPDATE `Profiles` SET `NickName` = '" . $sUsername . "', `Email` = '" . $sUsername . "@example.com', `EmailNotify` = 0, `FacebookProfile` = '', `allow_view_to` = 2 WHERE `ID` = '{$ID}'"); // delete associated locations if (BxDolModule::getInstance('BxWmapModule')) BxDolService::call('wmap', 'response_entry_delete', array('profiles', $ID)); //delete all subscriptions $oSubscription = new BxDolSubscription(); $oSubscription->unsubscribe(array('type' => 'object_id', 'unit' => 'profile', 'object_id' => $ID)); // delete private data db_res( "DELETE FROM `sys_admin_ban_list` WHERE `ProfID`='". $ID . "' LIMIT 1"); db_res( "DELETE FROM `sys_greetings` WHERE `ID` = '{$ID}' OR `Profile` = '{$ID}'" ); db_res( "DELETE FROM `sys_block_list` WHERE `ID` = '{$ID}' OR `Profile` = '{$ID}'" ); db_res( "DELETE FROM `sys_messages` WHERE Recipient = {$ID} OR `Sender` = {$ID}" ); db_res( "DELETE FROM `sys_fave_list` WHERE ID = {$ID} OR Profile = {$ID}" ); db_res( "DELETE FROM `sys_friend_list` WHERE ID = {$ID} OR Profile = {$ID}" ); db_res( "DELETE FROM `sys_acl_levels_members` WHERE `IDMember` = {$ID}" ); db_res( "DELETE FROM `sys_tags` WHERE `ObjID` = {$ID} AND `Type` = 'profile'" ); db_res( "DELETE FROM `sys_sbs_entries` WHERE `subscriber_id` = {$ID} AND `subscriber_type` = '1'" );
$GLOBALS['MySQL']->cleanCache('sys_browse_people');
//delete cache file deleteUserDataFile( $ID ); return;
}

It will change username and email to 'unknown-xxxxxxxx', unsubscribe from any newsletters, set profile privacy to hidden, delete link with facebook profile (if facebook module isn't installed - remove FacebookProfile from the query), delete location and other personal profile data and clear profile cache.

It will work only if user delete their profile, when admin is deleting someone's profile it will be erased the same way as before.

Rules → http://www.boonex.com/terms
Quote · 22 Dec 2014
 
 
Below is the legacy version of the Boonex site, maintained for Dolphin.Pro 7.x support.
The new Dolphin solution is powered by UNA Community Management System.