Address findings from security audit: wrap inline JSON.parse in
try/catch to prevent consent flow failure on corrupted cookies,
allowlist admin tab parameter, clamp consent_expiry server-side,
escape all server values in admin JS table builder, fix focus trap
listener cleanup, add aria-labelledby and banner focus for screen
readers, skip frontend loading during AJAX.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Custom scripts are now rendered as inert <script type="text/plain"
data-att-cc-category="..."> tags in the page HTML. On consent,
consent-manager.js scans the DOM and activates matching elements.
This replaces the JSON-in-config approach and allows third-party
plugins (e.g. HFCM) to output consent-gated scripts using the
same data attribute convention.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
New checkbox in General settings to conditionally expose window.gtag()
for compatibility with third-party scripts (e.g. HFCM). Defaults to
off, keeping only window.attCCGtag() available.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Anchor the vertical widget at bottom: 150px with transform-origin at
the bottom-right corner so it sits fully visible along the right edge.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Allow visitors to reopen the cookie preferences modal after making
their choice via a configurable floating button (bottom-right or
right-side vertical) or any anchor link with href="#att-cc-preferences".
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Google Consent Mode v2 cookie consent plugin with session attribution
preservation, custom script management, and gtag.js/GTM support.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>