Grant full consent fallback for non-TCF visitors in bridge mode (v1.3.3)

Visitors outside EEA/UK/CH (e.g. Americas) have no __tcfapi injected by
Google Funding Choices, causing the TCF bridge poll to time out and leaving
them permanently at the default denied state. After the 10s timeout, grant
full consent — GDPR opt-in doesn't apply to these visitors and CCPA is
an opt-out model, so granted is the correct default.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-07-09 08:14:42 +01:00
parent cde149467a
commit c21b42f6f3
2 changed files with 8 additions and 2 deletions

View File

@@ -3,7 +3,7 @@
* Plugin Name: ATT Consent
* Plugin URI: https://github.com/att-consent/att-consent
* Description: Google Consent Mode v2 cookie consent with session attribution preservation, custom script management, and full gtag.js/GTM support.
* Version: 1.3.2
* Version: 1.3.3
* Requires at least: 6.0
* Requires PHP: 7.4
* Author: ATT Consent
@@ -18,7 +18,7 @@ if ( ! defined( 'ABSPATH' ) ) {
exit;
}
define( 'ATT_CC_VERSION', '1.3.2' );
define( 'ATT_CC_VERSION', '1.3.3' );
define( 'ATT_CC_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
define( 'ATT_CC_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
define( 'ATT_CC_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );

View File

@@ -91,6 +91,12 @@
}
elapsed += POLL_INTERVAL;
if (elapsed >= MAX_WAIT_MS) {
// __tcfapi never appeared: visitor is outside TCF jurisdiction (e.g. Americas)
// or the CMP script was blocked. GDPR opt-in doesn't apply; grant full consent
// so these visitors aren't silently tracked as denied.
try {
window.AttConsent.update({ functional: true, analytics: true, marketing: true });
} catch (e) {}
return;
}
setTimeout(poll, POLL_INTERVAL);