//############### //# VARIABLES //############### var inittime = new Date(); var eventid = 0; //############### //# ERRORS //############### var errormap = ""; function captureerror(errormessage,errorurl,errorline) { var errortime = new Date(); errormessage = errormessage.replace(/&/g,"%26"); errormessage = errormessage.replace(/&/g,"%26"); errormessage = errormessage.replace(/\=/g,"%3d"); errormessage = errormessage.replace(/ maxscrolltop) { maxscrolltop = scrolltop; } if (scrollleft > maxscrollleft) { maxscrollleft = scrollleft; } } //############### //# CLICKS //############### var clickmap = ""; function captureclick(e) { var clicktime = new Date(); e = e || window.event; var clicksrc = e.target || e.srcElement; if (clicksrc.tagName == "A" || clicksrc.parentNode.tagName == "A" || clicksrc.type == "submit") { if (clickmap.length == 0) { clickmap = xpos(clicksrc) + "," + ypos(clicksrc); } else { clickmap = clickmap + " " + xpos(clicksrc) + "," + ypos(clicksrc); } } } //############### //# EVENTS //############### if (window.attachEvent) { window.onerror = captureerror; window.attachEvent("onbeforeunload",unloaddata); window.attachEvent("onload",loaddata); window.attachEvent("onscroll",capturescroll); document.attachEvent("onclick",captureclick); } else if(window.addEventListener) { window.onerror = captureerror; window.addEventListener("beforeunload",unloaddata,false); window.addEventListener("load",loaddata,false); window.addEventListener("scroll",capturescroll,false); window.addEventListener("click",captureclick,false); } else { window.onerror = captureerror; window.onbeforeunload = unloaddata; window.onload = loaddata; window.onscroll = capturescroll; window.onclick = captureclick; } //############### //# IMAGES //############### var imagemap = ""; function initimages() { images = document.getElementsByTagName("IMG"); for(i=0; i < images.length; i++) { if (images[i].naturalWidth) { if (typeof images[i].naturalWidth != "undefined" && images[i].naturalWidth == 0) { if (imagemap.length == 0) { imagemap = images[i].src; } else { imagemap = imagemap + "," + images[i].src; } } } else { if (!images[i].complete) { if (imagemap.length == 0) { imagemap = images[i].src; } else { imagemap = imagemap + "," + images[i].src; } } } } } //############### //# INPUTS //############### var inputmap = ""; var textbox = ""; var combobox = ""; function initinputs() { textbox = document.getElementsByTagName("INPUT"); for(i=0; i < textbox.length; i++) { if (window.attachEvent) { textbox[i].attachEvent("onblur",inputonblur); } else if(window.addEventListener) { textbox[i].addEventListener("blur",inputonblur,false); } else { textbox[i].onblur = inputonblur; } } combobox = document.getElementsByTagName("SELECT"); for(i=0; i < combobox.length; i++) { if (window.attachEvent) { combobox[i].attachEvent("onblur",inputonblur); } else if(window.addEventListener) { combobox[i].addEventListener("blur",inputonblur,false); } else { combobox[i].onblur = inputonblur; } } } function inputonblur(e) { var onblurtime = new Date(); var inputindex = 0; var inputvalue = ""; e = e || window.event; var inputsrc = e.target || e.srcElement; for(i=0; i < textbox.length; i++) { if(textbox[i] == inputsrc) { inputindex = i; inputvalue = inputsrc.value.length; } } for(i=0; i < combobox.length; i++) { if(combobox[i] == inputsrc) { inputindex = i; inputvalue = inputsrc.selectedIndex; } } if (parseInt(inputvalue) > 0 && inputsrc.type != "submit") { if (inputmap.length == 0) { inputmap = inputindex + "," + inputsrc.type + "," + inputvalue + "," + parseInt(onblurtime - inittime); } else { inputmap = inputmap + " " + inputindex + "," + inputsrc.type + "," + inputvalue + "," + parseInt(onblurtime - inittime); } } } //############### //# FORMS //############### var formmethod = ""; function initforms() { var form = document.getElementsByTagName("FORM"); for(i=0; i < form.length; i++) { if (window.attachEvent) { form[i].attachEvent("onsubmit",formsubmit); } else if(window.addEventListener) { form[i].addEventListener("submit",formsubmit,false); } else { form[i].onsubmit = formsubmit; } } } function formsubmit(e) { e = e || window.event; var inputsrc = e.target || e.srcElement; formmethod = inputsrc.method; } //############### //# UNLOAD //############### function unloaddata() { var exittime = new Date(); var postdata = "" + "timeonpage=" + parseInt(exittime - inittime) + "&maxscrolltop=" + maxscrolltop + "&maxscrollleft=" + maxscrollleft + "&clickmap=" + clickmap + "&textboxcount=" + textbox.length + "&comboboxcount=" + combobox.length + "&inputmap=" + inputmap + "&formmethod=" + formmethod + "&errormap=" + errormap; postdata = escape(postdata); eventid = 2; postformdata(postdata); } //############### //# LOAD //############### function loaddata() { initimages(); initinputs(); initforms(); var loadtime = new Date(); var filesize = document.documentElement.innerHTML.length ? document.documentElement.innerHTML.length : document.fileSize; var windowwidth = document.body.clientWidth ? document.body.clientWidth : window.outerWidth; var windowheight = document.body.clientHeight ? document.body.clientHeight : window.outerHeight; var scrollwidth = document.body.scrollWidth ? document.body.scrollWidth : document.width; var scrollheight = document.body.scrollHeight ? document.body.scrollHeight : document.height; var referer = document.referrer; referer = referer.replace(/&/g,"%26"); referer = referer.replace(/\=/g,"%3d"); var postdata = "" + "protocol=" + "&address=" + "&filename=" + "&querystring=" + "&remotehost=18.225.255.134" + "&useragent=Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" + "&referer=" + referer + "&filesize=" + filesize + "&htmlloadtime=" + parseInt(loadtime - inittime) + "&screenwidth=" + screen.width + "&screenheight=" + screen.height + "&windowwidth=" + windowwidth + "&windowheight=" + windowheight + "&scrollwidth=" + scrollwidth + "&scrollheight=" + scrollheight + "&imagemap=" + imagemap; postdata = escape(postdata); eventid = 0; postformdata(postdata); } //############### //# POST //############### function postformdata(postdata) { postdata = "siteid=&hitid=61ab6123-61d1-4c77-98a0-ae8000038296&eventid=" + eventid + "&postdata=" + postdata; var http_request = new ActiveXObject("Msxml2.XMLHTTP"); http_request.open("POST","../../shared/aspx/app_capture.aspx",true); http_request.setRequestHeader("Content-type","application/x-www-form-urlencoded"); http_request.setRequestHeader("Content-length",postdata.length); http_request.setRequestHeader("Connection","close"); http_request.send(postdata); if (eventid == 0) { var htmlsource = document.documentElement.innerHTML; htmlsource = htmlsource.replace(/&/g,"%26"); htmlsource = htmlsource.replace(/&/g,"%26"); htmlsource = htmlsource.replace(/\=/g,"%3d"); htmlsource = htmlsource.replace(/