Hvis du skifter fra en anden cookie-administrationsløsning til vores, kan det være en god idé at overføre de samtykker, du allerede har indsamlet. Dette er nyttigt for at sikre, at brugere, der allerede har givet deres samtykke i henhold til den tidligere løsning, ikke præsenteres for cookiebanneret og den tilhørende anmodning om samtykke igen.
Der er to måder at gøre det på, afhængigt af om den “gamle” platform leverer en cookie(synkron metode) eller kræver et kald til dens API(asynkron metode).
Før du integrerer Privacy Controls and Cookie Solution, skal du definere en synkron funktion (f.eks. isConsentGivenByOtherPlatform
) for at få samtykke fra den anden platform:
<script type="text/javascript"> function readLocalCookie(cookieName) { var cookies = document.cookie.split(';'); for (var i = 0; i < cookies.length; i++) { var e=cookies[i].split('='); if (e[0] === cookieName) { return e[1]; } } return null; } function isConsentGivenByOtherPlatform() { var otherPlatformCookieName = 'cookie_from_other_platform'; // use the actual cookie name saved by the other platform var prevConsent = readLocalCookie(otherPlatformCookieName); if (prevConsent) { return true; } else { return false; } } </script>
Du skal ikke kopiere og indsætte koden ovenfor – det er bare et eksempel på kode, som vi har givet dig for at hjælpe dig med at forstå fremgangsmåden.
Tilføj derefter snippet Privacy Controls and Cookie Solution, og påkald tilbagekaldet onReady
:
<script type="text/javascript"> var _iub = _iub || []; _iub.csConfiguration = { "lang": "en", "siteId": XXXXXX, // use your siteId "cookiePolicyId": YYYYYY, // use your cookiePolicyId "banner": { "acceptButtonDisplay": true, "customizeButtonDisplay": true, "position": "float-top-center" }, "callback": { "onReady": function() { if (typeof window.isConsentGivenByOtherPlatform === 'function' && isConsentGivenByOtherPlatform()) { _iub.cs.api.setPreferences({ consent: true, ccpa: true, uspr: { 'all': true, 'sd8': true, 'sd9': true, }, purposes: { '1': true, '2': true, '3': true, '4': true, '5': true, }, tcfv2: { 'all': true, }, gac: { 'all': true, }, }, true); } } } }; </script> <script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>
Tilbagekaldet til onReady
kontrollerer, om der allerede er givet samtykke på en anden platform, og gemmer det i så fald ved at kalde metoden _iub.cs.api.setPreferences()
.
_iub.cs.api.storeConsent()
gør det også muligt at tilpasse formål i argumentet, som kan være {consent: true}
, {consent: false}
eller {purposes: {1: true, 2: false, …}}
.
Før du indlejrer koden til Privacy Controls and Cookie Solution, skal du definere en funktion, der:
Her er et eksempel:
<script type="text/javascript"> // fetch consent asynchronously from 3rd party function getConsentByOtherPlatform(cb) { $.getJSON('http://otherplatform.com/api/get-consent', function(result) { if (result.given) { window.consentByOtherPlatform = true; } else { window.consentByOtherPlatform = false; } cb(); }); } function isConsentGivenByOtherPlatform() { return !!window.consentByOtherPlatform; } </script>
Du skal ikke kopiere og indsætte koden ovenfor – det er bare et eksempel på kode, som vi har givet dig for at hjælpe dig med at forstå fremgangsmåden.
Tilføj derefter snippet Privacy Controls and Cookie Solution, og påkald on
Ready callback:
<script type="text/javascript"> var _iub = _iub || []; _iub.csConfiguration = { "lang": "en", "siteId": XXXXXX, // use your siteId "cookiePolicyId": YYYYYY, // use your cookiePolicyId "banner": { "acceptButtonDisplay": true, "customizeButtonDisplay": true, "position": "float-top-center" }, "callback": { "onReady": function() { if (typeof window.isConsentGivenByOtherPlatform === 'function' && isConsentGivenByOtherPlatform()) { _iub.cs.api.setPreferences({ consent: true, ccpa: true, uspr: { 'all': true, 'sd8': true, 'sd9': true, }, purposes: { '1': true, '2': true, '3': true, '4': true, '5': true, }, tcfv2: { 'all': true, }, gac: { 'all': true, }, }, true); } } } } }; </script> <script type="text/javascript"> // ask for 3rd party consent before including the CS getConsentByOtherPlatform(function() { var s = document.createElement('script'); s.src = '//cdn.iubenda.com/cs/iubenda_cs.js'; document.head.appendChild(s); }); </script>
Tilbagekaldet til onReady
tjekker, om der allerede er givet samtykke på en anden platform, og gemmer det i så fald ved at kalde metoden _iub.cs.api.setPreferences()
.
_iub.cs.api.storeConsent()
gør det også muligt at tilpasse formål i argumentet, som kan være {consent: true}
, {consent: false}
eller {purposes: {1: true, 2: false, …}}
.
Metoden _iub.cs.api.setPreferences
forventer to argumenter: consentObj (påkrævet) og hideBanner (valgfrit).
Det er et objekt med følgeindstillinger:
true
eller false
– Det refererer til generelt samtykketrue
eller false
– det henviser til amerikansk privatliv, og det vil kun blive anvendt, hvis CCPA er aktiveret i Cookie Solutiontrue
eller false
– denne indstilling indstiller den samme værdi til alle formåluspr: { all: true // or false }
true
eller false
– denne indstilling indstiller værdien til specifikke ID-formåluspr: { 's': true, // or false 'sh': false, // or true 'adv': false // or true }
perPurposeConsent
er aktiveret – accepterer et objekt med følgende muligheder – det henviser til samtykke til formål, og det vil kun blive anvendt, hvis perPurposeConsent
er aktiveret i Cookie Solution
true
eller false
– denne indstilling indstiller den samme værdi til alle formålpurposes: { all: true // or false }
true
eller false
– denne indstilling indstiller værdien til specifikke ID-formålpurposes: { '1': true, // or false '2': false, // or true '4': false // or true }
true
eller false
– denne indstilling indstiller den samme værdi til alle TCF-formåltcfv2: { all: true // or false }
tcfv2: 'CP9rVEAP9rVEAB7FGCENAyEgAAAAAAAAAAAAAAAUHgJAA4AM-AjwBKoDfAHbAO5AgoBIgCSgEowJaATHAmSBNICfYFBAKDgAAAAA'
true
eller false
– denne indstilling indstiller den samme værdi for alle GAC-leverandørergac: { all: true // or false }
gac: '1~1584.2292.2392'
Det er en boolean for at skjule eller ikke skjule banneret efter præferencelageret, i dette tilfælde skal det altid være true
_iub.cs.api.setPreferences({ ... }, true); // hide the banner after the preference storage _iub.cs.api.setPreferences({ ... }, false); // keep the banner after the preference storage