// ATM Build: JPqMpA-b3 "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 = 'lMv8VfZfX'; 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": "lMv8VfZfX", "data": { "geo": false, "gdpr": false, "cssAdd": true, "position": "overlay", "cssOverride": true, "gdprChoiceButton": true }, "prebid": { "loadPrebidJs": true, "units": { "f-e0nZtO-": { "code": "medier24.no - nyhetsbrev", "bids": [ { "bidder": "adnuntius", "params": { "auId": "253807" } } ], "mediaTypes": { "banner": { "sizes": [ [ 1280, 720 ] ] } } }, "aQXyApHHR": { "code": "medier24.no - mobil - banner", "bids": [ { "bidder": "adnuntius", "params": { "auId": "253808" } } ], "mediaTypes": { "banner": { "sizes": [ [ 300, 50 ], [ 300, 150 ], [ 300, 250 ], [ 300, 300 ], [ 300, 320 ], [ 320, 250 ], [ 320, 300 ], [ 320, 50 ], [ 320, 320 ], [ 320, 400 ] ] } } }, "NpvgO4U_-": { "code": "medier24.no - desktop - skyskraper", "bids": [ { "bidder": "adnuntius", "params": { "auId": "25380b" } } ], "mediaTypes": { "banner": { "sizes": [ [ 120, 500 ], [ 180, 500 ], [ 160, 600 ], [ 300, 600 ] ] } } }, "0nXU_lLqu": { "code": "medier24.no - desktop - banner", "bids": [ { "bidder": "adnuntius", "params": { "auId": "253810" } } ], "mediaTypes": { "banner": { "sizes": [ [ 728, 90 ], [ 970, 250 ], [ 980, 300 ], [ 980, 600 ] ] } } }, "0DeBdP3zH": { "code": "medier24.no - desktop - artikkelbanner", "bids": [ { "bidder": "adnuntius", "params": { "auId": "253812" } } ], "mediaTypes": { "banner": { "sizes": [ [ 580, 400 ], [ 580, 500 ] ] } } } }, "map": { "00000000001be9dc": "f-e0nZtO-", "00000000000d570a": "aQXyApHHR", "00000000000d570d": "aQXyApHHR", "00000000000d570e": "aQXyApHHR", "00000000000d5717": "aQXyApHHR", "00000000000d571a": "aQXyApHHR", "0000000000201345": "aQXyApHHR", "0000000000201348": "aQXyApHHR", "00000000000d5706": "NpvgO4U_-", "00000000000d5709": "NpvgO4U_-", "00000000000d5702": "0nXU_lLqu", "00000000000d5703": "0nXU_lLqu", "00000000000d5704": "0nXU_lLqu", "00000000000d5705": "0nXU_lLqu", "0000000000246661": "0DeBdP3zH" }, "analytics": false, "requester": { "siteId": "k5pnhk1tf20j80fj", "system": "adnuntius" }, "aliases": [] }, "tagType": "legacy", "cmp": { "layout": "messageBox", "enabled": true, "adnuntius": true, "editButton": true, "reloadTime": 180, "languageCode": "AxD9Jpsju", "pageviewTrigger": true }, "templates": { "messageBox": "\n
\n
\n {{title}}\n
\n
\n

{{text}}

\n
\n
\n \n \n
\n
\n ", "overlay": "\n
\n
\n
\n
\n ", "settings": "\n
\n {{title}}\n {{text}}\n
\n
\n {{adnuntiusPurposes}}\n {{purposesList}}\n {{specialFeaturesList}}\n
\n
\n \n \n \n {{tcfButtons}}\n
\n ", "listItem": "\n
\n
\n

{{purposeTitle}}

\n

{{purposeText}}

