Programmering af Cookiebot

Cookiebot-scriptet indlæser og konstruerer et klientside JavaScript-objekt med navnet 'Cookiebot'. Objektet stiller nedenstående offentlige egenskaber, metoder, hændelser og callback-funktioner til rådighed. Se i vejledningen hvordan du kan implementere Cookiebot-scriptet i din hjemmeside-skabelon.
Egenskaber
Navn Type Standard Beskrivelse
consent.necessary bool true Sand hvis den aktuelle bruger har accepteret nødvendige cookies.
Egenskaben kan ikke ændres.
consent.preferences bool false Sand hvis den aktuelle bruger har accepteret præference-cookies.
Egenskaben kan ikke ændres.
consent.statistics bool false Sand hvis den aktuelle bruger har accepteret statistik-cookies.
Egenskaben kan ikke ændres.
consent.marketing bool false Sand hvis den aktuelle bruger har accepteret marketing-cookies.
Egenskaben kan ikke ændres.
consented bool false Sand, hvis brugeren har accepteret cookies.
Egenskaben kan ikke ændres.
declined bool false Sand, hvis brugeren har afslået brugen af ​​cookies.
Egenskaben kan ikke ændres.
hasResponse bool false Sand, hvis brugeren har svaret på dialog med enten accept eller afslag.
Egenskaben kan ikke ændres.
doNotTrack bool false Sand, hvis brugeren har aktiveret browserens 'Do not track'-indstilling (DNT). Hvis DNT er aktiveret sætter Cookiebot ikke tredjeparts-cookien CookieConsentBulkTicket, som anvendes til massesamtykke.
Egenskaben kan ikke ændres.
Metoder
Navn Parametre Beskrivelse
show Ingen Tvinger cookie-samtykke-dialogen til at blive vist.
hide Ingen Tvinger cookie-samtykke-dialogen til at blive skjult.
renew Ingen Sletter registrerede samtykker i hjemmesiden-brugerens browser og viser samtykke-dialogboksen, så brugeren kan forny eller ændre sit samtykke.
getScript string URL,
bool async,
func callback
Indlæser en JavaScript-fil. URL: Absolut sti til JavaScript-fil.
async (valgfri): Bestemmer om scriptet skal indlæses asynkront.
callback (valgfri): Javascript-funktion, som skal eksekveres, når scriptet er indlæst.
runScripts Ingen Evaluerer alle indlæste script-tags af typen "text/plain" med attributten "data-cookieconsent" og eksekverer disse scripts i overensstemmelse med brugerens samtykke-tilstand. Til brug for websteder, der indlæser indhold dynamisk, f.eks. single page applications. Scripts eksekveres kun én gang, så denne funktion er sikker at kalde flere gange, f.eks hver gang nyt indhold er indlæst.
withdraw Ingen Tilbagekald mit samtykke for denne hjemmeside.
Eksempel: Opret link, der gør det muligt for brugeren at ændre eller forny et cookie-samtykke
<a href=”javascript: Cookiebot.renew()”>Ændring af dit samtykke</a>
Callbacks (Asynkron event-håndtering)
Navn Beskrivelse
CookiebotCallback_OnLoad Det asynkrone callback udløses, når cookiebanneret er blevet indlæst for at få brugerens samtykke.
CookiebotCallback_OnAccept Det asynkrone callback udløses når en bruger klikker på accepter-knappen på samtykke-dialogen og hver gang en bruger, der tidligere har afgivet positivt samtykke, indlæser en side.
CookiebotCallback_OnDecline Det asynkrone callback udløses når en bruger afviser brugen af ​​cookies ved at klikke på afslå-knappen i cookie-samtykke-dialogen. Funktionen udløses også hver gang en bruger, der tidligere har afvist brugen af cookies, indlæser en side.
Eksempel: Indlæs Google Analytics, hvis brugeren har accepteret cookies
<script type="text/javascript">

    function CookiebotCallback_OnAccept() {
        if (Cookiebot.consent.statistics)
        {
            enableGoogleAnalytics();
        }
    }

    var _gaq = [];
    function enableGoogleAnalytics() {
        _gaq.push(['_setAccount', 'UA-00000000-0']);
        _gaq.push(['_trackPageview']);
        (function () {
            var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
            ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
            var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
        })();
    }

