1/* IE8 compability part - begin */ 2 3(function(fn) { 4 if (!fn.map) fn.map = function(f) { var r = []; for (var i = 0; i < this.length; i++) r.push(f(this[i])); return r } 5 if (!fn.filter) fn.filter = function(f) { var r = []; for (var i = 0; i < this.length; i++) 6 if (f(this[i])) r.push(this[i]); 7 return r } 8})(Array.prototype); 9 10if (!Object.prototype.hasOwnProperty) { 11 Object.prototype.hasOwnProperty = function(prop) { 12 var proto = this.__proto__ || this.constructor.prototype; 13 return (prop in this) && (!(prop in proto) || proto[prop] !== this[prop]); 14 }; 15} 16 17if (typeof String.prototype.trim !== 'function') { 18 String.prototype.trim = function() { 19 return this.replace(/^\s+|\s+$/g, ''); 20 } 21} 22 23Object.keys = Object.keys || function(o) { 24 var result = []; 25 for (var name in o) { 26 if (o.hasOwnProperty(name)) 27 result.push(name); 28 } 29 return result; 30}; 31 32/* IE8 compability part - end */ 33 34var NTM; 35 36jQuery(document).ready(function($) { 37 NTM = { 38 version: 5004, 39 track: '', 40 serviceURL: '/includes/ntm.php', 41 pixelURL: '/images/pixel.track2', 42 cookies: {}, 43 urlParams: {}, 44 keys: { 45 'key1': {}, 46 'key2': {}, 47 'key4': {}, 48 'key5': {}, 49 'key6': {}, 50 'key7': {}, 51 'key8': {} 52 }, 53 last_pointers: { 54 'key1': 0, 55 'key2': 0, 56 'key4': 0, 57 'key5': 0, 58 'key6': 0, 59 'key7': 0, 60 'key8': 0 61 }, 62 hasUrlParameter: false, 63 initialVisit: false, 64 cookieDomain: '', 65 start: function() { 66 NTM.Utils.Url.getUrlParams(); 67 NTM.cookieDomain = NTM.Utils.Cookie.getDomainForCookie(NTM.Utils.Url.parseUrl(document.URL, 'host')); 68 NTM.getTrackVal(); 69 NTM.Utils.Cookie.getCookies(); 70 71 var tmpUrl = NTM.Utils.Url.urlComp(document.URL); 72 var pageID = NTM.getPageID(tmpUrl[0]); 73 74 NTM.setKey(7, 0, encodeURIComponent(document.URL)); 75 NTM.setKey(7, 1, pageID); 76 77 NTM.setKey(5, 0, NTM.track == undefined ? '' : NTM.track); 78 79 if (NTM.getKey(5, 1) == '') // key5sk1 is not exist in URL, check for key5sk1 cookie to keep chain if we have an empty referrer 80 { 81 if (NTM.Utils.Cookie.get('key5sk1') == null) { 82 NTM.initialVisit = true; 83 NTM.setKey6Parameters(); 84 85 $.ajax({ 86 url: NTM.serviceURL, 87 type: 'POST', 88 dataType: 'text', 89 data: 'usf=getSHA', 90 async: false, 91 cache: false, 92 success: function(data) { 93 NTM.setKey(5, 1, data); 94 NTM.urlParams['key5sk1'] = data; 95 } 96 }); 97 98 NTM.checkSocialMedia(); 99 NTM.checkKeywords(); 100 NTM.checkChannel(); 101 102 NTM.Utils.Cookie.set('key5sk1', JSON.stringify(NTM.urlParams)); 103 } else { 104 var key5sk1Cookie = NTM.Utils.Cookie.get('key5sk1'); 105 106 if (key5sk1Cookie != null) { 107 var prevPrms = JSON.parse(key5sk1Cookie); 108 109 if (prevPrms != null && prevPrms.hasOwnProperty('key5sk1')) { 110 NTM.setKey(5, 1, prevPrms['key5sk1']) 111 } else { 112 NTM.setKey(5, 1, NTM.Utils.Cookie.get('n_sha')); 113 } 114 } else { 115 NTM.setKey(5, 1, NTM.Utils.Cookie.get('n_sha')); 116 } 117 118 NTM.urlParams['key5sk1'] = NTM.getKey(5, 1); 119 120 for (var i in prevPrms) { 121 if (prevPrms.hasOwnProperty(i) && i != 'key5sk1' && i != 'license') {
122 if (!NTM.urlParams.hasOwnProperty(i)) { 123 NTM.urlParams[i] = prevPrms[i]; 124 125 if (i == 'track' && NTM.track == '' && prevPrms[i] != '') { 126 NTM.track = prevPrms[i]; 127 NTM.setKey(5, 0, NTM.track); 128 } 129 } 130 } 131 } 132 133 NTM.Utils.Cookie.set('key5sk1', JSON.stringify(NTM.urlParams)); 134 } 135 } else { 136 NTM.urlParams['key5sk1'] = NTM.getKey(5, 1); 137 NTM.Utils.Cookie.set('key5sk1', JSON.stringify(NTM.urlParams)); 138 } 139 140 $('a').each(function() { 141 var tmp = $(this).attr('href'); 142 var tmp2 = $(this).attr('class'); 143 144 if (tmp != undefined && tmp2 != 'addthis' && !$(this).hasClass('notrack')) { 145 if (!tmp.match(/youtube\.com\//i) && !tmp.match(/facebook\.com\//i) && !tmp.match(/linkedin\.com\//i) && !tmp.match(/plus\.google\.com\//i) && !tmp.match(/instagram\.com\//i) && !tmp.match(/\.swf$/i) && !tmp.match(/\.flv/gi) && 146 !tmp.match(/liveperson\.net/i) && !tmp.match(/addthis\.com/ig) && !tmp.match(/matousec\.com/i) && 147 !tmp.match(/cpacanada\.ca\//i) && !tmp.match(/mailto:/i) && 148 !tmp.match(/cert.webtrust\.org\//i) && !tmp.match(/mailto:/i) && !tmp.match(/http:\/\/www.comodo.cn/i) && 149 !tmp.match(/http:\/\/www.comodojapan.com/i) && !tmp.match(/http:\/\/www.comodoisrael.com/i) && !tmp.match(/http:\/\/www.comodogroup.it/i) && 150 !tmp.match(/products\/frontpage/i) && !tmp.match(/javascript:/i) && !tmp.match(/\#/i) && 151 !tmp.match(/twitter/i) && !tmp.match(/download.cnet.com/i) && !tmp.match(/support\.comodo\.com/i) && !tmp.match(/secure\.comodo\.com\/products\/publiclyDisclosedSubCACerts/i) && !tmp.match(/http:\/\/thevillagessuntimes.com/i)) { 152 var domain = NTM.Utils.Url.getDomainFromUrl(tmp); 153 154 if (domain == null) { 155 // internal link, do nothing 156 } else // "external" or "internal full" web path 157 { 158 if (/secure\.comodo\.(?:com|net)\/home\/purchase\.php/im.test(domain) || NTM.cookieDomain != NTM.Utils.Cookie.getDomainForCookie(domain)) { 159 var par = NTM.Utils.Url.parametersToString(tmp); 160 161 if (par.length > 0) { 162 if (!tmp.match(/\.php\?/ig) && !tmp.match(/\.html\?/ig) && !tmp.match(/\.htm\?/ig) && !tmp.match(/\?/ig)) { 163 tmp += '?' + par; 164 } else { 165 tmp = tmp.substr(0, tmp.indexOf('?') + 1) + par; 166 } 167 } 168 169 $(this).attr('href', tmp); 170 } 171 } 172 } 173 } 174 }); 175 }, 176 getTrackVal: function() { 177 if (NTM.urlParams.hasOwnProperty('track') && NTM.urlParams.track == parseInt(NTM.urlParams.track)) { 178 NTM.track = NTM.urlParams.track; 179 } else { 180 var t = $("#track"); 181 NTM.track = t.html(); 182 t.remove(); 183 } 184 185 if (NTM.track == undefined) { 186 NTM.track = ''; 187 } 188 189 if (NTM.track == '') { 190 if (typeof(NTM.keys.key5.sk0) != 'undefined' && NTM.keys.key5.sk0 != '') { 191 NTM.track = NTM.keys.key5.sk0; 192 } 193 } 194 }, 195 Utils: { 196 Url: { 197 parseUrl: function(str, component) { 198 var key = ['source', 'scheme', 'authority', 'userInfo', 'user', 'pass', 'host', 'port', 199 'relative', 'path', 'directory', 'file', 'query', 'fragment' 200 ], 201 ini = (this.php_js && this.php_js.ini) || {}, 202 mode = (ini['phpjs.parse_url.mode'] && 203 ini['phpjs.parse_url.mode'].local_value) || 'php', 204 parser = { 205 php: /^(?:([^:\/?#]+):)?(?:\/\/()(?:(?:()(?:([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?()(?:(()(?:(?:[^?#\/]*\/)*)()(?:[^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
206 strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/, 207 loose: /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/\/?)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/ // Added one optional slash to post-scheme to catch file:/// (should restrict this) 208 }; 209 var m = parser[mode].exec(str), 210 uri = {}, 211 i = 14; 212 while (i--) { 213 if (m[i]) { 214 uri[key[i]] = m[i]; 215 } 216 } 217 if (component) { 218 return uri[component.replace('PHP_URL_', '').toLowerCase()]; 219 } 220 if (mode !== 'php') { 221 var name = (ini['phpjs.parse_url.queryKey'] && 222 ini['phpjs.parse_url.queryKey'].local_value) || 'queryKey'; 223 parser = /(?:^|&)([^&=]*)=?([^&]*)/g; 224 uri[name] = {}; 225 uri[key[12]].replace(parser, function($0, $1, $2) { 226 if ($1) { 227 uri[name][$1] = $2; 228 } 229 }); 230 } 231 delete uri.source; 232 return uri; 233 }, 234 getReferrer: function() { 235 var referrer; 236 237 if (document.referrer != '') { 238 var host = NTM.Utils.Url.parseUrl(document.referrer, 'host'); 239 240 if (host.match(/google/i)) { 241 referrer = 'Google'; 242 } else if (host.match(/yahoo/i)) { 243 referrer = 'Yahoo'; 244 } else if (host.match(/bing/i)) { 245 referrer = 'Bing'; 246 } else if (document.URL.indexOf('?', 0) != -1) { 247 referrer = document.URL.substr(0, document.URL.indexOf('?', 0)); 248 } else { 249 referrer = document.URL; 250 } 251 } else { 252 if (document.URL.indexOf('?', 0) != -1) { 253 referrer = document.URL.substr(0, document.URL.indexOf('?', 0)); 254 } else { 255 referrer = document.URL; 256 } 257 } 258 259 return encodeURIComponent(referrer); 260 }, 261 urlComp: function(url) { 262 var tmp = []; 263 264 if (url.indexOf('?', 0) != -1) { 265 tmp[0] = url.substring(0, url.indexOf('?', 0)); 266 tmp[1] = url.substring(url.indexOf('?', 0) + 1, url.length); 267 } else { 268 tmp[0] = url; 269 } 270 271 return tmp; 272 }, 273 parametersToString: function(tmp) { 274 var key; 275 var pars = {}; 276 277 for (key in NTM.urlParams) { 278 if (NTM.urlParams[key] != '') { 279 pars[key] = NTM.urlParams[key]; 280 } 281 } 282 283 var obj = NTM.Utils.Url.combine(tmp); 284 285 for (key in obj) { 286 pars[key] = obj[key]; 287 } 288 289 for (key in NTM.keys) { 290 if (key == 'key5') { 291 for (var subkey in NTM.keys[key]) { 292 if (subkey == 'sk0' || subkey == 'sk1') { 293 if (NTM.keys[key][subkey] != '') { 294 pars[key + subkey] = NTM.keys[key][subkey]; 295 } 296 } 297 } 298 } 299 } 300 301 var str = []; 302 303 for (var i in pars) { 304 str.push(i + '=' + pars[i]); 305 } 306 307 return str.join('&'); 308 }, 309 combine: function(url) { 310 var pos = url.indexOf('?'); 311 312 var pairs = {}; 313 314 if (pos != -1) { 315 var parts = url.substring(pos + 1).split('&'); 316 317 if (parts.length > 0) { 318 parts.map(function(i) { 319 var s = i.split('='); 320 321 if (s.length == 2) { 322 var s0 = NTM.Utils.Url.escape(s[0]); 323 324 if (s0.length > 0) { 325 pairs[s[0]] = NTM.Utils.Url.escape(s[1]); 326 } 327 } 328 }); 329 } 330 } 331 332 return pairs; 333 }, 334 getUrlParams: function() {
335 NTM.urlParams = {}; 336 337 var pos = document.URL.indexOf('?'); 338 339 if (pos != -1) { 340 var parts = document.URL.substring(pos + 1).split('&'); 341 342 if (parts.length > 0) { 343 NTM.hasUrlParameter = true; 344 345 parts.map(function(i) { 346 var s = i.split('='); 347 348 if (s.length == 2) { 349 var s0 = s[0].trim(); 350 var m = s0.match(/^key(\d+)sk(\d+)$/i); 351 352 if (m == null) { 353 NTM.urlParams[s0] = NTM.Utils.Url.escape(s[1]); 354 } else { 355 if ((m[1] == 5 && m[2] < 2) || m[1] == 2 || m[1] == 1) { 356 NTM.setKey(m[1], m[2], NTM.Utils.Url.escape(s[1])); 357 } 358 } 359 } 360 }); 361 } 362 } 363 }, 364 escape: function(unsafe) { 365 366 var dp = unsafe.indexOf('#'); 367 368 if (dp > -1) { 369 unsafe = unsafe.substring(0, dp); 370 } 371 372 return unsafe 373 .replace(/&/g, "&") 374 .replace(/</g, "<") 375 .replace(/>/g, ">") 376 .replace(/"/g, """) 377 .replace(/'/g, "'") 378 .trim(); 379 }, 380 getDomainFromUrl: function(str) { 381 var rg = /^http(?:|s):\/\/([^\/]+)/i; 382 var match = rg.exec(str); 383 if (match != null) { 384 return match[1]; 385 } 386 387 return null; 388 } 389 }, 390 Cookie: { 391 get: function(name) { 392 var nameEQ = name + "="; 393 var ca = document.cookie.split(';'); 394 395 for (var i = 0; i < ca.length; i++) { 396 var c = ca[i]; 397 398 while (c.charAt(0) == ' ') { 399 c = c.substring(1, c.length); 400 } 401 if (c.indexOf(nameEQ) == 0) { 402 return c.substring(nameEQ.length, c.length); 403 } 404 } 405 406 return null; 407 }, 408 getDomainForCookie: function(str) { 409 var m = str.match(/\./g); 410 411 if (m) { 412 switch (m.length) { 413 case 1: 414 return '.' + str; 415 case 2: 416 var p = str.indexOf('.'); 417 return str.substring(p); 418 default: 419 var L1 = str.lastIndexOf('.'); 420 var L2 = str.lastIndexOf('.', L1 - 1); 421 return str.substring(L2); 422 } 423 } 424 425 return str; 426 }, 427 getCookies: function() { 428 NTM.cookies = {}; 429 430 var parts = document.cookie.split(';'); 431 432 if (parts.length > 0) { 433 parts.map(function(i) { 434 var pos = i.indexOf('='); 435 436 if (pos != -1) { 437 NTM.cookies[i.substr(0, pos).trim()] = decodeURIComponent(i.substr(pos + 1)); 438 } 439 }); 440 } 441 }, 442 set: function(name, value, days) { 443 var expires; 444 445 if (days) { 446 var date = new Date(); 447 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 448 expires = "; expires=" + date.toUTCString(); 449 } else { 450 expires = ""; 451 } 452 453 document.cookie = name + "=" + value + expires + ";path=/;domain=" + NTM.cookieDomain + ";"; 454 }, 455 del: function(name) { 456 document.cookie = name + '=; expires=Thu, 2 Aug 2001 20:47:11 UTC; path=/'; 457 } 458 }, 459 DateTime: { 460 getTimestamp: function() { 461 var tmpDate = new Date(); 462 463 return Date.UTC(tmpDate.getUTCFullYear(), tmpDate.getUTCMonth(), tmpDate.getUTCDate(), tmpDate.getUTCHours(), tmpDate.getUTCMinutes(), tmpDate.getUTCSeconds()); 464 } 465 } 466 }, 467 getKey: function(keyIndex, subKeyIndex) { 468 var keyString = 'key' + keyIndex; 469 var subKeyString = 'sk' + subKeyIndex; 470 471 if (NTM.keys.hasOwnProperty(keyString)) { 472 if (NTM.keys[keyString].hasOwnProperty(subKeyString)) { 473 return NTM.keys[keyString][subKeyString]; 474 } 475 } 476 477 return ''; 478 }, 479 setKey: function(keyIndex, subKeyIndex, value) { 480 var keyString = 'key' + keyIndex; 481 var subKeyString = 'sk' + subKeyIndex; 482 var fullKeyString = keyString + subKeyString; 483 484 if (NTM.keys.hasOwnProperty(keyString)) { 485 NTM.keys[keyString]['sk' + subKeyIndex] = value; 486 487 if (subKeyIndex > NTM.last_pointers[keyString]) { 488 NTM.last_pointers[keyString] = parseInt(subKeyIndex); 489 } 490 } 491 }, 492 getPageID: function(url) { 493 var req = $.ajax({ 494 url: NTM.serviceURL, 495 type: 'POST', 496 dataType: 'text', 497 data: 'usf=getUrlId&url=' + encodeURIComponent(url.toLowerCase()), 498 async: false, 499 cache: false, 500 success: function(data) { 501 if ((data.length < 1 || data.length > 10) || isNaN(data)) { 502 data = '0000'; 503 } 504 505 return data; 506 } 507 }); 508 509 if (req.statusText == 'OK') { 510 return req.responseText; 511 } 512 513 return ''; 514 }, 515 setKey6Parameters: function() { 516 $.ajax({ 517 url: NTM.serviceURL, 518 type: 'POST', 519 dataType: 'text', 520 data: 'dataReferrer=' + encodeURIComponent(document.referrer) + '&usf=retrieveInfo', 521 async: false, 522 cache: false, 523 success: function(data) { 524 var parts = data.split('&'); 525 var m; 526 527 if (parts.length > 0) { 528 parts.map(function(i) { 529 var s = i.split('='); 530 531 if (s.length == 2) { 532 m = s[0].match(/key(\d)sk(\d+)/i); 533 534 if (m != null && m.length == 3) { 535 NTM.setKey(m[1], m[2], decodeURIComponent(s[1])); 536 } else { 537 if (s[0] == 'n_sha') { 538 NTM.cookies[s[0]] = s[1]; 539 } 540 } 541 } 542 }); 543 } 544 } 545 }); 546 547 NTM.setKey(6, 7, NTM.Utils.Url.getReferrer()); 548 549 if (FlashDetect.installed) {
550 NTM.setKey(6, 8, FlashDetect.major.toString() + FlashDetect.minor.toString() + FlashDetect.revision.toString()); 551 } 552 553 NTM.setKey(6, 9, screen.width.toString() + screen.height.toString()); 554 NTM.setKey(6, 10, navigator.javaEnabled()); 555 NTM.setKey(6, 11, NTM.cookies.n_sha); 556 NTM.setKey(6, 12, NTM.version); 557 }, 558 setKeyIfNotExists: function(keyIndex, subKeyIndex, value) { 559 var keyString = 'key' + keyIndex; 560 var subKeyString = 'sk' + subKeyIndex; 561 562 if (NTM.keys.hasOwnProperty(keyString)) { 563 if (!NTM.keys[keyString].hasOwnProperty(subKeyString)) { 564 NTM.setKey(keyIndex, subKeyIndex, value); 565 } 566 } 567 }, 568 checkSocialMedia: function() { 569 var ref = document.referrer; 570 var match = ''; 571 572 if (ref.match(/http.:\/\/.*\.facebook\.com.*/i)) { 573 match = 'fb'; 574 } else if (ref.match(/http.:\/\/t\.co\/.*/i)) { 575 match = 'tw'; 576 } else if (ref.match(/http.:\/\/lnkd\.in\/.*/i) || ref.match(/http.:\/\/.*\.linkedin\.com.*/i)) { 577 match = 'li'; 578 } 579 580 if (match != '') { 581 NTM.setKeyIfNotExists(1, 1, 'sm'); 582 NTM.setKeyIfNotExists(1, 2, match); 583 } 584 }, 585 checkChannel: function() { 586 if (NTM.hasUrlParameter || NTM.getKey(6, 7) == 'Google' || NTM.getKey(6, 7) == 'Yahoo' || NTM.getKey(6, 7) == 'Bing') { 587 if (NTM.getKey(1, 1) == 'sem' || NTM.getKey(1, 1) == 'em' || NTM.getKey(1, 1) == 'upl') { 588 NTM.campaignMon.funcSEMEMUPL([NTM.getKey(1, 1), NTM.urlParams["afl"]]); 589 return; 590 } 591 592 if ((NTM.getKey(1, 1) != 'sem' || NTM.getKey(1, 1) != '' || NTM.getKey(1, 1) != 'dt') && (NTM.getKey(6, 7) == 'Google' || NTM.getKey(6, 7) == 'Yahoo' || NTM.getKey(6, 7) == 'Bing')) { 593 NTM.campaignMon.funcORS(NTM.getKey(6, 7)); 594 return; 595 } 596 597 if (NTM.urlParams['rs'] != undefined) { 598 NTM.campaignMon.funcApp(['rs', NTM.urlParams['pid'], NTM.urlParams['rs']]); 599 return; 600 } 601 602 if (NTM.urlParams['d'] != undefined) { 603 NTM.campaignMon.funcApp(['d', NTM.urlParams['stage'], NTM.urlParams['d']]); 604 return; 605 } 606 607 if (typeof(NTM.urlParams['subaffiliateid']) !== 'undefined' && NTM.urlParams['subaffiliateid'] != '') { 608 NTM.campaignMon.funcSTeam(NTM.urlParams['subaffiliateid']); 609 return; 610 } 611 612 if (NTM.getKey(1, 1) == '') { 613 NTM.campaignMon.funcDT(); 614 } 615 } else { 616 NTM.campaignMon.funcDT(); 617 } 618 }, 619 checkKeywords: function() { 620 var m = document.referrer.match(/http(s|):\/\/www\.google\.com.*q=([^&]*).*/i); 621 622 if (m != null && m.length == 3) { 623 if (NTM.getKey(1, 3) == '') { 624 NTM.setKey(1, 3, decodeURIComponent(m[2])); 625 } 626 627 NTM.setKey(6, 1, NTM.getKey(1, 3)); 628 return; 629 } 630 631 m = document.referrer.match(/http:\/\/.*yahoo\.com\/search;.*\?p=([^&]*).*/i); 632 633 if (m != null && m.length == 2) { 634 if (NTM.getKey(1, 3) == '') { 635 NTM.setKey(1, 3, decodeURIComponent(m[1])); 636 } 637 638 NTM.setKey(6, 1, NTM.getKey(1, 3)); 639 return; 640 } 641 642 m = document.referrer.match(/http:\/\/www\.bing\.com.*q=([^&]*).*/i); 643 644 if (m != null && m.length == 2) { 645 if (NTM.getKey(1, 3) == '') { 646 NTM.setKey(1, 3, decodeURIComponent(m[1])); 647 } 648 649 NTM.setKey(6, 1, NTM.getKey(1, 3)); 650 } 651 }, 652 getPixelUrl: function() { 653 var sk; 654 var key; 655 var str = []; 656
657 for (var param in NTM.urlParams) { 658 if (param != 'key5sk1') { 659 str.push(param + '=' + NTM.urlParams[param]); 660 } 661 } 662 663 if (NTM.initialVisit) { 664 for (key in NTM.keys) { 665 if (key == 'key1' || key == 'key2' || key == 'key6' || key == 'key4') { 666 for (sk in NTM.keys[key]) { 667 if (NTM.keys[key][sk] != '') { 668 str.push(key + sk + '=' + NTM.keys[key][sk]); 669 } 670 } 671 } 672 } 673 } 674 675 for (key in NTM.keys) { 676 if (key == 'key5' || key == 'key7') { 677 for (sk in NTM.keys[key]) { 678 if (NTM.keys[key][sk] != '') { 679 str.push(key + sk + '=' + NTM.keys[key][sk]); 680 } 681 } 682 } 683 } 684 685 str.push('rnd=' + Math.floor((Math.random() * 1000000) + 1)); 686 687 return str.join('&'); 688 }, 689 campaignMon: { 690 funcSEMEMUPL: function(args) { 691 NTM.setKeyIfNotExists(1, 1, args[0]); 692 NTM.setKeyIfNotExists(1, 2, NTM.getKey(6, 7)); 693 694 if (args[1]) { 695 NTM.setKeyIfNotExists(1, 5, args[1]); 696 } 697 }, 698 funcORS: function(se) { 699 NTM.setKeyIfNotExists(1, 1, 'ors'); 700 NTM.setKeyIfNotExists(1, 2, NTM.getKey(6, 7)); 701 if (NTM.getKey(6, 1) != '') { 702 NTM.setKeyIfNotExists(1, 3, NTM.getKey(6, 1)); 703 } 704 }, 705 funcApp: function(args) { 706 NTM.setKeyIfNotExists(1, 1, 'app'); 707 708 if (args[0] == 'rs') { 709 NTM.setKeyIfNotExists(1, 2, 'CIS'); 710 NTM.setKeyIfNotExists(1, 3, args[1]); 711 NTM.setKeyIfNotExists(1, 4, args[2]); 712 } else if (args[0] == 'd') { 713 NTM.setKeyIfNotExists(1, 2, 'GBTBA'); 714 NTM.setKeyIfNotExists(1, 3, args[1]); 715 NTM.setKeyIfNotExists(1, 4, args[2]); 716 } 717 }, 718 funcSTeam: function(args) { 719 NTM.setKeyIfNotExists(1, 1, 'st'); 720 NTM.setKeyIfNotExists(1, 5, args); 721 }, 722 funcDT: function() { 723 NTM.setKeyIfNotExists(1, 1, 'dt'); 724 NTM.setKeyIfNotExists(1, 2, NTM.getKey(6, 7)); 725 NTM.setKeyIfNotExists(1, 3, NTM.getKey(6, 1)); 726 } 727 } 728 } 729 730 NTM.start(); 731 732 $(document.body).append('<img src="' + NTM.pixelURL + '?' + NTM.getPixelUrl() + '" style="display:none" />'); 733});
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.