[TH] Advanced Thread Archiver [Deleted]

I just got this aerver error:

Server Error Log
Error Info
ErrorException: Invalid argument supplied for foreach() - library/XenStop/AdvArchiver/CronEntry/ArchiveThreads.php:29
Generated By: ---, pred 1 minuto
Stack Trace
#0 /home/.../public_html/forum/library/XenStop/AdvArchiver/CronEntry/ArchiveThreads.php(29): XenForo_Application::handlePhpError(2, 'Invalid argumen...', '/home/mladiuc/p...', 29, Array)
#1 [internal function]: XenStop_AdvArchiver_CronEntry_ArchiveThreads::run(Array)
#2 /home/.../public_html/forum/library/XenForo/Model/Cron.php(357): call_user_func(Array, Array)
#3 /home/.../public_html/forum/library/XenForo/ControllerAdmin/Cron.php(213): XenForo_Model_Cron->runEntry(Array)
#4 /home/.../public_html/forum/library/XenForo/FrontController.php(351): XenForo_ControllerAdmin_Cron->actionRun()
#5 /home/.../public_html/forum/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#6 /home/.../public_html/forum/admin.php(13): XenForo_FrontController->run()
#7 {main}


I hope this cna be fixed. I'm using XF 1.5.

Thank you.
 
I'm starting to see some server error logs.

Code:
Error Info
ErrorException: Undefined variable: threadUpdateData - library/XenStop/AdvArchiver/CronEntry/ArchiveThreads.php:73
Generated By: Unknown Account, Yesterday at 03:00
Stack Trace
#0 /home/www.xxx.net/public_html/library/XenStop/AdvArchiver/CronEntry/ArchiveThreads.php(73): XenForo_Application::handlePhpError(8, 'Undefined varia...', '/home/www.xxx...', 73, Array)
#1 [internal function]: XenStop_AdvArchiver_CronEntry_ArchiveThreads::run(Array)
#2 /home/www.xxx.net/public_html/library/XenForo/Model/Cron.php(357): call_user_func(Array, Array)
#3 /home/www.xxx.net/public_html/library/XenForo/Deferred/Cron.php(24): XenForo_Model_Cron->runEntry(Array)
#4 /home/www.xxx.net/public_html/library/XenForo/Model/Deferred.php(295): XenForo_Deferred_Cron->execute(Array, Array, 7.9912509918213, '')
#5 /home/www.xxx.net/public_html/library/XenForo/Model/Deferred.php(429): XenForo_Model_Deferred->runDeferred(Array, 7.9912509918213, '', false)
#6 /home/www.xxx.net/public_html/library/XenForo/Model/Deferred.php(374): XenForo_Model_Deferred->_runInternal(Array, NULL, '', false)
#7 /home/www.xxx.net/public_html/deferred.php(23): XenForo_Model_Deferred->run(false)
#8 {main}
Request State
array(3) {
  ["url"] => string(34) "http://www.xxx.net/deferred.php"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(3) {
    ["_xfRequestUri"] => string(45) "/threads/csi-final-episode-sniffer-bees.6886/"
    ["_xfNoRedirect"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}

and

Code:
ErrorException: Argument 1 passed to XenForo_DataWriter::bulkSet() must be of the type array, null given, called in /home/www.xxx.net/public_html/library/XenStop/AdvArchiver/CronEntry/ArchiveThreads.php on line 73 and defined - library/XenForo/DataWriter.php:991
Generated By: Unknown Account, Yesterday at 03:00
Stack Trace
#0 /home/www.xxx.net/public_html/library/XenForo/DataWriter.php(991): XenForo_Application::handlePhpError(4096, 'Argument 1 pass...', '/home/www.xxx...', 991, Array)
#1 /home/www.xxx.net/public_html/library/XenStop/AdvArchiver/CronEntry/ArchiveThreads.php(73): XenForo_DataWriter->bulkSet(NULL)
#2 [internal function]: XenStop_AdvArchiver_CronEntry_ArchiveThreads::run(Array)
#3 /home/www.xxx.net/public_html/library/XenForo/Model/Cron.php(357): call_user_func(Array, Array)
#4 /home/www.xxx.net/public_html/library/XenForo/Deferred/Cron.php(24): XenForo_Model_Cron->runEntry(Array)
#5 /home/www.xxx.net/public_html/library/XenForo/Model/Deferred.php(295): XenForo_Deferred_Cron->execute(Array, Array, 7.9912509918213, '')
#6 /home/www.xxx.net/public_html/library/XenForo/Model/Deferred.php(429): XenForo_Model_Deferred->runDeferred(Array, 7.9912509918213, '', false)
#7 /home/www.xxx.net/public_html/library/XenForo/Model/Deferred.php(374): XenForo_Model_Deferred->_runInternal(Array, NULL, '', false)
#8 /home/www.xxx.net/public_html/deferred.php(23): XenForo_Model_Deferred->run(false)
#9 {main}
Request State
array(3) {
  ["url"] => string(34) "http://www.xxx.net/deferred.php"
  ["_GET"] => array(0) {
  }
  ["_POST"] => array(3) {
    ["_xfRequestUri"] => string(45) "/threads/csi-final-episode-sniffer-bees.6886/"
    ["_xfNoRedirect"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
  }
}

Any assistance gratefully received.
 
Is it possible to move everything in a forum at once?
Because I set the values to 0 and nothing's moved to the new forum.

I want to clean all my forums because the site's been offline since march and I want to start fresh, with everything else in the archive.
 
Last edited:
I'd like to see a universal option to apply a rule to the entire site, rather than having to go through each and every forum to apply. I'm an Admin on a site with over 400 nodes and subnodes and the thought of setting this for each node does not fill me with warm fuzzies.

I agree 100%. I would rather set rules that applied to the whole forum or multiple forum rooms. Or perhaps set a default rule that can be overridden on a forum by forum basis. Having to set up rules for every single forum is a little bit of a pain.

Though kudos to the add-on developer. Great solution.
 
Just installed this on a 1.5.7 install, and I'm not seeing the options to set the archiving rules when editing a node in the ACP.
 
This works great with XF 1.5.8. I just tried it - archived 19 755 threads (classifieds forum, where we just let old closed threads sit....but no more)

I had to run the cronjob quite a few times though. It goes through around 200 threads for each run :) It runs every night now though, and transfers around 20 threads/night.
 
Last edited:
Can you make it so it will only move threads that have a certain prefix. (Ex. only threads with accepted / denied but ignore ones w/o a prefix)
 
Top Bottom