(function () { var ld_trk_campaign_id_regex = /ld_trk=(\d+)?/; var url_ld_trk_match = window.location.search.match(ld_trk_campaign_id_regex); var campaign_id; if (url_ld_trk_match) { document.cookie = 'ld_trk=1; path=/'; initialize(); } else { var cookie_ld_trk_match = document.cookie.match(ld_trk_campaign_id_regex); if (!cookie_ld_trk_match) return; initialize(); } function initialize () { track(); var latest_url = window.location.href; setInterval(function () { var current_url = window.location.href; if (current_url !== latest_url) { latest_url = current_url; track(); } }, 500); } function track() { var cookie_object = getCookieObjectFromString(document.cookie); var pageview_count = (cookie_object.ld_pv || 0) + 1; document.cookie = "ld_pv=" + pageview_count + "; path=/"; new Image(1,1).src = 'https://trk.lockerdome.com/ldpix.gif?ldc=9927346841128448_hivemedia_impression&page='+pageview_count+'&ord='+Date.now(); if (pageview_count === 10) { new Image(1,1).src = 'https://trk.lockerdome.com/ldpix.gif?ldc=9927346841128448_hivemedia_impression_goal&ord='+Date.now(); } } function getKeyValuePairFromCookieString (cookieString) { // "=" is a valid character in a cookie value according to RFC6265, so cannot `split('=')` var separatorIndex = cookieString.indexOf('='); // IE omits the "=" when the cookie value is an empty string separatorIndex = separatorIndex < 0 ? cookieString.length : separatorIndex; var value = decodeURIComponent(cookieString.substr(separatorIndex + 1)); try { value = JSON.parse(value); } catch(e){} return { key: decodeURIComponent(cookieString.substr(0, separatorIndex)), value: value }; } function getCookieObjectFromString (documentCookie) { var cookieObject = {}; var cookiesArray = documentCookie ? documentCookie.split('; ') : []; for (var i = 0; i < cookiesArray.length; i++) { var cookieKvp = getKeyValuePairFromCookieString(cookiesArray[i]); if (cookieObject[cookieKvp.key] === undefined) { cookieObject[cookieKvp.key] = cookieKvp.value; } } return cookieObject; } })();