A self-hosted, customizable, easy-to-implement and user-friendly captcha for PHP.
This release removes the request timestamp check due to it being unreliable when either the browser or server clock is slightly out of sync.
This release addresses a bug where an exception would be thrown when validating a completed challenge while having the Token option configured to be disabled. Even though the option was disabled and no token was generated or sent to the server, an attempt would still be made to validate it, resulting in an error.
This release addresses a bug related to reading the width of the challenge image. In some cases, the challenge image width returns a floating number. This should be an integer, so the number is now always being rounded to an integer.
It's finally here, IconCaptcha 4! 🎉
This new major version of IconCaptcha introduces significant enhancements to the architecture and feature set, and offers greater flexibility and customization, alongside improved security. IconCaptcha can now also be installed via Composer, allowing for easier integration into your application.
For a full list of commits and changes, please refer to the full commit changelog.
.iconcaptcha-widget
.legacy-light
and legacy-dark
themes.The previous icon set has been replaced with a new selection of 250 icons created by BlendIcons.
Please note that this update is exclusively about icon replacements and does not include any code changes. Therefore, there's no need to update other source or asset files.
To update your IconCaptcha implementation with the new icon set, follow these steps:
/icons
folder with the one located in /assets/icons
of the repository.The original icon replacement commit happened in v3.1.3 of the widget package.
Added the 'available icons count' as a config option, instead of having the amount hard-coded as a constant.
Fixed nested default options not properly merging with custom options.
Using __DIR__
magic constant instead of dirname(__FILE__)
for the assets path.
Converted all default icons to using True Color.
imagerotate
function, which sometimes breaks on specific environments or versions. Using imagepalettetotruecolor
prior to rotating the icons seems to solve this issue, as pointed out in the pull request. As it's still being decided if imagepalettetotruecolor should be used, this is a quick fix for new installations using only the default icons.Updated the widget assets to 3.1.1
Fixed bug which sometimes broke challenge generation on PHP 8.1
Sometimes on PHP 8.1, the challenge image would not generate and instead show a broken image. This bug was caused by a deprecation warning, which is thrown when floats are implicitly converted to integers (deprecated: Implicit conversion from float to int loses precision). It only occurred when generating challenges with uneven icon amounts.
Other:
Updated to IconCaptcha front-end package 3.1.0
Version 3.1.0 of the IconCaptcha front-end package version 3.1.0 added the functionality to reset specific captcha instance, or every captcha instance present on the page as discussed in issue https://github.com/fabianwennink/IconCaptcha-Plugin-jQuery-PHP/issues/11.
Other:
Updated to IconCaptcha front-end package 3.0.1
Version 3.0.1 of the IconCaptcha front-end package version 3.0.1 fixed the following issues: https://github.com/fabianwennink/IconCaptcha-Plugin-jQuery-PHP/issues/7 & https://github.com/fabianwennink/IconCaptcha-Plugin-jQuery-PHP/issues/9.
Other:
In version 3 of IconCaptcha, the whole plugin got an overhaul - both client-side and server-side. With better security features, more customizations/options, new themes, no more jQuery dependency and 180 icons, version 3 is the biggest change to IconCaptcha yet.
Uses assets from the IconCaptcha front-end package version 3.0.0.