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

 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
  #2  
Old 10-26-2017, 05:14 PM
MarkFL's Avatar
MarkFL MarkFL is offline
 
Join Date: Feb 2014
Location: St. Augustine, FL
Posts: 3,853
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Create a plugin hooked at "cron_script_cleanup_daily" with the code:

PHP Code:
global $vbulletin$db;
require_once(
DIR '/includes/functions_databuild.php');
$deleted false;
$curtime TIMENOW;
$physicaldel false;
$del_user $fetch_userinfo(1);
$delinfo = array(
    
'userid'          => $del_user['userid'],
    
'username'        => $del_user['username'],
    
'reason'          => 'Thread auto-deleted via cron.',
    
'keepattachments' => true
);
$countposts $vbulletin->forumcache[88]['options'] & $vbulletin->bf_misc_forumoptions['countposts'];

$query "SELECT thread.* FROM " TABLE_PREFIX "thread AS thread WHERE lastpost <= " $curtime 365*86400 " AND forumid = 88";
$threads_delete $vbulletin->db->query_read($query);
$mthread =& datamanager_init('Thread'$vbulletinERRTYPE_SILENT'threadpost');

while (
$thread_delete $vbulletin->db->fetch_array($threads_delete))
{
    if (!
$deleted)
    {
        
$deleted true;
    }

    
$mthread->set_existing($thread_delete);
    
$mthread->delete($countposts$physicaldel$delinfofalse);
}

unset(
$mthread);

if (
$deleted)
{
    
build_forum_counters(88);
}

$vbulletin->db->query_write(
    UPDATE " 
TABLE_PREFIX "thread
        SET forumid = 12
        WHERE forumid = 10
        AND lastpost <= " 
$curtime 100*86400 "
        AND prefixid = 'done'
"
);

build_forum_counters(10);
build_forum_counters(12); 

Note: I have not tested this code. Please test this first on your test installation, and then make a backup of your database before running this code the first time on your live site. I cannot emphasize enough how important this is!

As the code is written, the thread deletion is soft-delete. To use a hard-delete, change the line:

PHP Code:
$physicaldel false
to:

PHP Code:
$physicaldel true
Reply With Quote
2 благодарности(ей) от:
Dave, Za4a Tuner
 


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 01:19 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.09685 seconds
  • Memory Usage 2,901KB
  • Queries Executed 13 (?)
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
  • (7)bbcode_php
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (18)post_thanks_box
  • (2)post_thanks_box_bit
  • (18)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (18)post_thanks_postbit_info
  • (18)postbit
  • (18)postbit_onlinestatus
  • (18)postbit_wrapper
  • (1)showthread_list
  • (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_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • 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_threaded
  • showthread_threaded_construct_link
  • 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
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete