PageSourceSearch

https://icfolson.com/layouts/system/VisitorIdentification.js

js icfolson.com collected 2026-10-02 20:09:50 UTC 2,203 bytes, 73 lines download raw bytes

1function subscribeEvent(event, listener, useCapture) {
2  if (document.addEventListener) {
3    document.addEventListener(event, listener, useCapture);
4  } else if (document.attachEvent) {
5    document.attachEvent(event, listener, useCapture);
6  }
7}
8
9function unsubscribeEvent(event, listener, useCapture) {
10  if (document.removeEventListener) {
11    document.removeEventListener(event, listener, useCapture);
12  } else if (document.detachEvent) {
13    document.detachEvent(event, listener, useCapture);
14  }
15}
16
17function startActivityHandler(e) {
18  unsubscribeEvent("touchstart", arguments.callee, false);
19  document.documentElement.onmousemove = null; // We need it here to turn off mouse move too.
20
21  if (true) {
22    timeoutSleep(0, placeCssAspxRequest);
23  }
24};
25
26document.documentElement.onmousemove = startActivityHandler;
27subscribeEvent("touchstart", startActivityHandler, false);
28
29function placeCheckerRequest() {
30  var stt1 = '/layouts/system';
31  var stt2 = '/VIChecker.aspx?tstamp=';
32  var stt3 = getMetatagContent();
33
34  var fileref = document.createElement('link');
35  fileref.setAttribute('rel', 'stylesheet');
36  fileref.setAttribute('type', 'text/css');
37  fileref.setAttribute('href', stt1 + stt2 + stt3);
38  document.getElementsByTagName("head")[0].appendChild(fileref);
39}
40
41function placeCssAspxRequest() {
42  st1 = '/layouts/system/Visitor';
43  st2 = 'Identification';
44  st3 = 'CSS.aspx?' + new Date().getTime();
45
46  var fileref = document.createElement('link');
47  fileref.setAttribute('rel', 'stylesheet');
48  fileref.setAttribute('type', 'text/css');
49  fileref.setAttribute('href', st1 + st2 + st3);
50  document.getElementsByTagName("head")[0].appendChild(fileref);
51
52  timeoutSleep(30000, placeCheckerRequest);
53}
54
55function timeoutSleep(milliseconds, callbackFunction) {
56  window.setTimeout(
57    function() {
58      callbackFunction();
59    },
60    milliseconds);
61}
62
63function getMetatagContent() {
64  var metas = document.getElementsByTagName('meta');
65
66  for (var i = 0; i < metas.length; i++) {
67    if (metas[i].getAttribute("name") == "VIcurrentDateTime") {
68      return metas[i].getAttribute("content");
69    }
70  }
71
72  return "";
73}

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.