optinout.js
Version:
a simple js framework for handling opt-in and opt-out for tracking & cookies
67 lines (57 loc) • 1.71 kB
HTML
<html>
<head>
<script src="../dist/optinout.js"></script>
</head>
<body>
<h2>Facebook</h2>
<button
class="optInOut-optIn"
data-service="facebook"
>OptIn</button>
<button
class="optInOut-optOut"
data-service="facebook"
>OptOut</button>
<h2>Analytics</h2>
<button
class="optInOut-optIn"
data-service="analytics"
>OptIn</button>
<button
class="optInOut-optOut"
data-service="analytics"
>OptOut</button>
<h2>Control</h2>
<button class="delete">Delete Data</button>
<script>
var debug = {
init: function(lib) {
lib.on('optIn', function(data) { console.log(data) });
lib.on('optOut', function(data) { console.log(data) });
},
};
var oio = OptInOut({
services: {
facebook: { mode: 'optIn' },
analytics: { mode: 'optOut' },
},
plugins: [
OptInOut.plugins.linkPlugin(),
OptInOut.plugins.gtmPlugin(),
debug
]
});
var deleteButton = document.querySelector('.delete');
deleteButton.addEventListener('click', function(event) {
var storages = oio.getStorages();
Object.keys(storages).forEach(function(storageKey) {
var storage = storages[storageKey];
if(storage.delete) {
storage.delete('facebook');
storage.delete('analytics');
}
});
});
</script>
</body>
</html>