// ATM Build: lWlEYJnfO
"use strict";
var adnMeta = adnMeta || {};
var adn = adn || {};
adn.calls = adn.calls || [];
var pbjs = pbjs || {};
pbjs.que = pbjs.que || [];
window.atm = window.atm || {};
atm.queue = atm.queue || [];
atm.events = atm.events || {};
atm.data = atm.data || {};
atm.transitData;
atm.browser = atm.browser || {};
atm.ads = atm.ads || {};
atm.ortb2 = atm.ortb2 || {};
atm.containers = atm.containers || {};
atm.containerFunctions = atm.containerFunctions || {};
atm.GLOBALS = atm.GLOBALS || {};
atm.haltedTags = atm.haltedTags || [];
atm.adUnits = atm.adUnits || [];
atm.adUnitAliases = atm.adUnitAliases || [];
atm.prebid = atm.prebid || {
units: [],
mappedUnits: {},
aliases: [],
map: {}
};
atm.eventList = ['consent.change', 'consent.saved', 'event',];
try {
(function (atm, adn, doc, win) {
var CONTAINER_ID = 'IharUx1uE';
atm.containerFunctions[CONTAINER_ID] = atm.containerFunctions[CONTAINER_ID] || {}
"use strict";
atm.cookie = (function () {
var pairs = document.cookie.split(";");
var cookies = {};
for (var i = 0; i < pairs.length; i++) {
var pair = pairs[i].split("=");
cookies[(pair[0] + '').trim()] = unescape(pair.slice(1).join('='));
}
return cookies;
})();
atm.localStorage = (function () {
var values = {};
var keys = Object.keys(localStorage);
for (var i = 0; i < keys.length; i++) {
try {
values[keys[i]] = JSON.parse(localStorage[keys[i]]);
}
catch (e) {
values[keys[i]] = localStorage[keys[i]];
}
}
return values;
})();
atm.browser = window.location;
atm.browser.consent = (localStorage.getItem('adn-consent') || localStorage.getItem('atm-consent'))
? JSON.parse(localStorage.getItem('adn-consent') || localStorage.getItem('atm-consent'))
: {
time: new Date().getTime(),
tc: false,
given: false,
purposes: [],
specialFeatures: [],
vendors: [],
legIntPurposes: [],
adnuntiusPurposes: [],
stack: false,
};
atm.browser.consent.timeSinceConsent = new Date().getTime() - atm.browser.consent.time;
atm.page = atm.page || {};
atm.page.meta = (function () {
var metaObject = {};
var metaData = document.getElementsByTagName("meta");
var metaDataArray = [].slice.call(metaData);
metaDataArray.forEach(meta => {
var name = meta.name || meta.getAttribute('property') || meta.getAttribute('http-equiv');
if (name)
metaObject[name] = meta.content;
});
return metaObject;
})();
atm.containers[CONTAINER_ID] = {
"id": "IharUx1uE",
"data": {
"geo": false,
"gdpr": false,
"cssAdd": true,
"position": "overlay",
"cssOverride": true,
"gdprChoiceButton": true
},
"prebid": {
"loadPrebidJs": false,
"units": {},
"map": {},
"analytics": false,
"requester": {
"system": "adnuntius"
},
"aliases": []
},
"tagType": "legacy",
"cmp": {
"layout": "messageBox",
"enabled": true,
"adnuntius": true,
"editButton": true,
"reloadTime": 180,
"languageCode": "TD07ev_2c",
"pageviewTrigger": true
},
"templates": {
"messageBox": "\n
\n ",
"overlay": "\n \n ",
"settings": "\n \n \n {{adnuntiusPurposes}}\n {{purposesList}}\n {{specialFeaturesList}}\n
\n \n ",
"listItem": "\n \n
\n
{{purposeTitle}}
\n
{{purposeText}}
\n
\n
\n
\n ",
"vendorList": "\n \n \n {{list}}\n
\n \n ",
"editButton": "\n \n {{title}}\n
\n "
},
"variables": [],
"variableMap": {},
"tags": {
"n9OUZ6HIT": {
"purposes": [
"mLZSM_gsS"
],
"type": "kilkaya",
"content": {
"url": "https://cl.k5a.io/60ae49163984713a036f5c02.js",
"onLoad": true,
"kilkayaId": "60ae49163984713a036f5c02"
}
},
"_T4PHPLm1": {
"purposes": [
"A9RJuENXb"
],
"type": "adnuntiusData",
"content": {
"folderId": "0000000000293d6b"
}
}
}
}
try {
} catch (e) {
throw new Error('Custom variables are not valid')
}
"use strict";
atm.log = function (type, message, ctx) {
var makeBlock = function (color) {
return 'background: ' + color + '; padding: 2px 10px; border-radius: 2px; color: rgba(0,0,0,.7); border-bottom: 1px solid rgba(0,0,0,.3);border-top: 1px solid rgba(255,255,255,.6);margin-left: 5px;';
};
var logType = 'log';
var eventType = '';
var color = '#79e1ec';
if (type == 'warn' || type == 'error') {
logType = type;
}
else {
eventType = '%c' + type;
}
switch (type) {
case 'event':
color = "#0aff82";
break;
case 'tag':
color = "#ee49d1";
break;
case 'consent':
color = "#af83ff";
break;
}
console[logType]('%cATM' + eventType, makeBlock("#00e6ff"), (eventType != '') ? makeBlock(color) : '', message || '', ctx || '');
};
atm.debug = function (type, message, ctx) {
if (win.location.search.indexOf('atm_debug') > -1) {
atm.log(type, message, ctx);
}
};
"use strict";
atm.utils = {
createUuid: function () {
var dt = new Date().getTime();
var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function (c) {
var r = (dt + Math.random() * 16) % 16 | 0;
dt = Math.floor(dt / 16);
return (c == 'x' ? r : (r & 0x3 | 0x8)).toString(16);
});
return uuid;
},
getCookie: function (cname) {
var name = cname + "=";
var decodedCookie = decodeURIComponent(document.cookie);
var ca = decodedCookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0) == ' ') {
c = c.substring(1);
}
if (c.indexOf(name) == 0) {
return c.substring(name.length, c.length);
}
}
return "";
},
replaceTags: function (str, tags) {
var tagNames = Object.keys(tags);
for (var i = 0; i < tagNames.length; i++) {
var tag = tagNames[i];
var pattern = "{{" + tag + "}}";
str = str.replace(new RegExp(pattern, "g"), tags[tag]);
}
return str;
},
replaceTag: function (str, search, replace) {
return str.replace(new RegExp(search, 'g'), replace);
},
remove: function (target) {
var removeElement = target || 'adn-overlay';
atm.utils.forEachClass(removeElement, function (el) {
el.remove();
});
},
addScript: function (src, targetId, fn, options) {
var script = doc.createElement("script");
script.type = "text/javascript";
script.src = src;
if (options && options.async)
script.async = true;
if (options && options.defer)
script.defer = true;
if (options && options.type)
script.type = options.type;
if (options && options.nomodule)
script.noModule = true;
if (script.readyState) { // only required for IE <9
script.onreadystatechange = function () {
if (script.readyState === "loaded" || script.readyState === "complete") {
script.onreadystatechange = null;
fn();
}
};
}
else { //Others
script.onload = function () {
if (fn)
fn();
};
}
if (targetId)
doc.getElementById(targetId).appendChild(script);
else
doc.getElementsByTagName("head")[0].appendChild(script);
},
addImage: function (src, width, height) {
var img = doc.createElement('img');
img.src = src;
if (width)
img.width = width;
if (height)
img.height = height;
doc.getElementsByTagName('body')[0].appendChild(img);
},
addContent: function (content, targetId) {
var node = doc.createElement("DIV");
node.innerHTML = content;
if (targetId) {
var target = doc.getElementById(targetId);
target.innerHTML = '';
target.appendChild(node);
}
else
doc.getElementsByTagName("body")[0].appendChild(node);
},
addCss: function (url) {
var link = doc.createElement("link");
link.href = url;
link.type = "text/css";
link.rel = "stylesheet";
doc.getElementsByTagName("head")[0].appendChild(link);
},
addCssString: function (string) {
var css = string, head = doc.head || doc.getElementsByTagName('head')[0], style = doc.createElement('style');
head.appendChild(style);
style.type = 'text/css';
if (style.styleSheet) {
style.styleSheet.cssText = css;
}
else {
style.appendChild(doc.createTextNode(css));
}
},
forEachClass: function (classname, func) {
var els = doc.getElementsByClassName(classname);
for (var i = 0; i < els.length; i++) {
func(els[i]);
}
},
forEachTag: function (tagName, func) {
var els = doc.getElementsByTagName(tagName);
for (var i = 0; i < els.length; i++) {
func(els[i]);
}
},
merge: function (obj, src) {
for (var key in src) {
if (src.hasOwnProperty(key))
obj[key] = src[key];
}
return obj;
},
isObject: function (item) {
return (item && typeof item === 'object' && !Array.isArray(item));
},
mergeDeep: function (target, source) {
if (atm.utils.isObject(target) && atm.utils.isObject(source)) {
for (const key in source) {
if (atm.utils.isObject(source[key])) {
if (!target[key])
Object.assign(target, {
[key]: {}
});
atm.utils.mergeDeep(target[key], source[key]);
}
else {
Object.assign(target, {
[key]: source[key]
});
}
}
}
return target;
},
flatten: function (obj) {
var returnObj = [];
for (var key in obj) {
returnObj.push(obj[key]);
}
return returnObj;
},
findInArray: function (src, arr) {
return arr.some(function (v) {
return src.indexOf(v) >= 0;
});
},
requestGAM: function (arr) {
window.googletag.cmd.push(function () {
for (let i = 0; i < arr.length; i++) {
if (atm.prebidGoogle && atm.prebidGoogle[arr[i]]) {
atm.prebidGoogle[arr[i]]();
}
}
googletag.pubads().enableSingleRequest();
googletag.enableServices();
});
},
runTags: function (localContainerId, tagArray) {
if (tagArray != undefined) {
for (var i = 0; i < tagArray.length; i++) {
try {
var tagId = tagArray[i];
var tag = atm.containers[localContainerId].tags[tagId];
var runable = true;
if (atm.GLOBALS.haltTriggers && tag.purposes) {
if (tag.purposes.length > 0 && !atm.utils.findInArray(atm.GLOBALS.forcedPurposes, tag.purposes)) {
runable = false;
atm.haltedTags.push(tagId);
}
}
else {
if (tag.purposes && tag.purposes.length > 0 && !atm.utils.findInArray(atm.browser.consent.adnuntiusPurposes, tag.purposes)) {
runable = false;
}
}
if (runable) {
atm.debug('tag', 'Running tag: ' + tagId + ' in container: ' + localContainerId);
atm.containerFunctions[localContainerId][tag.type](tag.content);
if (atm.eventList.indexOf('tags.' + tagId) != -1)
atm.dispatch('tags.' + tagId);
}
}
catch (e) {
atm.log('error', e, ': Tag: ' + tag);
}
}
}
},
runTriggers: function (container, type) {
atm.containers[container].triggers[type].forEach(function (fn) {
fn();
});
},
clickElement: function (data) {
if (atm.triggers.click)
atm.triggers.click(data);
},
toggleClass: function (element, className) {
if (element.classList) {
element.classList.toggle(className);
}
else {
var classes = element.className.split(" ");
var i = classes.indexOf(className);
if (i >= 0)
classes.splice(i, 1);
else
classes.push(className);
element.className = classes.join(" ");
}
},
newAjax: function (method, url, func) {
if (win.XDomainRequest) {
// if XDomainRequest is defined and not IE10
if (win.navigator.appVersion.indexOf("MSIE 10") === -1) {
var ajaxIe = new win.XDomainRequest();
ajaxIe.open(method, url);
ajaxIe.contentType = "text/plain";
ajaxIe.onerror = function () { };
ajaxIe.ontimeout = function () { };
ajaxIe.onprogress = function () { };
ajaxIe.timeout = function () { };
ajaxIe.onload = function () { };
ajaxIe.onload = func;
return ajaxIe;
}
}
var ajax = new XMLHttpRequest();
ajax.open(method, url);
ajax.setRequestHeader("Content-Type", "text/plain");
if (func && typeof func === "function") {
ajax.onreadystatechange = func;
}
ajax.onerror = function (e) {
console.log(e);
};
return ajax;
},
ajax: function (method, url, func) {
var ajax = atm.utils.newAjax(method, url, function () {
if (ajax.readyState && ajax.readyState !== 4) {
return false;
}
if (!ajax.status || ajax.status === 200) {
if (func && typeof func === "function") {
func(JSON.parse(ajax.response));
}
else {
atm.log('error', 'Ajax function is not a function');
}
}
else {
atm.log('error', 'Request to URL: ' + url + ' got status ' + ajax.status);
}
});
ajax.send();
},
};
atm.privacy = atm.privacy || {
"layout": "messageBox",
"enabled": true,
"adnuntius": true,
"editButton": true,
"reloadTime": 180,
"languageCode": "TD07ev_2c",
"pageviewTrigger": true,
"availablePurposes": {
"adnuntiusPurposes": [
"94yMlt7Lp",
"L41UstbaB",
"mLZSM_gsS"
],
"tcfPurposes": [],
"tcfSpecialFeatures": []
},
"texts": {
"back": "Tilbake",
"save": "Lagre",
"title": "Dine valg:",
"accept": "Godta valgte",
"message": "Informasjonskapsler og personvern
\n\nFor å gi deg relevant innhold / annonser bruker vi informasjon fra ditt besøk på vårt nettsted. Du kan reservere deg mot dette under \"Innstillinger\".
\n
\nFor øvrig bruker vi informasjonskapsler og lignende verktøy for analyse, for å sammenligne nettlesere, tilpasse innhold til deg og for å utvikle og tilby nødvendig funksjonalitet. Les mer i vår personvernerklæring.
",
"purposes": {
"94yMlt7Lp": {
"text": "Informasjonskapsler for å analysere og lage statistikk over bruk på vårt nettsted, for eksempel antall besøkende, hvilke sider som besøkes mest og hvordan sidene navigeres.",
"title": "Analytiske"
},
"A9RJuENXb": {
"text": "Informasjonskapsler for å gi deg relevant markedsføring basert på informasjonen vi har om deg på andre nettsteder og sosiale medier og for å måle effekten av den.",
"title": "Tilpasset markedsføring"
},
"L41UstbaB": {
"text": "Informasjonskapsler for å huske eventuelle brukervalg og for å gi deg tilpasset innhold på vårt nettsted.",
"title": "Personalisering"
},
"mLZSM_gsS": {
"text": "Informasjonskapsler for grunnleggende funksjoner på vårt nettsted, som utfylling av skjemaer og innlogging.",
"title": "Nødvendige"
},
"yef72Nps0": {
"text": "Vi er med i Fagpressen-nettverket. Om du samtykker under, vil du få relevante annonser på nettstedene til medlemmene i nettverket basert på informasjon fra dine besøk på tvers av disse nettstedene. En oversikt over medlemmene finner du ",
"title": "Fagpressen nettverk"
}
},
"settings": "Innstillinger",
"acceptAll": "Godta alle",
"rejectAll": "Avvis alle",
"editButton": "Innstillinger"
},
"purposeText": [],
"specialFeaturesText": [],
"adnuntiusPurposesTexts": [
{
"id": "mLZSM_gsS",
"index": "1",
"externalId": false,
"adnuntiusPurpose": "",
"name": "Nødvendige",
"description": "Informasjonskapsler for grunnleggende funksjoner på vårt nettsted, som utfylling av skjemaer og innlogging.",
"forced": true
},
{
"id": "94yMlt7Lp",
"index": "2",
"externalId": false,
"adnuntiusPurpose": "- Select Purpose -",
"name": "Analytiske",
"description": "Informasjonskapsler for å analysere og lage statistikk over bruk på vårt nettsted, for eksempel antall besøkende, hvilke sider som besøkes mest og hvordan sidene navigeres.",
"forced": false
},
{
"id": "L41UstbaB",
"index": "3",
"externalId": false,
"adnuntiusPurpose": "",
"name": "Personalisering",
"description": "Informasjonskapsler for å huske eventuelle brukervalg og for å gi deg tilpasset innhold på vårt nettsted.",
"forced": false
}
],
"mappedExternalId": {}
};
"use strict";
atm.createPrebidRequest = function (request) {
var prebidUnits = [];
request.adUnits.forEach(function (adUnit) {
var prebidMappedKey = Object.keys(atm.prebid.map).find(auId => auId.includes(adUnit.auId));
var prebidId = atm.prebid.map[prebidMappedKey];
if (prebidId && atm.prebid.mappedUnits[prebidId]) {
prebidUnits.push(atm.prebid.mappedUnits[prebidId]);
}
});
return prebidUnits;
};
atm.requestAds = function (request) {
if (atm.prebid.aliases.length > 0) {
for (let i = 0; i < atm.prebid.aliases.length; i++) {
const element = atm.prebid.aliases[i];
window.pbjs.que.push(function () {
pbjs.aliasBidder(element[1], [element[0]]);
});
}
}
if (atm.prebid.map) {
if (request.adUnits) {
for (let i = 0; i < request.adUnits.length; i++) {
var adUnit = request.adUnits[i];
if (adUnit.refresh) {
adUnit = atm.ads.setPrebidRefresh(adUnit, request);
}
}
}
adn.calls.push(function () {
adn.chbRequest(atm.createPrebidRequest(request), request);
});
}
else {
adn.calls.push(function () {
adn.request(request);
});
}
};
atm.request = atm.request || {};
atm.request.adnuntius = function (callback) {
adn.calls.push(function () {
adn.request({
adUnits: atm.ads.setAdnuntius(atm.adUnits, callback),
});
});
};
atm.request.prebid = function (callback) {
pbjs.que.push(function () {
pbjs.addAdUnits(atm.adUnits);
pbjs.requestBids({
ortb2: atm.ortb2,
bidsBackHandler: function (data) { if (callback) {
callback(data);
}
else
atm.ads.renderPrebidWinners(); },
timeout: 3000
});
});
};
atm.request.refresh = function (auId) {
};
adn.requestAds = atm.requestAds;
"use strict";
atm.ads.adUnitMeta = atm.ads.adUnitMeta || {};
atm.addAdUnits = function (adUnitList) {
atm.utils.merge(atm.adUnits, adUnitList);
};
atm.clearAdUnits = function () {
atm.adUnits = [];
};
atm.removeAdUnitByCodeArray = function (codeArray) {
for (let i = 0; i < codeArray.length; i++) {
atm.removeAdUnitByCode(codeArray[i]);
}
};
atm.removeAdUnitByCode = function (code) {
for (let i = 0; i < atm.adUnits.length; i++) {
if (atm.adUnits[i].code == code) {
atm.adUnits.splice(i, 1);
break;
}
}
};
atm.addOrtb = function (ortbData) {
atm.ortb2 = atm.utils.mergeDeep(atm.ortb2, ortbData);
};
atm.addAlias = function (aliasList) {
atm.adUnitAliases = atm.adUnitAliases.concat(aliasList);
};
atm.prebid.mappedUnits = atm.utils.merge(atm.prebid.mappedUnits, atm.containers[CONTAINER_ID].prebid.units);
atm.prebid.units = atm.utils.merge(atm.prebid.units, atm.utils.flatten(atm.containers[CONTAINER_ID].prebid.units));
atm.prebid.aliases = atm.prebid.aliases.concat(atm.containers[CONTAINER_ID].prebid.aliases);
atm.prebid.map = atm.utils.merge(atm.prebid.map, atm.containers[CONTAINER_ID].prebid.map);
atm.ads.onCallDone = function (matched, callback) {
atm.removeAdUnitByCodeArray(matched);
if (callback)
callback();
};
atm.ads.renderPrebidWinners = function () {
var bids = pbjs.getHighestCpmBids();
var output = [];
for (var i = 0; i < bids.length; i++) {
var b = bids[i];
var iframe = document.createElement('iframe');
iframe.id = b.adId;
iframe.width = b.width;
iframe.height = b.height;
iframe.frameBorder = 'no';
var target = document.getElementById(b.adUnitCode);
target.style.display = 'block';
output.push({
'adunit': b.adUnitCode, 'adId': b.adId, 'bidder': b.bidder,
'time': b.timeToRespond, 'cpm': b.cpm
});
var tag = {
adServerDomain: "",
pubUrl: window.location.href,
targetingMap: {},
hbPb: "adnuntius",
adId: b.adId
};
target.appendChild(iframe);
ucTag.renderAd(iframe.contentWindow.document, tag);
}
if (output.length) {
if (console.table) {
console.table(output);
}
else {
for (var j = 0; j < output.length; j++) {
console.log(output[j]);
}
}
}
else {
console.warn('No prebid winners');
}
};
atm.ads.setAdnuntius = function (adUnits, callback) {
var mappedAliases = {};
var adnAdUnitArray = [];
var matchedAds = [];
var totalAds = [];
var removefromTotal = function (adUnit) {
var position = totalAds.indexOf(adUnit.targetId);
totalAds.splice(position, 1);
if (totalAds.length == 0) {
atm.ads.onCallDone(matchedAds, callback);
}
};
atm.adUnitAliases.forEach(function (aliasItem) {
mappedAliases[aliasItem.alias] = aliasItem.bidder;
});
adUnits.forEach((adUnit) => {
totalAds.push(adUnit.code);
adUnit.bids.forEach(function (bid) {
if (bid.bidder == "adnuntius" || mappedAliases[bid.bidder] == "adnuntius") {
var adnAdunit = {
auId: bid.params.auId,
targetId: adUnit.code,
onNoMatchedAds: function (data) { removefromTotal(data); },
onImpressionResponse: function (data) { matchedAds.push(data.targetId); removefromTotal(data); },
};
if (adUnit.mediaTypes && adUnit.mediaTypes.banner && adUnit.mediaTypes.banner.sizes)
adnAdunit.dimensions = adUnit.mediaTypes.banner.sizes;
if (bid.params.targeting) {
console.log(bid.params.targeting);
}
adnAdUnitArray.push(adnAdunit);
}
});
});
return adnAdUnitArray;
};
atm.ads.setInterval = function (auId, request) {
if (!atm.ads.adUnitMeta[auId].interval) {
atm.ads.adUnitMeta[auId].interval = setInterval(function () {
if (atm.ads.adUnitMeta[auId].refresh.count != 0) {
adn.calls.push(function () {
adn.chbRequest(atm.createPrebidRequest(request), request);
});
atm.ads.adUnitMeta[auId].refresh.count--;
}
else {
clearInterval(atm.ads.adUnitMeta[auId].interval);
}
}, atm.ads.adUnitMeta[auId].refresh.delay * 1000);
}
};
atm.ads.setPrebidRefresh = function (adUnit, request) {
var singleAdUnitRequest = Object.assign({}, request);
delete singleAdUnitRequest.headerBids;
var targetId = (adUnit.targetId) ? ':' + adUnit.targetId : '';
var auId = adUnit.auId + targetId;
var refresh = adUnit.refresh;
if (refresh.count)
refresh.count = refresh.count || 999;
else {
refresh = {
delay: adUnit.refresh,
count: 999,
};
}
var event = refresh.event || 'onViewable';
if (event != 'onViewable' && event != "onVisible")
throw new Error('refresh event needs to be "onViewable" or "onVisible"');
delete adUnit.refresh;
adUnit.clearTarget = true;
atm.ads.adUnitMeta[auId] = atm.ads.adUnitMeta[auId] || {};
atm.ads.adUnitMeta[auId].refresh = refresh;
atm.ads.adUnitMeta[auId].refreshFunction = function () {
singleAdUnitRequest.adUnits = [adUnit];
atm.ads.setInterval(auId, singleAdUnitRequest);
};
adUnit[event] = atm.ads.adUnitMeta[auId].refreshFunction;
return adUnit;
};
"use strict";
atm.addListener = function (name, callback) {
if (atm.eventList.indexOf(name) == -1) {
atm.eventList.push(name);
atm.events[name] = new CustomEvent(name, { bubbles: true });
}
document.addEventListener(name, function () { if (callback)
callback(atm.transitData); });
};
atm.dispatch = function (name, data) {
atm.debug(name, data);
atm.transitData = data;
document.dispatchEvent(atm.events[name]);
};
"use strict";
atm.containerFunctions[CONTAINER_ID].kilkaya = function (data) {
try {
atm.utils.addScript("https://cl.k5a.io/" + data.kilkayaId + ".module.js", false, false, { type: "module" });
atm.utils.addScript("https://cl.k5a.io/" + data.kilkayaId + ".nomodule.js", false, false, { defer: true, nomodule: true });
}
catch (e) {
atm.log('error', 'Kilkaya Script ' + e.message);
}
};
"use strict";
atm.containerFunctions[CONTAINER_ID].adnuntiusData = function (tag) {
atm.utils.addScript("https://cdn.adnuntius.com/adn.js");
window.adn = window.adn || {};
adn.calls = adn.calls || [];
adn.calls.push(function () {
adn.view(tag.folderId, {
keywords: tag.keywords || [],
categories: tag.categories || [],
domainName: atm.browser.hostname
});
});
};
atm.addListener("pageview.IharUx1uE", function(eventData){
if( (true) ) atm.utils.runTags('IharUx1uE', ["n9OUZ6HIT","_T4PHPLm1"])
});
"use strict";
atm.consent = {
host: (window.location.hostname == 'http://localhost')
? "http://localhost:4001/staging"
: 'https://consent.adnuntius.com/v2',
checkIfAllTrue: function () {
var checked = [];
atm.utils.forEachClass('adn-switch', function (el) {
checked.push(el.checked);
});
return checked.every(function (value) {
return value == true;
});
},
setAll: function (value, scope) {
atm.debug('consent', 'Set all: ' + value + ' ' + scope || '');
var valueSet = {
adnuntiusPurposes: (value) ? atm.privacy.availablePurposes.adnuntiusPurposes : [],
purposes: (value) ? atm.privacy.availablePurposes.tcfPurposes : [],
vendors: (value) ? ['all'] : [],
legIntPurposes: (value) ? ['all'] : [],
specialFeatures: (value) ? atm.privacy.availablePurposes.tcfSpecialFeatures : [],
};
if (!scope) {
if (atm.containers[CONTAINER_ID].cmp.adnuntius) {
atm.browser.consent.adnuntiusPurposes = valueSet.adnuntiusPurposes;
}
if (atm.containers[CONTAINER_ID].cmp.tcf) {
atm.browser.consent.purposes = valueSet.purposes;
atm.browser.consent.specialFeatures = valueSet.specialFeatures;
atm.browser.consent.vendors = valueSet.vendors;
atm.browser.consent.legIntPurposes = valueSet.legIntPurposes;
}
}
else {
atm.browser.consent[scope] = valueSet[scope];
}
atm.utils.forEachClass('adn-switch', function (el) {
if (!el.disabled)
el.checked = value;
});
return this;
},
save: function () {
atm.browser.consent.time = new Date().getTime();
atm.browser.consent.created = atm.browser.consent.created || Math.round(Date.UTC(new Date().getUTCFullYear(), new Date().getUTCMonth(), new Date().getUTCDate()) / 100);
atm.browser.consent.given = true;
atm.browser.consent.adnConsents = [];
for (var i = 0; i < atm.privacy.adnuntiusPurposesTexts.length; i++) {
var purpose = atm.privacy.adnuntiusPurposesTexts[i];
if (purpose.forced && atm.browser.consent.adnuntiusPurposes.indexOf(purpose.id) == -1) {
atm.browser.consent.adnuntiusPurposes.push(purpose.id);
atm.browser.consent.namedConsent = atm.browser.consent.namedConsent || [];
if (!atm.browser.consent.namedConsent.indexOf(atm.privacy.mappedExternalId[purpose.id]) == -1) {
atm.browser.consent.namedConsent.push(atm.privacy.mappedExternalId[purpose.id]);
}
}
if (atm.browser.consent.adnuntiusPurposes.indexOf(purpose.id) != -1) {
if (purpose.adnuntiusPurpose != '')
atm.browser.consent.adnConsents.push(purpose.adnuntiusPurpose);
}
}
atm.utils.remove('adn-overlay');
atm.utils.remove('adn-message');
localStorage.setItem('adn-consent', JSON.stringify(atm.browser.consent));
if (atm.containers[CONTAINER_ID].cmp.tcf) {
var ajax = atm.utils.newAjax("POST", atm.consent.host, function () {
if (ajax.readyState && ajax.readyState !== 4) {
return false;
}
if (!ajax.status || ajax.status === 200) {
var response = JSON.parse(ajax.response);
if (response.token) {
var d = new Date();
d.setTime(d.getTime() + (365 * 24 * 60 * 60 * 1000));
var expires = "expires=" + d.toUTCString();
document.cookie = "euconsent-v2=" + response.token + "; path=/; " + expires;
atm.browser.consent.tc = response.token;
localStorage.setItem('adn-consent', JSON.stringify(atm.browser.consent));
}
}
});
ajax.send(JSON.stringify(atm.browser.consent));
}
if (atm.browser.consent.adnConsents && atm.browser.consent.adnConsents.length > 0) {
win.localStorage.setItem('atm.consent', JSON.stringify(atm.browser.consent.adnConsents));
}
if (atm.callbacks && atm.callbacks.consentSave) {
atm.callbacks.consentSave(atm.browser.consent);
}
atm.debug('consent', 'Saved', atm.browser.consent);
if (atm.GLOBALS.haltTriggers) {
atm.GLOBALS.haltTriggers = false;
atm.utils.runTags(CONTAINER_ID, atm.haltedTags);
}
return this;
},
getConsent: function () {
return atm.browser.consent;
},
saveAll: function (value) {
this.setAll(value);
this.save();
},
checkConsent: function (consents) {
var consented = true;
for (var i = 0; i < consents.length; i++) {
var consent = consents[i];
if (atm.browser.consent.adnuntiusPurposes.indexOf(consent) == -1)
consented = false;
}
return consented;
},
update: function (scope, id, value) {
if ((scope == 'vendors' && atm.browser.consent.vendors[0] == 'all') ||
(scope == 'legIntPurposes' && atm.browser.consent.legIntPurposes[0] == 'all')) {
atm.browser.consent[scope] = [];
for (var i = 0; i < atm.privacy[scope].length; i++) {
var vendor = atm.privacy[scope][i];
if (vendor.id && vendor.id != id)
atm.browser.consent[scope].push(vendor.id);
}
}
var currentId = (isNaN(Number(id))) ? id : Number(id);
if (value == false) {
var index = atm.browser.consent[scope].indexOf(currentId);
if (index > -1) {
atm.browser.consent[scope].splice(index, 1);
}
}
else {
atm.browser.consent[scope].push(currentId);
}
var checkAllElement = document.getElementById('adn-purposes-all');
if (checkAllElement)
checkAllElement.checked = atm.consent.checkIfAllTrue();
},
fetchVendorList: function (fn) {
// Might have to check TCF
var ajax = atm.utils.newAjax("GET", "https://t.atmng.io/consent/vendorlist.json", function () {
if (ajax.readyState && ajax.readyState !== 4) {
return false;
}
if (!ajax.status || ajax.status === 200) {
fn(JSON.parse(ajax.response));
}
});
ajax.send();
},
init: function (type, forced) {
if (atm.containers[CONTAINER_ID].cmp.tcf)
atm.consent.fetchVendorList(function (vendorList) {
atm.privacy.vendorList = vendorList;
var vendors = Object.keys(atm.privacy.vendorList.vendors).map(function (e) {
return atm.privacy.vendorList.vendors[e];
});
atm.privacy.vendors = vendors;
atm.privacy.legIntPurposes = atm.privacy.vendors.filter(function (vendor) {
return vendor.legIntPurposes.length > 0;
});
});
var mismatch = false;
var defaultConsent = (atm.privacy.purposeText.length > 0) ? atm.privacy.purposeText
: (atm.privacy.adnuntiusPurposesTexts.length > 0) ? atm.privacy.adnuntiusPurposesTexts
: (atm.privacy.specialFeaturesText.lenght > 0) ? atm.privacy.specialFeaturesText : [];
if (defaultConsent.length > 0) {
var userConsent = atm.browser.consent.purposes;
for (var i = 0; i < defaultConsent.length; i++) {
var category = defaultConsent[i];
if (userConsent.indexOf(category) == -1)
mismatch = true;
}
if (defaultConsent.length != userConsent.length)
mismatch = true;
if ((!atm.browser.consent.given || forced || mismatch)
&& !document.getElementById('adn-overlay')) {
if (type == 'overlay') {
atm.consent.render['settings']('adn-overlay', 'overlay');
}
if (type == 'settings') {
atm.consent.render['settings']('adn-overlay', 'settings');
}
if (type == 'messageBox') {
atm.consent.render.messageBox();
}
}
}
},
render: {
text: function (userConsent, text, scope) {
var extraInfo = text.descriptionLegal || text.info;
var purposeText = '' +
'
' + text.description + '
';
purposeText += (extraInfo) ? '
' +
'
' +
'
' + extraInfo.replace(/\*/g, '
*') + '
' +
'
' : '';
purposeText += '
';
return atm.utils.replaceTags(atm.containers[CONTAINER_ID].templates.listItem, {
itemId: text.id,
purposeTitle: text.name,
purposeText: purposeText,
listType: scope,
checked: (userConsent.indexOf(text.id) > -1 || text.forced) ? 'checked' : '',
forced: (text.forced) ? 'disabled' : ''
});
},
purposes: function () {
var userConsent = atm.browser.consent.purposes || [];
var purposes = [];
for (var i = 0; i < atm.privacy.purposeText.length; i++) {
var purpose = atm.privacy.purposeText[i];
purposes.push(atm.consent.render.text(userConsent, purpose, 'purposes'));
}
return purposes.join('');
},
specialFeatures: function () {
var userConsent = atm.browser.consent.specialFeatures || [];
var specialFeatures = [];
for (var i = 0; i < atm.privacy.specialFeaturesText.length; i++) {
var purpose = atm.privacy.specialFeaturesText[i];
specialFeatures.push(atm.consent.render.text(userConsent, purpose, 'specialFeatures'));
}
return specialFeatures.join('');
},
adnuntiusPurposes: function () {
var userConsent = atm.browser.consent.adnuntiusPurposes || [];
var purposes = [];
for (var i = 0; i < atm.privacy.adnuntiusPurposesTexts.length; i++) {
var purpose = atm.privacy.adnuntiusPurposesTexts[i];
purposes.push(atm.consent.render.text(userConsent, purpose, 'adnuntiusPurposes'));
}
return purposes.join('');
},
settings: function (target, type) {
atm.utils.remove('adn-message');
if (!doc.getElementById('adn-overlay'))
atm.consent.render.overlay();
var title, text = '';
if (type == 'settings') {
title = '' + atm.privacy.texts.settings + '';
text = '';
}
else {
title = '' + atm.privacy.texts.title + '
';
text = '' + atm.privacy.texts.message + '
';
}
var tcfButtons = (atm.containers[CONTAINER_ID].cmp.tcf) ? '' +
'' : '';
atm.utils.addContent(atm.utils.replaceTags(atm.containers[CONTAINER_ID].templates.settings, {
title: title,
text: text,
save: atm.privacy.texts.save,
adnuntiusPurposes: (atm.containers[CONTAINER_ID].cmp.adnuntius) ? atm.consent.render.adnuntiusPurposes : '',
purposesList: (atm.containers[CONTAINER_ID].cmp.tcf) ? atm.consent.render.purposes : '',
specialFeaturesList: (atm.containers[CONTAINER_ID].cmp.tcf) ? atm.consent.render.specialFeatures : '',
partners: atm.privacy.texts.partners,
acceptAll: atm.privacy.texts.acceptAll,
rejectAll: atm.privacy.texts.rejectAll,
tcfButtons: tcfButtons
}), target || false);
var checkAllElement = document.getElementById('adn-purposes-all');
if (checkAllElement)
checkAllElement.checked = atm.consent.checkIfAllTrue();
},
overlay: function (target) {
atm.utils.addContent(atm.utils.replaceTags(atm.containers[CONTAINER_ID].templates.overlay, {}), target || false);
},
messageBox: function () {
return atm.utils.addContent(atm.utils.replaceTags(atm.containers[CONTAINER_ID].templates.messageBox, {
title: atm.privacy.texts.title,
text: atm.privacy.texts.message,
settings: atm.privacy.texts.settings,
accept: atm.privacy.texts.accept,
}));
},
vendorList: function (target, type) {
var userConsent = atm.browser.consent[type];
var checked = (atm.browser.consent[type][0] == 'all') ? true : false;
var vendors = [];
for (var i = 0; i < atm.privacy[type].length; i++) {
var vendor = atm.privacy[type][i];
var presentText = '';
var featureText = '';
var information = (type == "vendors") ? 'purposes' : 'legIntPurposes';
for (var j = 0; j < vendor[information].length; j++) {
var infoNumber = vendor[information][j];
var purposeItem = atm.privacy.vendorList.purposes[infoNumber];
presentText += '
' + purposeItem.name + '
';
presentText += '' + purposeItem.description + '
';
}
for (var j = 0; j < vendor.features.length; j++) {
var feature = vendor.features[j];
var featureItem = atm.privacy.vendorList.features[feature];
featureText += '' + featureItem.name + '
';
featureText += '' + featureItem.description + '
';
}
var vendorText = '';
vendors.push(atm.utils.replaceTags(atm.containers[CONTAINER_ID].templates.listItem, {
purposeTitle: vendor.name,
purposeText: vendorText,
itemId: vendor.id,
listType: type,
checked: (checked || userConsent.indexOf(vendor.id) > -1) ? 'checked' : '',
forced: ''
}));
}
return atm.utils.addContent(atm.utils.replaceTags(atm.containers[CONTAINER_ID].templates.vendorList, {
title: atm.privacy.texts.partners,
acceptAll: atm.privacy.texts.acceptAll,
rejectAll: atm.privacy.texts.rejectAll,
list: vendors.join(''),
listType: type,
save: atm.privacy.texts.save,
back: atm.privacy.texts.back,
}), target || false);
},
editButton: function (target) {
atm.utils.addContent(atm.utils.replaceTags(atm.containers[CONTAINER_ID].templates.editButton, {
title: atm.privacy.texts.editButton,
}), target || false);
},
}
};
if (atm.containers[CONTAINER_ID].cmp != false && !atm.browser.consent.given) {
atm.GLOBALS.haltTriggers = true;
atm.GLOBALS.forcedPurposes = [];
atm.privacy.adnuntiusPurposesTexts.forEach(function (purpose) {
if (purpose.forced)
atm.GLOBALS.forcedPurposes.push(purpose.id);
});
}
if (atm.containers[CONTAINER_ID].cmp && atm.containers[CONTAINER_ID].cmp.enabled) {
if (!atm.containers[CONTAINER_ID].cmp.removeDefaultCss)
atm.utils.addCss('https://t.atmng.io/consent/default.css');
if (atm.containers[CONTAINER_ID].cmp.addCss)
atm.utils.addCssString(atm.containers[CONTAINER_ID].cmp.css);
}
if (!atm.GLOBALS.setPageload) {
atm.GLOBALS.setPageload = true;
window.addEventListener('load', function () {
// atm.event.push({ 'browser': { 'state': 'pageloaded' } });
if (atm.containers[CONTAINER_ID].cmp && atm.containers[CONTAINER_ID].cmp.enabled) {
if (atm.containers[CONTAINER_ID].cmp.editButton)
atm.consent.render.editButton();
}
if (atm.containers[CONTAINER_ID].cmp.pageviewTrigger) {
if ((atm.consent && !atm.browser.consent.given) ||
(atm.browser.consent.given && atm.consent &&
atm.browser.consent.timeSinceConsent &&
atm.browser.consent.timeSinceConsent > atm.consent.reloadTime)) {
atm.consent.init(atm.containers[CONTAINER_ID].cmp.layout);
}
}
});
}
atm.utils.addScript("https://cdn.adnuntius.com/adn.js",false,false,{async:true});
if(atm.containers[CONTAINER_ID].prebid){
if(atm.containers[CONTAINER_ID].prebid.config && atm.containers[CONTAINER_ID].prebid.config.custom){
try {
new Function(atm.containers[CONTAINER_ID].prebid.config.custom)();
} catch (e) {
atm.log('error', 'Custom prebid script malformed: ' + e.message, 'Custom Prebid')
}
}
if(atm.containers[CONTAINER_ID].prebid.loadPrebidJs){atm.utils.addScript("https://tags.adnuntius.com/pb/prebid.js")}
}
"use strict";
(function () {
var executeQueue = function () {
try {
var queItem;
while (queItem = atm.queue.shift()) {
if (typeof queItem == 'function')
queItem();
}
}
catch (e) {
atm.log('error', e, 'queue handler');
}
};
win.setTimeout(executeQueue, 25);
atm.queue.push = function () {
Array.prototype.push.apply(this, arguments);
win.setTimeout(executeQueue, 1);
return this.length;
};
executeQueue();
})();
if(document.onreadystatechange) {
document.onreadystatechange = () => {
if( atm.eventList.indexOf('pageload.' + CONTAINER_ID) != -1){
atm.dispatch('pageload.' + CONTAINER_ID)
}
}
}else {
if (document.readyState === "complete") {
if( atm.eventList.indexOf('pageload.' + CONTAINER_ID) != -1){
atm.dispatch('pageload.' + CONTAINER_ID)
}
} else {
window.addEventListener("load", function () {
if( atm.eventList.indexOf('pageload.' + CONTAINER_ID) != -1){
atm.dispatch('pageload.' + CONTAINER_ID)
}
});
}
};
if (atm.eventList.indexOf('pageview.' + CONTAINER_ID) > -1) atm.dispatch('pageview.' + CONTAINER_ID);
})(atm, adn, document, window);
} catch (e) {
console.log('error', e);
}