</script>
Script-tag dataattributter
Navn Type Obligatorisk Beskrivelse
data-cbid string ja Det unikke ID for dit Cookiebot-abonnement.
data-type string nej Tilsidesætter standard-dialogboks-type med en af ​​følgende værdier:
"optin" (accepter), "optout" (afslå), "optinout" (accepter og afslå), "leveloptin" (multi-niveau på banner), "inlineoptin" (multi-niveau på detalje-panel)
data-level string nej Tilsidesætter standard-samtykke-metoden med en af ​​følgende værdier: "implied" (underforstået), "strict" (udtrykkeligt)
data-culture string nej Hvis du vil gennemtvinge et bestemt sprog, når samtykke-dialogen vises, sættes værdien af ​​denne attribut til en kultur-neutral ISO 639-1 sprogkode, f.eks. "DA" for dansk. Indstilling af denne egenskab med en gyldig sprogkode tilsidesætter indstillingen "Auto-detekter brugerens sprog" i Cookiebots manager.
Eksempel: Fremtving den engelsksprogede udgave af samtykke-dialogen
<script id="Cookiebot" data-culture="EN" src="https://consent.cookiebot.com/uc.js" data-cbid="00000000-0000-0000-0000-000000000000" type="text/javascript"></script>

Server-side brug

Hvis dit websted sætter cookies server side, kan du aflæse hvilken type cookies, du har lov til at sætte, ved at kontrollere brugernes aktuelle samtykke-tilstand gennem standard cookie-håndtering.

using System.Web.Script.Serialization;
...

HttpCookie CurrentUserConsent = Request.Cookies["CookieConsent"];

if (CurrentUserConsent != null)
{
    switch (CurrentUserConsent.Value)
    {
        case "0":
            //Brugeren har ikke accepteret cookies - sæt kun strengt nødvendige cookies
            break;

        case "-1":
            //Brugeren er ikke inden for en region, der kræver samtykke - alle cookies accepteres
            break;

        default: //Brugeren har accepteret en eller flere typer cookies
            
            //Aflæs den aktuelle brugers samtykke i indkodet JavaScript-format
            JavaScriptSerializer CookieConsentSerializer = new JavaScriptSerializer();
            dynamic CookieConsent = CookieConsentSerializer.Deserialize<object>(HttpUtility.UrlDecode(CurrentUserConsent.Value));

            if (CookieConsent["preferences"])
            {
                //Den aktuelle bruger accepterer preference-cookies
            }
            else
            {
                //Den aktuelle bruger accepterer IKKE preference-cookies
            }

            if (CookieConsent["statistics"])
            {
                //Den aktuelle bruger accepterer statistik-cookies
            }
            else
            {
                //Den aktuelle bruger accepterer IKKE statistik-cookies
            }

            if (CookieConsent["marketing"])
            {
                //Den aktuelle bruger accepterer marketing-cookies
            }
            else
            {
                //Den aktuelle bruger accepterer IKKE marketing-cookies
            }   
    }
}
else
{
    //Brugeren har ikke accepteret cookies - sæt kun strengt nødvendige cookies
}
if (isset($_COOKIE["CookieConsent"]))
{
    switch ($_COOKIE["CookieConsent"])
    {
        case "0":
            //Brugeren har ikke accepteret cookies - sæt kun strengt nødvendige cookies
            break;

        case "-1":
            //Brugeren er ikke inden for en region, der kræver samtykke - alle cookies accepteres
            break;

        default: //Brugeren har accepteret en eller flere typer cookies
            
            //Aflæs den aktuelle brugers samtykke i indkodet JavaScript-format
            $valid_php_json = preg_replace('/\s*:\s*([a-zA-Z0-9_]+?)([}\[,])/', ':"$1"$2', preg_replace('/([{\[,])\s*([a-zA-Z0-9_]+?):/', '$1"$2":', str_replace("'", '"',stripslashes($_COOKIE["CookieConsent"]))));
            $CookieConsent = json_decode($valid_php_json);

            if (filter_var($CookieConsent->preferences, FILTER_VALIDATE_BOOLEAN))
            {
                //Den aktuelle bruger accepterer preference-cookies
            }
            else
            {
                //Den aktuelle bruger accepterer IKKE preference-cookies
            }

            if (filter_var($CookieConsent->statistics, FILTER_VALIDATE_BOOLEAN))
            {
                //Den aktuelle bruger accepterer statistik-cookies
            }
            else
            {
                //Den aktuelle bruger accepterer IKKE statistik-cookies
            }

            if (filter_var($CookieConsent->marketing, FILTER_VALIDATE_BOOLEAN))
            {
                //Den aktuelle bruger accepterer marketing-cookies
            }
            else
            {
                //Den aktuelle bruger accepterer IKKE marketing-cookies
            }   
    }
}
else
{
    //Brugeren har ikke accepteret cookies - sæt kun strengt nødvendige cookies
}
Imports System.Web.Script.Serialization
...

Dim CurrentUserConsent As HttpCookie = Request.Cookies("CookieConsent")

If CurrentUserConsent IsNot Nothing Then
    Select Case CurrentUserConsent.Value
        Case "0"
            REM Brugeren har ikke accepteret cookies - sæt kun strengt nødvendige cookies
            Exit Select

        Case "-1"
            REM Brugeren er ikke inden for en region, der kræver samtykke - alle cookies accepteres
            Exit Select

        Case Else REM Brugeren har accepteret en eller flere typer cookies
            
            REM Aflæs den aktuelle brugers samtykke i indkodet JavaScript-format
            Dim CookieConsentSerializer As New JavaScriptSerializer()
            Dim CookieConsent As dynamic = CookieConsentSerializer.Deserialize(Of Object)(HttpUtility.UrlDecode(CurrentUserConsent.Value))

            If CookieConsent("preferences") Then
                REM Den aktuelle bruger accepterer preference-cookies
            Else
                REM Den aktuelle bruger accepterer IKKE preference-cookies
            End If

            If CookieConsent("statistics") Then
                REM Den aktuelle bruger accepterer statistik-cookies
            Else
                REM Den aktuelle bruger accepterer IKKE statistik-cookies
            End If

            If CookieConsent("marketing") Then
                REM Den aktuelle bruger accepterer marketing-cookies
            Else
                REM Den aktuelle bruger accepterer IKKE marketing-cookies
            End If
    End Select
Else
    REM Brugeren har ikke accepteret cookies - sæt kun strengt nødvendige cookies
End If


Indlæser...
Cookie-deklaration forhåndsvisning
Den endelige deklaration vil blive vist som en integreret del af din egen hjemmeside. Indholdet formateres automatisk efter din hjemmesides generelle stylesheet-definitioner (CSS), herunder skrifttyper og farver.
Østrig20,00 %
Belgien21,00 %
Bulgarien20,00 %
Kroatien25,00 %
Cypern19,00 %
Tjekkiet21,00 %
Danmark25,00 %
Estland20,00 %
Finland24,00 %
Frankrig20,00 %
Tyskland19,00 %
Grækenland24,00 %
Ungarn27,00 %
Irland23,00 %
Italien22,00 %
Letland21,00 %
Litauen21,00 %
Luxembourg17,00 %
Malta18,00 %
Holland21,00 %
Polen23,00 %
Portugal23,00 %
Romænien20,00 %
Slovakiet20,00 %
Slovenien22,00 %
Spanien21,00 %
Sverige25,00 %
Storbritannien20,00 %
Top