Link Tools

by Laird 5 Stars 679 Downloads

Keeps track of links (URLs) in posts and provides nine link-related features.

Change Log for Link Tools

Version 1.5.0 stable Build #10

  • New major features:
    • Two new per-usergroup and per-forum settings to have posts moderated when a link is (1) edited in or (2) present on initial posting. These are accessible from the usual places in the ACP for settings of this type, rather than from the plugin's settings.
    • Anti-link spam features, namely:
      • New plugin settings to stipulate actions to take (purge spammer, reject post, or moderate post; how to classify other links in the member's post(s)) when a link classified as spam is posted or edited into a post and other criteria are met (usergroup, post count, account age).
      • A link listing via which the spam classification of links can be set (as "Unclassified", "Potential spam", "Not spam", or "Spam"). Links can also be filtered by both spam classification and partial match.
      • Support via the link listing for importing multiple links and bulk classifying them, with the expectation that "Spam" will be the commonest import classification.
      • Support via a checkbox when purging a spammer manually, and when deleting threads/posts in the moderation queue, for auto-classifying links in the spammer's post(s) as spam.
      • A new creation date associated with links so as to sort the link listing by most recent links.
      • An auto-population of the creation date for preexisting links based on the earliest post in which they occur where they do occur in any post, accessible via the plugin's entry on the ACP's plugin page: if any links meeting this criteria exist, a message and link are provided to run the auto-population; otherwise, no message and link are provided and the plugin's silence indicates that creation dates have been set for all links for which it is possible.
      • A red header messages is shown to admins when any "Potential spam" links exist, which links to the link listing via which these links can be definitively classified as "Spam" or "Not spam". This is intended for the scenario in which according to the plugin's settings links are auto-classified as "Potential spam" when taking action based on those same settings.
  • New minor features:
    • Adds missing support for link searches in in-thread searches.
    • Admin logging added: for when updating link previewers and when updating link limits.
  • Greatly improved PHP 8 support: many fixes for uninitialised variables and missing array entries.
  • Improved handling of settings, especially removing settings on uninstall.
  • Improved cURL testing script: it now checks for the presence of all relevant cURL functions rather than just one.
  • Minor templating improvement: moved the <br /> prior to $disablelinkpreviews into the linktools_cbxdisablelinkpreview template itself.
  • Minor language file improvement: moved the constant out of it.
  • Various minor improvements and fixes.

Version 1.4.1 stable Build #9

  • Bugfix: the forums of link limit rules weren't being respected; limits were being applied to all forums regardless of those selected.
  • Enhancement: improved the respecting of link limits when editing posts.

Version 1.4.0 stable Build #8

  • Adds link limiting support. This allows for limiting of the number of links that may be posted by members of a given set of usergroups in a given set of forums over a given (rolling) period.

Version 1.3.4 stable Build #7

  • Bugfix: avoids a database error on installation when STRICT_TRANS_TABLES is present in the database's sql_mode setting.
  • Bugfix: the duplicate link warner's extended warning box showed the same value for url2 in the "url as url2" message for a post even when "url" occurred multiple times in the post as different "url2"s.
  • Bugfix: the invalidation ACP tool wasn't ignoring missing previewers.
  • Improves support for PHP 8 and fixes various related issues.
  • Adds missing Peekers to the plugin's settings (hides settings dependent on the value of other settings).
  • Improves the code and comments in a variety of ways mostly invisible to end-users.

Version 1.3.2 stable Build #6

  • Adds two new settings, to enable link previews per forum, and to enable them for first post, replies, or both (all posts).
  • Improves link preview compatibility with other plugins which call the parser (with thanks to Omar G. for identifying the compatibility issue).
  • Adds support for configuring extra cURL options.
  • Adds global $mybb and $post variables for use in (customised) preview templates.
  • Improves detection of Twitter status URLs in the Previewer.
  • Improves the language and output of the cURL functionality checker script.
  • Fixes a MyBBFancyBox compatibility issue.

Version 1.3.0 stable Build #5

  • Show each preview immediately after the paragraph in which it occurs, rather than showing all previews at the end of the post.
  • New setting: exclude previews for [url] tags enclosing [img] tags (for when the image is preview enough).
  • New styling: prevent title and summary text from wrapping.
Thank you to @vk_knight for your testing and feedback.

Version 1.2.0 stable Build #4

  • Support different themes by caching preview data, not the preview itself.
  • Bug fix: disabling previewers had no effect.
  • Bug fix: set preview to empty on unresolved previewer.
  • Bug fix: previewers weren't being auto-enabled on install/upgrade.
  • Bug fix: add the missing "Disable link previews" checkbox to new thread / reply pages.
  • Bug fix: only show the "Regenerate preview" links at the bottom of posts for links for which a preview is valid.
  • Bug fix: add a missing hook for post merges.
  • Bug fix: remove extraneous `';' from "new thread" output (thanks to srjrol for the bug report).
  • Improve handling on curl error.
  • Document the possibility of debugging via the supplied lkt-curl-functionality-checker.php script.

N.B. Your inc/plugins/linktools/link-helpers-dist and inc/plugins/linktools/link-helpers-3rd-party directories, if any, can safely be removed. They have been superseded, respectively, by the inc/plugins/linktools/link-previewers-dist and inc/plugins/linktools/link-previewers-3rd-party directories.

N.B.2. You should rebuild link previews by running the Recount & Rebuild task "Rebuild Link Previews for Link Tools" given that preview data rather than previews are now cached (see the first entry in the list above).

Version 1.1.0 dev Build #3

  • Adds link preview functionality

Version 1.0.1 stable Build #2

  • Fixes a bug in which sometimes URLs were shown twice in warnings.

Version 1.0.0 stable Build #1

The first build has no changes.