\n
\n \n
\n ", "vendorList": "\n
\n {{title}}\n
\n
\n {{list}}\n
\n
\n \n \n \n
\n ", "editButton": "\n
\n {{title}}\n
\n " }, "variables": [ { "type": "atm.browser", "variable": "href", "default": "" }, { "type": "", "variable": "adnMeta.adUnits", "default": "[]" }, { "type": "", "variable": "adn_kv", "default": "" } ], "variableMap": { "href": "atm.browser.href", "adnMeta.adUnits": "adnMeta.adUnits", "adn_kv": "adn_kv" }, "tags": { "mlV_06k72": { "purposes": [ "yef72Nps0" ], "type": "javascriptCustom", "content": { "script": "" } }, "w90oT9kH8": { "purposes": [ "mLZSM_gsS" ], "type": "kilkaya", "content": { "kilkayaId": "60ae49163984713a036f5c02" } }, "oECH_wOfH": { "purposes": [], "type": "javascriptCustom", "content": { "script": "" } }, "vO6ENy2Wh": { "purposes": [], "type": "javascriptCustom", "content": { "script": "" } } } } try { adnMeta.adUnits = (adnMeta.adUnits) ? adnMeta.adUnits : []; } catch (e) { throw new Error('Custom variables are not valid') } atm.containers[CONTAINER_ID].tags["mlV_06k72"].content.script = function(){ var adnKv = adn_kv var tags = adnKv[0].tags console.log(tags) window.adn = window.adn || {}; adn.calls = adn.calls || []; adn.calls.push(function() { adn.view('0000000000293d6b', { categories: tags, }); });}; atm.containers[CONTAINER_ID].tags["oECH_wOfH"].content.script = function(){var ck=ck||[];(function(){var e=["init","identify","track","trackLink","pageview"],t=function(e){return function(){ck.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var n=0;n 0) { adn.calls.push(function() { atm.requestAds({ adUnits: adUnits }); }); }}; "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) { if (tag.purposes.length > 0 && !atm.utils.findInArray(atm.GLOBALS.forcedPurposes, tag.purposes)) { runable = false; atm.haltedTags.push(tagId); } } else { if (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": "AxD9Jpsju", "pageviewTrigger": true, "availablePurposes": { "adnuntiusPurposes": [ "94yMlt7Lp", "A9RJuENXb", "L41UstbaB", "mLZSM_gsS", "yef72Nps0" ], "tcfPurposes": [], "tcfSpecialFeatures": [] }, "texts": { "back": "Tilbake", "save": "Lagre", "title": "Dine valg:", "accept": "Godta valgte", "legInt": "Legitim interesse", "details": "Detaljer", "message": "Informasjonskapsler og personvern
\n\nFor å gi deg relevante annonser på vårt nettsted 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. \n
\n
\nVi 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 på Fagpressen.no.
\n", "partners": "Partnere", "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 på Fagpressen.no ", "title": "Fagpressen nettverk" } }, "settings": "Innstillinger", "acceptAll": "Godta alle", "rejectAll": "Godta valgte", "editButton": "Rediger" }, "purposeText": [], "specialFeaturesText": [], "adnuntiusPurposesTexts": [ { "id": "yef72Nps0", "index": "0", "externalId": false, "adnuntiusPurpose": "", "name": "Fagpressen nettverk", "description": "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 på Fagpressen.no ", "forced": false }, { "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 }, { "id": "A9RJuENXb", "index": "4", "externalId": false, "adnuntiusPurpose": "", "name": "Tilpasset markedsføring", "description": "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.", "forced": false } ], "mappedExternalId": {} }; "use strict"; atm.createPrebidRequest = function (request) { var prebidUnits = []; request.adUnits.forEach(function (adUnit) { var prebidId = atm.prebid.map[adUnit.auId]; if (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].javascriptCustom = function (script) { try { script.script(); } catch (e) { atm.log('error', 'Custom Javascript is malformed ' + e.message, 'Custom JavaScript'); } }; "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); } }; atm.addListener("pageview.lMv8VfZfX", function(eventData){ if( (true) ) atm.utils.runTags('lMv8VfZfX', ["mlV_06k72","w90oT9kH8","vO6ENy2Wh","oECH_wOfH"]) }); "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 = '
' + '' + '
' + '' + vendor.policyUrl + '' + '

Purposes

' + presentText + '

Features

' + featureText + '
' + '
'; 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(); })(); window.addEventListener('load', function (event) { 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); }