Menu dokumentacji
JavaScript API
SDK JavaScript CookieHug: obiekt CookieHug, właściwości zgody i stanu, odczyt zgody oraz metody (show, hide, renew, withdraw, submit…).
Referencja JavaScript SDK
CookieHug udostępnia globalny obiekt window.CookieHug, który zapewnia dostęp do stanu zgód, metod, zdarzeń i callbacków.
CookieHug.consent
| Właściwość | Typ | Opis |
|---|---|---|
consent.necessary | boolean | Zawsze true — niezbędne cookies nie mogą być odrzucone |
consent.preferences | boolean | Czy użytkownik zaakceptował cookies preferencyjne |
consent.statistics | boolean | Czy użytkownik zaakceptował cookies statystyczne |
consent.marketing | boolean | Czy użytkownik zaakceptował cookies marketingowe |
consent.method | string | null | "explicit" jeśli użytkownik dokonał wyboru, null jeśli jeszcze nie odpowiedział |
Właściwości stanu
| Właściwość | Typ | Opis |
|---|---|---|
CookieHug.consented | boolean | true jeśli użytkownik zaakceptował jakiekolwiek opcjonalne cookies |
CookieHug.declined | boolean | true jeśli użytkownik odrzucił wszystkie opcjonalne cookies |
CookieHug.hasResponse | boolean | true jeśli użytkownik odpowiedział (zaakceptował lub odrzucił) |
CookieHug.doNotTrack | boolean | true jeśli ustawienie Do Not Track przeglądarki jest włączone |
CookieHug.regulations
Rozwiązywane w dwóch krokach: (1) fallback timezone uruchamiany od razu po załadowaniu skryptu; gdy wykryta zostanie europejska strefa czasowa, regulations.region jest też ustawiane na pseudo-region "EEA", dzięki czemu wywołania gtag('consent','default',{region}) mają poprawny zakres. (2) Resolver serwera GET /api/runtime/regulations (Cloudflare CF-IPCountry) działa równolegle z ładowaniem konfiguracji — gdy zwróci region, jest autorytatywny i w pełni nadpisuje fallback timezone (włącznie z flagami *Applies), co koryguje przypadki VPN / błędnej strefy czasowej.
| Właściwość | Typ | Opis |
|---|---|---|
regulations.gdprApplies | boolean | true jeśli odwiedzający jest w Europie (region RODO) |
regulations.ccpaApplies | boolean | true jeśli odwiedzający jest w USA (region CCPA) |
regulations.lgpdApplies | boolean | true jeśli odwiedzający jest w Brazylii (region LGPD) |
Przykład: Odczyt stanu zgód
// Sprawdź, czy użytkownik odpowiedział
if (window.CookieHug.hasResponse) {
console.log('Użytkownik dokonał wyboru zgody');
if (window.CookieHug.consent.statistics) {
// Można bezpiecznie zainicjować analitykę
initAnalytics();
}
if (window.CookieHug.consent.marketing) {
// Można bezpiecznie załadować piksele marketingowe
loadMarketingPixels();
}
}
// Sprawdź regulacje
if (window.CookieHug.regulations.gdprApplies) {
console.log('RODO obowiązuje tego odwiedzającego');
}Metody
CookieHug.show()
Wymuś wyświetlenie banera zgody.
CookieHug.show();CookieHug.hide()
Ukryj baner zgody programowo.
CookieHug.hide();CookieHug.renew()
Wyświetl baner zgody, aby użytkownik mógł zaktualizować swoje preferencje. Użyj do linku "Ustawienia cookies".
// Przykład: własny link ustawień cookies
document.getElementById('cookie-settings')
.addEventListener('click', function() {
CookieHug.renew();
});CookieHug.withdraw()
Wycofaj zgodę użytkownika. Czyści wszystkie dane zgody (localStorage i cookie HTTP), resetuje Google Consent Mode do denied, wysyła event consent_update do dataLayer, resetuje stan ScriptBlocker i automatycznie przeładowuje stronę, aby upewnić się, że wszystkie skrypty respektują nowy stan odmowy.
CookieHug.withdraw();CookieHug.submitCustomConsent(preferences, statistics, marketing)
Wyślij niestandardowy wybór zgody programowo.
| Parametr | Typ | Opis |
|---|---|---|
preferences | boolean | Przyznaj lub odmów cookies preferencyjnych |
statistics | boolean | Przyznaj lub odmów cookies statystycznych |
marketing | boolean | Przyznaj lub odmów cookies marketingowych |
// Zaakceptuj tylko statystyki, odmów marketingu i preferencji
CookieHug.submitCustomConsent(false, true, false);
// Zaakceptuj wszystko
CookieHug.submitCustomConsent(true, true, true);
// Odmów wszystkich opcjonalnych
CookieHug.submitCustomConsent(false, false, false);CookieHug.getScript(url, async, callback)
Dynamicznie załaduj zewnętrzny skrypt. Przydatne do ładowania skryptów po uzyskaniu zgody.
| Parametr | Typ | Opis |
|---|---|---|
url | string | URL skryptu do załadowania |
async | boolean | Czy ładować asynchronicznie |
callback | function | Wywoływane po załadowaniu skryptu |
if (CookieHug.consent.statistics) {
CookieHug.getScript(
'https://www.google-analytics.com/analytics.js',
true,
function() {
console.log('Analityka załadowana');
}
);
}CookieHug.runScripts()
Ewaluuj i wykonaj wszystkie tagi <script> oznaczone data-cookiehug-consent, które pasują do aktualnego stanu zgód. Wywoływane automatycznie po udzieleniu zgody, ale można wywołać ręcznie w SPA po załadowaniu dynamicznej zawartości.
CookieHug.runScripts();