1(function () { 2 if (window.console) { console.log("Commission Factory: master tag loaded for advertiser 43831"); } 3 4 function escapeRegExp(string) { 5 return string.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); 6 } 7 8 function formatRequest(obj, suffix) { 9 var result = ""; 10 11 for (var key in obj) { 12 if (obj.hasOwnProperty(key)) { 13 var value = obj[key]; 14 15 if (value !== null && value !== undefined) { 16 if (typeof value === "object") { 17 result += formatRequest(value, key); 18 } else { 19 result += encodeURIComponent(key + (suffix || "")) + "=" + encodeURIComponent(value) + "&"; 20 } 21 } 22 } 23 } 24 25 return result; 26 } 27 28 function getCookie(name) { 29 return document.cookie.replace(new RegExp("(?:(?:^|.*;\\s*)" + escapeRegExp(name) + "\\s*\\=\\s*([^;]*).*$)|^.*$"), "$1"); 30 } 31 32 function getParameter(name) { 33 return document.location.search.replace(new RegExp("(?:(?:.*[?&])" + escapeRegExp(name) + "\\=([^&]*).*$)|^.*$"), "$1"); 34 } 35 36 function setCookie(name, value) { 37 document.cookie = name + "=" + encodeURIComponent(value) + "; Domain=.banggood.com; Max-Age=7776000; Path=/; SameSite=None; Secure"; 38 } 39 40 var click = getParameter("cfclick") || getCookie("cfjump-tag-click") || getCookie("cfjump-click"); 41 42 if (click) { 43 setCookie("cfjump-tag-click", click); 44 } 45 46 var gclid = getParameter("cfgclid") || getParameter("gclid") || getCookie("cfjump-tag-gclid") || getCookie("cfjump-gclid"); 47 48 if (gclid) { 49 setCookie("cfjump-tag-gclid", gclid); 50 } 51 52 function recurse(target, source) { 53 for (var i = 0; i < source.length; i++) { 54 var current = source[i]; 55 56 if (current.nodeName.toLowerCase() == "script") { 57 var script = document.createElement("script"); 58 59 for (var j = 0; j < current.attributes.length; j++) { 60 var attr = current.attributes[j]; 61 62 script.setAttribute(attr.name, attr.value); 63 } 64 65 script.text = current.text || current.textContent || current.innerHTML || ""; 66 67 target.appendChild(script); 68 } else if (current.innerHTML && current.innerHTML.toLowerCase().indexOf("<script") != -1) { 69 var childNodes = removeChildNodes(current); 70 71 target.appendChild(current); 72 73 recurse(current, childNodes); 74 } else { 75 target.appendChild(current); 76 } 77 } 78 } 79 80 function removeChildNodes(element) { 81 var childNodes = [ ]; 82 83 while (element.firstChild) { 84 childNodes.push(element.removeChild(element.firstChild)); 85 } 86 87 return childNodes; 88 } 89 90 var container = document.createElement("div"); 91 92 container.innerHTML = "<script type=\"text/javascript\">!function(){var e=document.createElement(\"script\");e.type=\"text/javascript\",e.async=!0,e.src=\"//www.rtb123.com/tags/60CE2906-6735-5900-A7B5-B13CEA2B4908/btp.js\";var t=document.getElementsByTagName(\"head\")[0];t?t.appendChild(e,t):(t=document.getElementsByTagName(\"script\")[0]).parentNode.insertBefore(e,t)}();</script>"; 93 94 recurse(document.body || document.head, removeChildNodes(container)); 95 96 var q = (window.CommissionFactory && window.CommissionFactory.q) || null; 97 98 var request = { }; 99 100 window.CommissionFactory = function (command, key, value) { 101 switch (command) { 102 case "add": { 103 (request[key] = request[key] || [ ]).push(value); 104 105 break; 106 } 107 108 case "set": { 109 request[key] = value; 110 111 break; 112 } 113 114 case "track": { 115 request.client = "browser"; 116 request.token = "e586d8b7385ef385988047f3a8a2c6c58ac6c9f4"; 117 118 if (request.merchant === undefined) { 119 request.merchant = 43831; 120 } 121 122 var click = getParameter("cfclick") || getCookie("cfjump-tag-click") || getCookie("cfjump-click"); 123 124 if (click) { 125 request.click = click; 126 } 127 128 var gclid = getParameter("cfgclid") || getParameter("gclid") || getCookie("cfjump-tag-gclid") || getCookie("cfjump-gclid"); 129 130 if (gclid) { 131 request.gclid = gclid; 132 } 133 134 if (window.performance && window.performance.now) { 135 request.timing = window.performance.now() | 0; 136 } 137 138 var visitor = getCookie("cfjump-tag-visitor") || getCookie("cfjump-visitor"); 139 140 if (visitor) { 141 request.visitor = visitor; 142 } 143 144 if (window.console) { 145 console.log("Commission Factory: master tag is firing conversion tag with following data:"); 146 console.log(request); 147 } 148 149 var newNode = document.createElement("script"); 150 151 newNode.async = true; 152 newNode.src = "https://cfjump.banggood.com/track?" + formatRequest(request); 153 newNode.type = "application/javascript"; 154 155 var referenceNode = document.getElementsByTagName("script")[0]; 156 157 referenceNode.parentNode.insertBefore(newNode, referenceNode); 158 159 request = { }; 160 161 break; 162 } 163 } 164 }; 165 166 if (q !== null) { 167 for (var i = 0; i < q.length; i++) { 168 CommissionFactory.apply(window, q[i]); 169 } 170 } 171})();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.