Link Checker for XenForo 2.x by AddonsLab

Link Checker for XenForo 2.x by AddonsLab [Paid] 3.8.0

No permission to buy ($54.99)
Does this addon allow me to, for example, update all URL's that include a http:// tag to https:// ?

Yes, it does. It allows searching URLs by many attributes, including by text in their content, and replace the part found with something else. Here is a screenshot from our demo board showing it in action:

1563262742182.webp

Just make sure to check out the preview underneath and ensure the changes are as you expected.

Thank you!
 
Sure, we have added to our Todo list, will handle as soon as possible.

Thank you!

@AddonsLab Please do you have any chance for adding this functionality? I am getting Server error log from moving thread. I think this add-on conflict with @batpool52! Change Content Owner add-on? Please can you give compatible update for Change Content Owner add-on?

Code:
TypeError: Argument 2 passed to TickTackk\ChangeContentOwner\Listener::inlineModActions() must be an instance of XF\Pub\App, instance of XF\Admin\App given src/addons/TickTackk/ChangeContentOwner/Listener.php:20

Generated by: Nirjonmela Jul 19, 2019 at 11:00 PM

Stack trace

#0 [internal function]: TickTackk\ChangeContentOwner\Listener::inlineModActions(Object(ThemeHouse\Topics\XF\InlineMod\Thread), Object(XF\Admin\App), Array)
#1 src/XF/Extension.php(50): call_user_func_array(Array, Array)
#2 src/XF/App.php(2648): XF\Extension->fire('inline_mod_acti...', Array, 'thread')
#3 src/XF/InlineMod/AbstractHandler.php(33): XF\App->fire('inline_mod_acti...', Array, 'thread')
#4 src/addons/AddonsLab/ContentHandler/Traits/Helper/ModerationTrait.php(404): XF\InlineMod\AbstractHandler->__construct('thread', Object(XF\Admin\App), Object(XF\Http\Request))
#5 src/addons/AddonsLab/ContentHandler/Traits/Helper/ModerationTrait.php(72): AddonsLab\LinkChecker\ContentHandler\PostHandler->getInlineModHandler('thread')
#6 src/addons/AddonsLab/LinkChecker/ContentHandler/PostHandler.php(154): AddonsLab\LinkChecker\ContentHandler\PostHandler->moveThread(Object(SV\ElasticSearchEssentials\XF\Entity\Thread), '96')
#7 src/addons/AddonsLab/LinkChecker/Library/Service/TagReplacementProcessor.php(307): AddonsLab\LinkChecker\ContentHandler\PostHandler->applyReplaceCriteria(Object(AddonsLab\LinkChecker\Library\Replace\ReplaceCriteria))
#8 src/addons/AddonsLab/LinkChecker/Library/Service/JobRunner.php(310): AddonsLab\LinkChecker\Library\Service\TagReplacementProcessor->persistTagReplacementList(Object(AddonsLab\LinkChecker\Library\TagReplacementList))
#9 src/addons/AddonsLab/LinkChecker/Job/BatchUpdate.php(51): AddonsLab\LinkChecker\Library\Service\JobRunner->runBatchUpdateJob(Array)
#10 src/addons/AddonsLab/LinkChecker/Job/AbstractDelayableJob.php(48): AddonsLab\LinkChecker\Job\BatchUpdate->_execute(G)
#11 src/XF/Job/Manager.php(253): AddonsLab\LinkChecker\Job\AbstractDelayableJob->run(G)
#12 src/XF/Job/Manager.php(195): XF\Job\Manager->runJobInternal(Array, G)
#13 src/XF/Job/Manager.php(111): XF\Job\Manager->runJobEntry(Array, G)
#14 src/XF/Admin/Controller/Tools.php(120): XF\Job\Manager->runByIds(Array, 8)
#15 src/XF/Mvc/Dispatcher.php(321): XF\Admin\Controller\Tools->actionRunJob(Object(XF\Mvc\ParameterBag))
#16 src/XF/Mvc/Dispatcher.php(244): XF\Mvc\Dispatcher->dispatchClass('XF:Tools', 'RunJob', Object(XF\Mvc\RouteMatch), Object(NF\Discord\XF\Admin\Controller\Tools), NULL)
#17 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(NF\Discord\XF\Admin\Controller\Tools), NULL)
#18 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#19 src/XF/App.php(2178): XF\Mvc\Dispatcher->run()
#20 src/XF.php(390): XF\App->run()
#21 admin.php(13): XF::runApp('XF\\Admin\\App')
#22 {main}

Request state

