Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 02-21-2012, 01:33 PM
PleaseHelp PleaseHelp is offline
 
Join Date: Jan 2012
Posts: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default DataManager: How to delete ALL a user's posts and threads based on userid ?

Hello,

How can we replicate the functioning of the "Delete as Spam" feature (where we HARD delete all posts and threads by a specific user) using the DataManager?

Thanks!
Reply With Quote
  #2  
Old 02-21-2012, 01:57 PM
GavoTrav's Avatar
GavoTrav GavoTrav is offline
 
Join Date: Jun 2011
Location: Ireland
Posts: 113
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I think delete all posts can only be done via admincp

Code:
http://site.com/admincp/thread.php?do=pruneuser&f=-1&u=[USERID]&confirm=1
Be careful with this
Reply With Quote
  #3  
Old 02-23-2012, 01:27 PM
PleaseHelp PleaseHelp is offline
 
Join Date: Jan 2012
Posts: 27
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by GavoTrav View Post
I think delete all posts can only be done via admincp

Code:
http://site.com/admincp/thread.php?do=pruneuser&f=-1&u=[USERID]&confirm=1
Be careful with this
Although this seems like it would work, it looks a bit complicated to automate as it would require the script to first log-in to the Admin CP, then run that URL, and finally confirm the deletions.

Is there a more straightforward method for a script ?
Reply With Quote
  #4  
Old 02-23-2012, 02:23 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

In inlinemod.php there's a section that deletes a users threads and posts when a moderator chooses "delete as spam". The moderator can choose "Delete other posts and threads started by the affected users", and the code for that starts around line 1358:

PHP Code:
if ($vbulletin->GPC['deleteother'] AND !empty($user_cache) AND can_moderate(-1'canmassprune'))


it looks like it just looks up the thread and post ids and creates a thread or post datamanager for each one and calls delete(), but it also does some "verifying" before that, and I'm not sure why or if it's necessary. Also, after all the deleting is done it calls build_thread_counters() for each thread that had posts deleted, and build_forum_counters() for each affected forum. I also see that if a user has more than 50 posts or threads it doesn't try to do a mass delete, and I don't know if that's just a safety measure or if it would fail.

Sorry I don't have a better answer than that for you.
Reply With Quote
  #5  
Old 05-26-2012, 01:19 AM
badawidollah badawidollah is offline
 
Join Date: Nov 2008
Posts: 179
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

thanks
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 10:12 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.07950 seconds
  • Memory Usage 2,199KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (2)bbcode_code
  • (1)bbcode_php
  • (1)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (5)post_thanks_box
  • (5)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (5)post_thanks_postbit_info
  • (5)postbit
  • (5)postbit_onlinestatus
  • (5)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete