CMP-evenemang

För att få aviseringar när vissa händelser inträffar kan du använda följande JavaScript-metoder:

  • __cmp("addEventListener",["eventname",callableFunction,capture],null)
  • __cmp("removeEventListener",["eventname",callableFunction,capture],null)
  • __tcfapi("addEventListener",2, callableFunction)
  • __tcfapi("removeEventListener",2, callableFunction, listenerId)

CMP kan anropa följande händelser:

Evenemang

Beskrivning

init

CMP-koden har laddats och stubkoden har tagits bort. I detta skede har CMP ännu ingen information om samtycket.

settings

CMP har laddat klart sina inställningar. Om en samtyckessträng redan fanns kan samtyckesdata nu läsas från CMP.

consentscreen

CMP visar samtyckesskärmen

consentscreenoff

CMP tar bort samtyckesskärmen

consentscreencustom

CMP visar sidan med anpassade val

consent

CMP har samlat in samtycke eller så har en befintlig cookie hittats. Samtyckesdata kan nu läsas från CMP.

consentapproved

Besökaren har gett sitt samtycke till alla leverantörer/ändamål

consentrejected

Besökaren har avvisat alla leverantörer och syften

consentcustom

Besökaren har gett anpassat samtycke (godkännanden och avvisningar)

liestablished

Samtyckesskärmen visas, berättigat intresse har fastställts för denna besökare.

vendorconsent

Besökaren har accepterat ett dynamiskt innehållsobjekt. Leverantörs-ID för det accepterade objektet finns i subtypvariabeln.

gpp

Olika händelser för IAB GPP-standarden

tcfv2

Olika händelser för IAB TCF-standarden

loadShowing

När laddningen är klar (se händelse settings) och systemet har beslutat att visa samtyckeslagret.

loadNotShowing

När laddningen är klar (se händelse settings) och systemet har beslutat att inte visa innehållslagret.

Händelsehanterare definieras som:

var handler = function (eventname, cmpobject, subtype){…} 

Varning: Använd inte cmpobject längre. Funktionen är föråldrad. Använd API-anrop istället.

Exempel:

<script>
  function getInfos(e,o)
  {     
    var result = __cmp('getCMPData');
    /*... do something with result ...*/
  }
  __cmp("addEventListener",["consent",getInfos,false],null);
</script>

Observera att kommandot addEventListener i IAB TCF v2 endast reagerar på en delmängd av händelser.

Exempel

Omdirigera besökaren till en annan webbplats om inget samtycke ges

Observera att detta beteende inte rekommenderas och kan leda till juridiska problem!

<script>
  function getInfos(e,o)
  { 
    location.href = "https://www.mywebsite.com/alternative-content.html";
  }
  __cmp("addEventListener",["consentrejected",getInfos,false],null);
</script>

Visa ett meddelande om besökaren avvisade

<div id="mymessage" style="display:none; position:fixed; left:calc(50% - 300px); top:calc(50% - 200px); width:600px; height:400px; background-color: #fff0c7; padding: 20px; box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);"><b>Please consider</b><br>Our website is mainly financed by online advertising. Without consent we will not be able to show you tailored ads and our ad revenue will be much lower. As we respect your choice we like to ask you, if you maybe like to donate 1 EUR instead? This will help us keep the quality of our service up.<br>
<br>
  <a href="donate.html"><b>Donate 1 EUR now!</b></a><br>
<br>
  <a href="#" onclick="document.getElementById('mymessage').style.display = 'none';">No, thanks!</a>
</div>
<script>
  function getInfos(e,o){ document.getElementById('mymessage').style.display = 'block';}
  __cmp("addEventListener",["consentrejected",getInfos,false],null);
</script>

Skjut ned sidinnehållet när samtyckesfönstret öppnas

<script>
 var iscmpopen = false;

 function handleSize()
 {
  if(iscmpopen)
  {
   document.body.style.paddingTop = document.getElementById('cmpbox').offsetHeight + 'px';
  }
  else
  {
   document.body.style.paddingTop = 'inherit';
  }
 }

 function pushDown(e, o)
 {
  iscmpopen = true;
  handleSize();
 }

 function pushUp(e, o)
 {
  iscmpopen = false;
  handleSize();
 }

 window.addEventListener('resize', handleSize, false);
 window.addEventListener('load', handleSize, false);

 __cmp('addEventListener', ['consentscreen', pushDown, false], null);
 __cmp('addEventListener', ['consentscreenoff', pushUp, false], null);
</script>

We do our best to keep this purely informative documentation up to date. However, if you notice that any of these guides need a little touch-up, let us know!