Changeset 3300515
- Timestamp:
- 05/26/2025 08:26:59 AM (10 months ago)
- Location:
- captcha-eu
- Files:
-
- 4 added
- 4 deleted
- 22 edited
- 1 copied
-
tags/v1.0.57 (copied) (copied from captcha-eu/trunk)
-
tags/v1.0.57/assets/js/partials/wpforms.js (modified) (2 diffs)
-
tags/v1.0.57/readme.txt (modified) (2 diffs)
-
tags/v1.0.57/vendor/autoload.php (modified) (1 diff)
-
tags/v1.0.57/vendor/composer/autoload_real.php (modified) (2 diffs)
-
tags/v1.0.57/vendor/composer/autoload_static.php (modified) (2 diffs)
-
tags/v1.0.57/vendor/composer/installers/.git/index (modified) (previous)
-
tags/v1.0.57/vendor/composer/installers/.git/logs/HEAD (modified) (1 diff)
-
tags/v1.0.57/vendor/composer/installers/.git/logs/refs/heads/main (modified) (1 diff)
-
tags/v1.0.57/vendor/composer/installers/.git/logs/refs/remotes/origin/HEAD (modified) (1 diff)
-
tags/v1.0.57/vendor/composer/installers/.git/objects/info/packs (modified) (1 diff)
-
tags/v1.0.57/vendor/composer/installers/.git/objects/pack/pack-04c7ba8ae7e276950059dab3ee637313bbfebe28.idx (deleted)
-
tags/v1.0.57/vendor/composer/installers/.git/objects/pack/pack-04c7ba8ae7e276950059dab3ee637313bbfebe28.pack (deleted)
-
tags/v1.0.57/vendor/composer/installers/.git/objects/pack/pack-3fe4cc45a8bb1578d99991de109c373b08e72027.idx (added)
-
tags/v1.0.57/vendor/composer/installers/.git/objects/pack/pack-3fe4cc45a8bb1578d99991de109c373b08e72027.pack (added)
-
tags/v1.0.57/wp-captcha.php (modified) (1 diff)
-
trunk/assets/js/partials/wpforms.js (modified) (2 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/vendor/autoload.php (modified) (1 diff)
-
trunk/vendor/composer/autoload_real.php (modified) (2 diffs)
-
trunk/vendor/composer/autoload_static.php (modified) (2 diffs)
-
trunk/vendor/composer/installers/.git/index (modified) (previous)
-
trunk/vendor/composer/installers/.git/logs/HEAD (modified) (1 diff)
-
trunk/vendor/composer/installers/.git/logs/refs/heads/main (modified) (1 diff)
-
trunk/vendor/composer/installers/.git/logs/refs/remotes/origin/HEAD (modified) (1 diff)
-
trunk/vendor/composer/installers/.git/objects/info/packs (modified) (1 diff)
-
trunk/vendor/composer/installers/.git/objects/pack/pack-04c7ba8ae7e276950059dab3ee637313bbfebe28.idx (deleted)
-
trunk/vendor/composer/installers/.git/objects/pack/pack-04c7ba8ae7e276950059dab3ee637313bbfebe28.pack (deleted)
-
trunk/vendor/composer/installers/.git/objects/pack/pack-3fe4cc45a8bb1578d99991de109c373b08e72027.idx (added)
-
trunk/vendor/composer/installers/.git/objects/pack/pack-3fe4cc45a8bb1578d99991de109c373b08e72027.pack (added)
-
trunk/wp-captcha.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
captcha-eu/tags/v1.0.57/assets/js/partials/wpforms.js
r2906129 r3300515 3 3 var $forms = jQuery('.wpforms-form'); 4 4 5 // Intercept Form, w/o auto submit handler5 // Intercept Form, but only on final submission 6 6 $forms.each(function() { 7 7 var $form = jQuery(this); 8 var $btn = $form.find(':submit'); 8 // Target submit buttons more specifically, excluding page navigation buttons 9 var $submitBtn = $form.find('input[type="submit"], button[type="submit"]:not(.wpforms-page-button), .wpforms-submit'); 9 10 10 $ btn.click(function(e) {11 $submitBtn.click(function(e) { 11 12 var $btn = jQuery(this); 13 14 // Check if this is a multistep form and we're not on the last page 15 if (isMultistepForm($form) && !isLastPage($form, $btn)) { 16 // Let it proceed normally for "Next" buttons 17 return true; 18 } 19 20 // This is either a single-page form or the final submit on a multistep form 12 21 e.preventDefault(); 13 22 $btn.attr('disabled', true); … … 26 35 }); 27 36 }); 37 38 function isMultistepForm($form) { 39 return $form.find('.wpforms-page-break').length > 0 || 40 $form.hasClass('wpforms-form-pages') || 41 $form.find('.wpforms-page-prev, .wpforms-page-next').length > 0; 42 } 43 44 function isLastPage($form, $button) { 45 // If this is a page navigation button (Next/Previous), it's not the final submit 46 if ($button.hasClass('wpforms-page-button') || 47 $button.hasClass('wpforms-page-next') || 48 $button.hasClass('wpforms-page-prev')) { 49 return false; 50 } 51 52 // Check if this button has the wpforms[submit] name attribute (final submit button) 53 if ($button.attr('name') === 'wpforms[submit]') { 54 return true; 55 } 56 57 // Also check if it has the wpforms-submit class (final submit button) 58 if ($button.hasClass('wpforms-submit')) { 59 return true; 60 } 61 62 return false; 63 } -
captcha-eu/tags/v1.0.57/readme.txt
r3293554 r3300515 5 5 Tested up to: 6.7 6 6 Requires PHP: 7.0 7 Stable tag: 1.0.5 67 Stable tag: 1.0.57 8 8 License: GPL 9 9 License URI: https://opensource.org/license/gpl/ … … 61 61 62 62 == Changelog == 63 = v1.0.57 = 64 fix wpforms multipage forms only triggering one captcha at the final page 63 65 = v1.0.56 = 64 66 fix ajax security isse with potential SFFR -
captcha-eu/tags/v1.0.57/vendor/autoload.php
r3293554 r3300515 23 23 require_once __DIR__ . '/composer/autoload_real.php'; 24 24 25 return ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e99::getLoader();25 return ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d::getLoader(); -
captcha-eu/tags/v1.0.57/vendor/composer/autoload_real.php
r3293554 r3300515 3 3 // autoload_real.php @generated by Composer 4 4 5 class ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e995 class ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d 6 6 { 7 7 private static $loader; … … 25 25 require __DIR__ . '/platform_check.php'; 26 26 27 spl_autoload_register(array('ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e99', 'loadClassLoader'), true, true);27 spl_autoload_register(array('ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d', 'loadClassLoader'), true, true); 28 28 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); 29 spl_autoload_unregister(array('ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e99', 'loadClassLoader'));29 spl_autoload_unregister(array('ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d', 'loadClassLoader')); 30 30 31 31 require __DIR__ . '/autoload_static.php'; 32 call_user_func(\Composer\Autoload\ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::getInitializer($loader));32 call_user_func(\Composer\Autoload\ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::getInitializer($loader)); 33 33 34 34 $loader->register(true); -
captcha-eu/tags/v1.0.57/vendor/composer/autoload_static.php
r3293554 r3300515 5 5 namespace Composer\Autoload; 6 6 7 class ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e997 class ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d 8 8 { 9 9 public static $prefixLengthsPsr4 = array ( … … 34 34 { 35 35 return \Closure::bind(function () use ($loader) { 36 $loader->prefixLengthsPsr4 = ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::$prefixLengthsPsr4;37 $loader->prefixDirsPsr4 = ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::$prefixDirsPsr4;38 $loader->classMap = ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::$classMap;36 $loader->prefixLengthsPsr4 = ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::$prefixLengthsPsr4; 37 $loader->prefixDirsPsr4 = ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::$prefixDirsPsr4; 38 $loader->classMap = ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::$classMap; 39 39 40 40 }, null, ClassLoader::class); -
captcha-eu/tags/v1.0.57/vendor/composer/installers/.git/logs/HEAD
r3293554 r3300515 1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/2 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 d20a64ed3c94748397ff5973488761b22f6d3f19 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 checkout: moving from main to v1.12.01 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/ 2 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 d20a64ed3c94748397ff5973488761b22f6d3f19 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 checkout: moving from main to v1.12.0 -
captcha-eu/tags/v1.0.57/vendor/composer/installers/.git/logs/refs/heads/main
r3293554 r3300515 1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/ -
captcha-eu/tags/v1.0.57/vendor/composer/installers/.git/logs/refs/remotes/origin/HEAD
r3293554 r3300515 1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/ -
captcha-eu/tags/v1.0.57/vendor/composer/installers/.git/objects/info/packs
r3293554 r3300515 1 P pack- 04c7ba8ae7e276950059dab3ee637313bbfebe28.pack1 P pack-3fe4cc45a8bb1578d99991de109c373b08e72027.pack 2 2 -
captcha-eu/tags/v1.0.57/wp-captcha.php
r3293554 r3300515 4 4 * Description: Captcha.eu provides a GDPR compliant protection against bots and spammers. 5 5 * Plugin URI: https://www.captcha.eu 6 * Version: 1.0.5 66 * Version: 1.0.57 7 7 * Author: captchaeu 8 8 * Author URI: https://profiles.wordpress.org/captchaeu/ -
captcha-eu/trunk/assets/js/partials/wpforms.js
r2906129 r3300515 3 3 var $forms = jQuery('.wpforms-form'); 4 4 5 // Intercept Form, w/o auto submit handler5 // Intercept Form, but only on final submission 6 6 $forms.each(function() { 7 7 var $form = jQuery(this); 8 var $btn = $form.find(':submit'); 8 // Target submit buttons more specifically, excluding page navigation buttons 9 var $submitBtn = $form.find('input[type="submit"], button[type="submit"]:not(.wpforms-page-button), .wpforms-submit'); 9 10 10 $ btn.click(function(e) {11 $submitBtn.click(function(e) { 11 12 var $btn = jQuery(this); 13 14 // Check if this is a multistep form and we're not on the last page 15 if (isMultistepForm($form) && !isLastPage($form, $btn)) { 16 // Let it proceed normally for "Next" buttons 17 return true; 18 } 19 20 // This is either a single-page form or the final submit on a multistep form 12 21 e.preventDefault(); 13 22 $btn.attr('disabled', true); … … 26 35 }); 27 36 }); 37 38 function isMultistepForm($form) { 39 return $form.find('.wpforms-page-break').length > 0 || 40 $form.hasClass('wpforms-form-pages') || 41 $form.find('.wpforms-page-prev, .wpforms-page-next').length > 0; 42 } 43 44 function isLastPage($form, $button) { 45 // If this is a page navigation button (Next/Previous), it's not the final submit 46 if ($button.hasClass('wpforms-page-button') || 47 $button.hasClass('wpforms-page-next') || 48 $button.hasClass('wpforms-page-prev')) { 49 return false; 50 } 51 52 // Check if this button has the wpforms[submit] name attribute (final submit button) 53 if ($button.attr('name') === 'wpforms[submit]') { 54 return true; 55 } 56 57 // Also check if it has the wpforms-submit class (final submit button) 58 if ($button.hasClass('wpforms-submit')) { 59 return true; 60 } 61 62 return false; 63 } -
captcha-eu/trunk/readme.txt
r3293554 r3300515 5 5 Tested up to: 6.7 6 6 Requires PHP: 7.0 7 Stable tag: 1.0.5 67 Stable tag: 1.0.57 8 8 License: GPL 9 9 License URI: https://opensource.org/license/gpl/ … … 61 61 62 62 == Changelog == 63 = v1.0.57 = 64 fix wpforms multipage forms only triggering one captcha at the final page 63 65 = v1.0.56 = 64 66 fix ajax security isse with potential SFFR -
captcha-eu/trunk/vendor/autoload.php
r3293554 r3300515 23 23 require_once __DIR__ . '/composer/autoload_real.php'; 24 24 25 return ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e99::getLoader();25 return ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d::getLoader(); -
captcha-eu/trunk/vendor/composer/autoload_real.php
r3293554 r3300515 3 3 // autoload_real.php @generated by Composer 4 4 5 class ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e995 class ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d 6 6 { 7 7 private static $loader; … … 25 25 require __DIR__ . '/platform_check.php'; 26 26 27 spl_autoload_register(array('ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e99', 'loadClassLoader'), true, true);27 spl_autoload_register(array('ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d', 'loadClassLoader'), true, true); 28 28 self::$loader = $loader = new \Composer\Autoload\ClassLoader(\dirname(__DIR__)); 29 spl_autoload_unregister(array('ComposerAutoloaderInit 502ef7fd5134d4d1dc63a8b7c8727e99', 'loadClassLoader'));29 spl_autoload_unregister(array('ComposerAutoloaderInit2ed25d6f7b4372e0a4c780924fa9141d', 'loadClassLoader')); 30 30 31 31 require __DIR__ . '/autoload_static.php'; 32 call_user_func(\Composer\Autoload\ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::getInitializer($loader));32 call_user_func(\Composer\Autoload\ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::getInitializer($loader)); 33 33 34 34 $loader->register(true); -
captcha-eu/trunk/vendor/composer/autoload_static.php
r3293554 r3300515 5 5 namespace Composer\Autoload; 6 6 7 class ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e997 class ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d 8 8 { 9 9 public static $prefixLengthsPsr4 = array ( … … 34 34 { 35 35 return \Closure::bind(function () use ($loader) { 36 $loader->prefixLengthsPsr4 = ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::$prefixLengthsPsr4;37 $loader->prefixDirsPsr4 = ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::$prefixDirsPsr4;38 $loader->classMap = ComposerStaticInit 502ef7fd5134d4d1dc63a8b7c8727e99::$classMap;36 $loader->prefixLengthsPsr4 = ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::$prefixLengthsPsr4; 37 $loader->prefixDirsPsr4 = ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::$prefixDirsPsr4; 38 $loader->classMap = ComposerStaticInit2ed25d6f7b4372e0a4c780924fa9141d::$classMap; 39 39 40 40 }, null, ClassLoader::class); -
captcha-eu/trunk/vendor/composer/installers/.git/logs/HEAD
r3293554 r3300515 1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/2 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 d20a64ed3c94748397ff5973488761b22f6d3f19 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 checkout: moving from main to v1.12.01 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/ 2 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 d20a64ed3c94748397ff5973488761b22f6d3f19 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 checkout: moving from main to v1.12.0 -
captcha-eu/trunk/vendor/composer/installers/.git/logs/refs/heads/main
r3293554 r3300515 1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/ -
captcha-eu/trunk/vendor/composer/installers/.git/logs/refs/remotes/origin/HEAD
r3293554 r3300515 1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 174 7258660+0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/1 0000000000000000000000000000000000000000 5b390889ecbb17bfa69ed5a030fa2e6075a19ba0 Erick Hitter (GitLab CI) <git-contrib+ci@ethitter.com> 1748247998 +0000 clone: from /root/.composer/cache/vcs/https---github.com-composer-installers.git/ -
captcha-eu/trunk/vendor/composer/installers/.git/objects/info/packs
r3293554 r3300515 1 P pack- 04c7ba8ae7e276950059dab3ee637313bbfebe28.pack1 P pack-3fe4cc45a8bb1578d99991de109c373b08e72027.pack 2 2 -
captcha-eu/trunk/wp-captcha.php
r3293554 r3300515 4 4 * Description: Captcha.eu provides a GDPR compliant protection against bots and spammers. 5 5 * Plugin URI: https://www.captcha.eu 6 * Version: 1.0.5 66 * Version: 1.0.57 7 7 * Author: captchaeu 8 8 * Author URI: https://profiles.wordpress.org/captchaeu/
Note: See TracChangeset
for help on using the changeset viewer.