array(4) {
  ["url"] => string(24) "/admin.php?tools/run-job"
  ["referrer"] => string(122) "/admin.php?tools/run-job&only_id=22028&_xfRedirect=%2Fadmin.php%3Flinks%2Fbatch-update%26success%3D1"
  ["_GET"] => array(1) {
    ["tools/run-job"] => string(0) ""
  }
  ["_POST"] => array(3) {
    ["_xfRedirect"] => string(61) "/admin.php?links/batch-update&success=1"
    ["_xfToken"] => string(8) "********"
    ["only_ids"] => string(5) "22028"
  }
}
 
Hello!

Unfortunately, we don't have time now for another feature in this add-on as we are preparing a major update for another our add-on but will do so as soon as possible. I hope we can manage it within 2 weeks.

@AddonsLab Please do you have any chance for adding this functionality? I am getting Server error log from moving thread. I think this add-on conflict with @batpool52! Change Content Owner add-on? Please can you give compatible update for Change Content Owner add-on?

The error is not a conflict with another add-on, the other add-on implements its code correctly. However, XenForo requires moderation actions to be carried-on in front-end, but our add-on uses moderation actions from the back-end, which causes the error. For now, I think a quick fix could be editing the file /TickTackk/ChangeContentOwner/Listener.php , find

PHP:
public static function inlineModActions(/** @noinspection PhpUnusedParameterInspection */ InlineModAbstractHandler $abstractHandler, XFApp $app, array &$actions) : void

and replace it with:

PHP:
public static function inlineModActions(/** @noinspection PhpUnusedParameterInspection */ InlineModAbstractHandler $abstractHandler, $app, array &$actions) : void

Again, this is not a bug in the add-on itself, but a limitation enforced by XenForo. We will open a bug-report and see if XenForo developers will consider changing the API and we will proceed with our product's change appropriately.

Thank you!
 
@AddonsLab I have found one more bug, Preview post URL link are not working because wrong URL link? Some link show me, Oops! We ran into some problems. You do not have permission to view this page or perform this action. Does this post deleted? If so then why this URL still showing in Batch Update Links page? So this are not updated automatically from deleted post without Rebuild Links?


ScreenShot01152.png
 
Last edited:
@AddonsLab I have found one more bug, Preview post URL link are not working because wrong URL link? Some link show me, Oops! We ran into some problems. You do not have permission to view this page or perform this action. Does this post deleted? If so then why this URL still showing in Batch Update Links page? So this are not updated automatically from deleted post without Rebuild Links?


View attachment 206881

It should indeed delete from the index when the post is deleted. We will double-check it and confirm if there is any issue.

Thank you!
 
It should indeed delete from the index when the post is deleted. We will double-check it and confirm if there is any issue.

Thank you!


I can confirm, Deleted thread/post still showing after completed Rebuild Index Links with Delete the index before rebuilding from Manage Tags page.
 
AddonsLab updated Link Checker for XenForo 2.x by AddonsLab with a new update entry:

Move thread - new option to send an alert to thread starter

In this release, we have implemented an option to send an alert to the starter of the thread when moving the thread to another forum.

The new version is available for all licensed customers at
https://customers.addonslab.com/marketplace.php/my-services/

Please consider posting a review if you are using the add-on and let us and other users know how it works for you.

Thank you!

Read the rest of this update entry...
 
Hello, @Nirjonadda

we have implemented the feature you have requested, please check.

We could not reproduce the issue with indexed posts not being removed from the database when deleting a thread/post. Please open a support ticket to investigate the issue further on your board.

Thank you!
 
@AddonsLab Please can you add option for enable Verifies each post has a valid thread? If option enabled then will find posts which do not have valid thread numbers and orphaned posts from the xf_post are not indexed in Manage Tags. Also can be add one more tool that will find posts which do not have valid thread numbers. It will allow deletion of these orphaned posts from the xf_post and xf_deletion_log tables?

See here: https://xenforo.com/community/threa...e-not-delete-post-record.168364/#post-1368690
 
@Nirjonadda ,

None of the features requested have anything to do with checking links' validity, so we can't add these features. You should fix your database to contain valid threads and posts, link checker will work just fine then.

Thank you!
 
@AddonsLab I am getting Server error log with restart scheduled task.

ScreenShot01181.webp

Code:
TypeError: Argument 2 passed to AddonsLab\LinkChecker\Service\DeferredHelper::registerTask() must be of the type array, string given, called in /home/nadda/public_html/src/addons/AddonsLab/LinkChecker/Admin/Controller/Index.php on line 50 src/addons/AddonsLab/LinkChecker/Service/DeferredHelper.php:59

Generated by: Nirjonmela Aug 19, 2019 at 3:46 AM

Stack trace

