-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
#4674 Addition of DigiTrust vendor check for gdpr when cmp is present. (
#4698) * #4674 Addition of DigiTrust vendor check for gdpr when cmp is present. * Fixing incorrect DigiTrust vendor ID. Should be 64, not 65.
- Loading branch information
1 parent
e9b50f2
commit 39615f7
Showing
5 changed files
with
336 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
{ | ||
"version": 1, | ||
"purposes": [ | ||
{ | ||
"id": 25, | ||
"name": "Custom Purpose 1", | ||
"description": "Here's a description of the first purpose" | ||
}, | ||
{ | ||
"id": 26, | ||
"name": "Custom Purpose 2", | ||
"description": "Here's a description of the second purpose" | ||
}, | ||
{ | ||
"id": 27, | ||
"name": "Custom Purpose 3", | ||
"description": "Here's a description of the third purpose" | ||
}, | ||
{ | ||
"id": 28, | ||
"name": "Custom Purpose 4", | ||
"description": "Here's a description of the fourth purpose" | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,192 @@ | ||
<html> | ||
<head> | ||
<title>CMP Simple DigiTrust Prebid - No Framework</title> | ||
<script> | ||
(function (window) { | ||
window.__cmp = (function () { | ||
window.addEventListener('message', function (event) { | ||
window.__cmp.receiveMessage(event); | ||
}); | ||
|
||
var commandQueue = []; | ||
var cmp = function (command, parameter, callback) { | ||
commandQueue.push({ | ||
command: command, | ||
parameter: parameter, | ||
callback: callback | ||
}); | ||
}; | ||
cmp.commandQueue = commandQueue; | ||
cmp.receiveMessage = function (event) { | ||
var data = event && event.data && event.data.__cmpCall; | ||
if (data) { | ||
commandQueue.push({ | ||
callId: data.callId, | ||
command: data.command, | ||
parameter: data.parameter, | ||
event: event | ||
}); | ||
} | ||
}; | ||
cmp.config = { | ||
customPurposeListLocation: './cmp_files/purposes.json', | ||
globalVendorListLocation: 'https://vendorlist.consensu.org/vendorlist.json', | ||
globalConsentLocation: 'http://cmp-origin-release.digitru.st/1/docs/portal.html', | ||
storeConsentGlobally: false, | ||
storePublisherConsentGlobally: false, | ||
storePublisherData: true, | ||
layout: 'footer', | ||
logging: "debug", | ||
blockBrowsing: false, | ||
forceLocale: 'en', | ||
testingMode: 'always show', | ||
showFooterAfterSubmit: true, | ||
}; | ||
return cmp; | ||
}()); | ||
})(window); | ||
|
||
window.__cmp('renderCmpIfNeeded'); | ||
</script> | ||
|
||
<script> | ||
var FAILSAFE_TIMEOUT = 2000; | ||
|
||
var adUnits = [ | ||
{ | ||
code: 'test-div', | ||
sizes: [[300, 250], [300, 600], [728, 90]], | ||
mediaTypes: { banner: { sizes: [400, 600], name: 'testAdUnit' } }, | ||
bids: [ | ||
{ | ||
bidder: 'rubicon', | ||
params: { | ||
accountId: '1001', | ||
siteId: '113932', | ||
zoneId: '535510' | ||
} | ||
} | ||
] | ||
} | ||
]; | ||
|
||
var pbjs = pbjs || {}; | ||
pbjs.que = pbjs.que || []; | ||
</script> | ||
<script src="../../build/dev/prebid.js" async></script> | ||
|
||
<script> | ||
var googletag = googletag || {}; | ||
googletag.cmd = googletag.cmd || []; | ||
googletag.cmd.push(function () { | ||
googletag.pubads().disableInitialLoad(); | ||
}); | ||
|
||
pbjs.que.push(function () { | ||
pbjs.setConfig({ | ||
debug: true, | ||
consentManagement: { | ||
cmpApi: 'iab', | ||
timeout: 1000, | ||
allowAuctionWithoutConsent: true | ||
}, | ||
usersync: { | ||
userIds: [{ | ||
name: "digitrust", | ||
params: { | ||
init: { | ||
member: 'example_member_id', | ||
site: 'example_site_id' | ||
}, | ||
callback: function (digiTrustResult) { | ||
// This callback can be used by publisher page to react to error conditions | ||
// Or pass the DigiTrust ID on. | ||
// If the Prebid userId system already has a managed copy of the DigiTrust ID | ||
// this callback will not be invoked. | ||
var elem = document.getElementById('idDiv'); | ||
var msg; | ||
if (digiTrustResult.success) { | ||
console.log('Success in Digitrust init'); | ||
if (digiTrustResult.identity && digiTrustResult.identity.id != null) { | ||
msg = 'DigiTrust Id (encrypted): ' + digiTrustResult.identity.id; | ||
elem.innerHTML = msg; | ||
console.log(msg); | ||
} | ||
else { | ||
console.error('Digitrust gave success, but no identity returned'); | ||
} | ||
} | ||
else { | ||
console.error('Digitrust init failed'); | ||
} | ||
} | ||
}, | ||
storage: { | ||
type: "html5", | ||
name: "pbjsdigitrust", | ||
expires: 60 | ||
} | ||
}] | ||
} | ||
}); | ||
pbjs.addAdUnits(adUnits); | ||
pbjs.requestBids({ | ||
bidsBackHandler: sendAdserverRequest | ||
}); | ||
}); | ||
|
||
function sendAdserverRequest() { | ||
if (pbjs.adserverRequestSent) return; | ||
pbjs.adserverRequestSent = true; | ||
googletag.cmd.push(function () { | ||
pbjs.que.push(function () { | ||
pbjs.setTargetingForGPTAsync(); | ||
googletag.pubads().refresh(); | ||
}); | ||
}); | ||
} | ||
|
||
setTimeout(function () { | ||
sendAdserverRequest(); | ||
}, FAILSAFE_TIMEOUT); | ||
</script> | ||
|
||
<script> | ||
(function () { | ||
var gads = document.createElement('script'); | ||
gads.async = true; | ||
gads.type = 'text/javascript'; | ||
var useSSL = 'https:' == document.location.protocol; | ||
gads.src = (useSSL ? 'https:' : 'http:') + | ||
'//www.googletagservices.com/tag/js/gpt.js'; | ||
var node = document.getElementsByTagName('script')[0]; | ||
node.parentNode.insertBefore(gads, node); | ||
})(); | ||
</script> | ||
|
||
<script> | ||
googletag.cmd.push(function () { | ||
googletag.defineSlot('/112115922/FL_PB_MedRect', [[300, 250], [300, 600]], 'test-div').addService(googletag.pubads()); | ||
googletag.pubads().enableSingleRequest(); | ||
googletag.enableServices(); | ||
}); | ||
</script> | ||
</head> | ||
|
||
<body> | ||
<h2>DigiTrust Prebid Sample - No Framework</h2> | ||
|
||
<p> | ||
This sample tests cmp behavior with simple integration path for using DigiTrust ID with Prebid. | ||
You can use DigiTrust ID without integrating the entire DigiTrust suite. | ||
</p> | ||
<div id="idDiv"></div> | ||
|
||
<div id='test-div'> | ||
<script> | ||
googletag.cmd.push(function () { googletag.display('test-div'); }); | ||
</script> | ||
</div> | ||
<script src="http://cmp-origin-release.digitru.st/1/cmp.bundle.js"></script> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters