AdBlock Tracker & Usergroup Swap

AdBlock Tracker & Usergroup Swap v3.0.0 Release Candidate 4

No permission to buy ($45.00)
  • OPTIMIZATION: AdBlock Tracker Log now remembers display settings and persists them between sessions
  • ADD: AdBlock Tracker Log => add historical adblocking %
  • FIX: ClearLogUsers() and ClearLog() runs a Job that to delete all entities and restore user accounts (remove AdBlock group) (no orphaned users)
  • FIX: AdBlock Tracker Log => "Results" dropdown works and is remembered
  • FIX: AdBlock Tracker Log => filtering tools would disappear if no results found
  • FIX: Uninstall runs job to delete entities safely prior to dropping database tables

Screenshot 2025-07-18 at 1.23.01 AM.webp
  • OPTIMIZATION: "Swaps" is now linear, enujerating each time the [AdBlock] usergroup is applied (1, 2, 3 etc)
  • OPTIMIZATION: "Consecutive Detections Required to Assign Role" now ensures detections must be consecutive prior to applying AdBlock role
  • OPTIMIZATION: Swap multiplier is now more intuitive
  • FIX: Add data-cache="false" so the Admin overlay for stats is never stale
  • FIX: Add punish_date so we can track "clear sequences" and allow for small numbers of accidental adblock's in between
  • FIX: "Punish" renamed to "Reset Clear Sequence if X Detections Are Found Mid-Sequence"
  • FIX: Upgrade will automatically set some defaults so they obey updated validators (please revisit your settings for "swap" and "maintenance")
  • Hot Fix: Call the parent actionUpdate() first to let core handling proceed
  • Remove redundant $this->assertPostOnly() from actionUpdate()
These has been thoroughly tested and running live for over a week without issue. It's RC1 but should be fine for all users. Please do report any issues found, if any.

New Features:

  • Cache JavaScript TTL (minutes) option is now functional (default: 15); provides a large performance boost
  • Ajax routes now use XF.config for JavaScript caching; supports full-page cache for users and guests
  • New option: Enable Mobile + Browser Detection Cache (enabled by default)
  • Detection scripts now dynamically remove disabled methods from the JavaScript payload
  • Replaces old "single detection resets non-detects" option with X detections reset non-detects (default: 2)
  • Monthly cron to automatically [Reset and Delete] users with ≥ X usergroup swaps
  • New "Logging options" tab to configure what is recorded in the user change log
  • 1-hour cache added to reduce load from repeated user-agent requests
Optimizations:
  • Ajax routes overhauled to prevent tampering
  • Number of bait classes now randomized
  • Detection elements adjusted to avoid skipping from tools like AdGuard that ignore off-screen bait
  • User alerts have been restyled for better clarity
  • Displays revised with clearer instructions and descriptions
  • AdBlock Tracker log layout simplified for better readability
Fixes:
  • Validation added to ensure at least one detection method is enabled when saving options
  • JavaScript cache is busted on options save so settings apply immediately
  • Negative values no longer allowed in Flood check on clear status
  • Number boxes now use proper step values (e.g. 5 or 15)
  • Obsolete table xf_wutime_adblock_tracker_javascript deleted
  • Fixed bug where $tracker->save() was called after $tracker->delete()
  • EasyList’s full class selectors now correctly ignored during bait generation to prevent false clears
  • UglifyJS() added to build.json to properly generate min.js and replace outdated XF compiler
Install/Upgrade Behavior
  • cache_js TTL updated to 15 minutes on upgrade for all users
  • Drops xf_wutime_adblock_tracker_javascript table during upgrade
Composer Updates:
  • Crawler Detection updated from v1.3.4 to v1.3.5
  • Minification tool updated from v1.3.73 to v1.3.75

Attachments

  • Screenshot 2025-07-15 at 8.35.07 PM.webp
    Screenshot 2025-07-15 at 8.35.07 PM.webp
    68.4 KB · Views: 10
  • Screenshot 2025-07-15 at 8.35.28 PM.webp
    Screenshot 2025-07-15 at 8.35.28 PM.webp
    27.5 KB · Views: 9
  • Screenshot 2025-07-15 at 8.35.38 PM.webp
    Screenshot 2025-07-15 at 8.35.38 PM.webp
    21.5 KB · Views: 8
  • Screenshot 2025-07-15 at 8.36.00 PM.webp
    Screenshot 2025-07-15 at 8.36.00 PM.webp
    34.4 KB · Views: 7
  • Screenshot 2025-07-15 at 8.36.25 PM.webp
    Screenshot 2025-07-15 at 8.36.25 PM.webp
    22.4 KB · Views: 7
  • Screenshot 2025-07-15 at 8.37.05 PM.webp
    Screenshot 2025-07-15 at 8.37.05 PM.webp
    31.8 KB · Views: 10
  • Like
Reactions: duderuud
  • UPDATE: Crawler Detection updated from v1.3.4 to v1.3.5
  • UPDATE: Minification updated from v1.3.73 to v1.3.75
  • FIX: For the delete_entities case, removed the $tracker->save() call after $tracker->delete(), as the entity is already deleted and saving is not needed.
  • UPDATE: useFriendlyUrls for Ajax requests if useFriendlyUrls is enabled
  • UPDATE: Tracking detection code base upgraded v4.0 => v5.0
  • FIX: Error loading default EasyList if server connection fails to download from host
  • UPDATE: mobiledetect/mobiledetectlib 3.74.3
  • FIX: Remove addon version custom option value on uninstall()
  • Like
Reactions: Sal Collaziano
  • UPDATE: Refactored primary detection method to remove attack vector
  • UPDATE: Improved detection under Firefox with AdGuard, uBlock, AdBlock Plus
  • UPDATE: Update detection to include newly added variables to obfuscation array
  • UPDATE: Obfuscate reject and resolve promise methods
  • UPDATE: Obfuscate XHR and script requests
  • UPDATE: Precompile order of obfuscation array elements to be most performant prior to execution
  • UPDATE: Tracking detection code base upgraded v3.0 => v4.0
  • Like
Reactions: Stuart Wright
  • UPDATE: Detected entity to always remove the adblock group, regardless of status
    • This ensures the adblock group is fully removed (from both tracked changes and permanent groups) and the cache is rebuilt, covering all bases.
  • UPDATE: Extend the User Upgrade Service on upgrade()
    • Hooks into the upgrade process directly, ensuring adblock status is cleared when the user’s groups are updated.
    • Also manually removes the adblock group from secondary_group_ids if needed.
  • UPDATE: Crawler Detection updated to v1.3.4
  • ADD: Minified admin.min.js in _build _files now that the auto service is permanently offline
  • UPDATE: Crawler Detection updated from v1.3.0 to v1.3.2
  • FIX: Properly fix FA icon sprite rendering for XenForo v2.3.x (backwards compatible with XF 2.2.x)
  • FIX: Template modification adjustment for XenForo 2.3.6
  • FIX: Improper FA icon reference
  • Like
Reactions: Stuart Wright
Back
Top Bottom