#0 src/addons/AddonsLab/LinkChecker/Admin/Controller/Index.php(50): AddonsLab\LinkChecker\Service\DeferredHelper->registerTask('allm_deferred_d...', 'a:5:{s:15:"sear...')
#1 src/XF/Mvc/Dispatcher.php(321): AddonsLab\LinkChecker\Admin\Controller\Index->actionRestartScheduled(Object(XF\Mvc\ParameterBag))
#2 src/XF/Mvc/Dispatcher.php(244): XF\Mvc\Dispatcher->dispatchClass('AddonsLab\\LinkC...', 'RestartSchedule...', Object(XF\Mvc\RouteMatch), Object(AddonsLab\LinkChecker\Admin\Controller\Index), NULL)
#3 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(AddonsLab\LinkChecker\Admin\Controller\Index), NULL)
#4 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#5 src/XF/App.php(2178): XF\Mvc\Dispatcher->run()
#6 src/XF.php(390): XF\App->run()
#7 admin.php(13): XF::runApp('XF\\Admin\\App')
#8 {main}

Request state

array(4) {
  ["url"] => string(209) "/admin.php?links/restart-scheduled&unique_key=allm_deferred_dead_link&_xfRequestUri=%2Fadmin.php%3Flinks%2Frebuild-data&_xfWithData=1&_xfToken=1566164738%2Ce08c690f417d708592331943d0bcd987&_xfResponseType=json"
  ["referrer"] => string(51) "/admin.php?links/rebuild-data"
  ["_GET"] => array(6) {
    ["links/restart-scheduled"] => string(0) ""
    ["unique_key"] => string(23) "allm_deferred_dead_link"
    ["_xfRequestUri"] => string(29) "/admin.php?links/rebuild-data"
    ["_xfWithData"] => string(1) "1"
    ["_xfToken"] => string(43) "1566164738,e08c690f417d708592331943d0bcd987"
    ["_xfResponseType"] => string(4) "json"
  }
  ["_POST"] => array(0) {
  }
}
 
@AddonsLab I am getting Server error log with restart scheduled task.

View attachment 208664

Code:
TypeError: Argument 2 passed to AddonsLab\LinkChecker\Service\DeferredHelper::registerTask() must be of the type array, string given, called in /home/nadda/public_html/src/addons/AddonsLab/LinkChecker/Admin/Controller/Index.php on line 50 src/addons/AddonsLab/LinkChecker/Service/DeferredHelper.php:59

Generated by: Nirjonmela Aug 19, 2019 at 3:46 AM

Stack trace

#0 src/addons/AddonsLab/LinkChecker/Admin/Controller/Index.php(50): AddonsLab\LinkChecker\Service\DeferredHelper->registerTask('allm_deferred_d...', 'a:5:{s:15:"sear...')
#1 src/XF/Mvc/Dispatcher.php(321): AddonsLab\LinkChecker\Admin\Controller\Index->actionRestartScheduled(Object(XF\Mvc\ParameterBag))
#2 src/XF/Mvc/Dispatcher.php(244): XF\Mvc\Dispatcher->dispatchClass('AddonsLab\\LinkC...', 'RestartSchedule...', Object(XF\Mvc\RouteMatch), Object(AddonsLab\LinkChecker\Admin\Controller\Index), NULL)
#3 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(AddonsLab\LinkChecker\Admin\Controller\Index), NULL)
#4 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#5 src/XF/App.php(2178): XF\Mvc\Dispatcher->run()
#6 src/XF.php(390): XF\App->run()
#7 admin.php(13): XF::runApp('XF\\Admin\\App')
#8 {main}

Request state

array(4) {
  ["url"] => string(209) "/admin.php?links/restart-scheduled&unique_key=allm_deferred_dead_link&_xfRequestUri=%2Fadmin.php%3Flinks%2Frebuild-data&_xfWithData=1&_xfToken=1566164738%2Ce08c690f417d708592331943d0bcd987&_xfResponseType=json"
  ["referrer"] => string(51) "/admin.php?links/rebuild-data"
  ["_GET"] => array(6) {
    ["links/restart-scheduled"] => string(0) ""
    ["unique_key"] => string(23) "allm_deferred_dead_link"
    ["_xfRequestUri"] => string(29) "/admin.php?links/rebuild-data"
    ["_xfWithData"] => string(1) "1"
    ["_xfToken"] => string(43) "1566164738,e08c690f417d708592331943d0bcd987"
    ["_xfResponseType"] => string(4) "json"
  }
  ["_POST"] => array(0) {
  }
}

Thank you for the report. We will check and fix the issue asap.

Thank you!
 
Top Bottom