document.observe("dom:loaded",function(){if(clickHeatSite){initClickHeat()}});var clickHeatGroup="";var clickHeatSite="";var clickHeatServer="";var clickHeatLastIframe=-1;var clickHeatTime=0;var clickHeatQuota=-1;var clickHeatBrowser="";var clickHeatDocument="";var clickHeatWait=500;var clickHeatLocalWait=0;var clickHeatDebug=(window.location.href.search(/debugclickheat/)!==-1);function showClickHeatDebug(b){if(clickHeatDebug===true){document.getElementById("clickHeatDebuggerSpan").innerHTML=b;
document.getElementById("clickHeatDebuggerDiv").style.display="block"}}function catchClickHeat(w){try{showClickHeatDebug("Gathering click data...");if(clickHeatQuota===0){showClickHeatDebug("Click not logged: quota reached");return true}if(clickHeatGroup===""){showClickHeatDebug("Click not logged: group name empty (clickHeatGroup)");return true}if(w===undefined){w=window.event;c=w.button;element=w.srcElement
}else{c=w.which;element=null}if(c===0){showClickHeatDebug("Click not logged: no button pressed");return true}if(element!==null&&element.tagName.toLowerCase()==="iframe"){if(element.sourceIndex===clickHeatLastIframe){showClickHeatDebug("Click not logged: same iframe (a click on iframe opens a popup and popup is closed => iframe gets the focus again)");return true}clickHeatLastIframe=element.sourceIndex
}else{clickHeatLastIframe=-1}var t=w.clientX;var u=w.clientY;var s=clickHeatDocument.clientWidth!==undefined?clickHeatDocument.clientWidth:window.innerWidth;var x=clickHeatDocument.clientHeight!==undefined?clickHeatDocument.clientHeight:window.innerHeight;var y=window.pageXOffset===undefined?clickHeatDocument.scrollLeft:window.pageXOffset;var z=window.pageYOffset===undefined?clickHeatDocument.scrollTop:window.pageYOffset;
if(t>s||u>x){showClickHeatDebug("Click not logged: out of document (should be a click on scrollbars)");return true}clickTime=new Date();if(clickTime.getTime()-clickHeatTime<1000){showClickHeatDebug("Click not logged: at least 1 second between clicks");return true}clickHeatTime=clickTime.getTime();if(clickHeatQuota>0){clickHeatQuota=clickHeatQuota-1}params="s="+clickHeatSite+"&g="+clickHeatGroup+"&x="+(t+y)+"&y="+(u+z)+"&w="+s+"&b="+clickHeatBrowser+"&c="+c+"&random="+Date();
showClickHeatDebug("Ready to send click data...");var v=false;if(clickHeatServer.substring(0,4)!=="http"){var B=false;try{B=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){try{B=new ActiveXObject("Microsoft.XMLHTTP")}catch(D){B=null}}if(!B&&typeof XMLHttpRequest!==undefined){B=new XMLHttpRequest()}if(B){if(clickHeatDebug===true){B.onreadystatechange=function(){if(B.readyState===4){if(B.status===200){showClickHeatDebug("Click recorded at "+clickHeatServer+" with the following parameters:<br />x = "+(t+y)+" ("+t+"px from left + "+y+"px of horizontal scrolling)<br />y = "+(u+z)+" ("+u+"px from top + "+z+"px of vertical scrolling)<br />width = "+s+"<br />browser = "+clickHeatBrowser+"<br />click = "+c+"<br />site = "+clickHeatSite+"<br />group = "+clickHeatGroup+"<br /><br />Server answer: "+B.responseText)
}else{if(B.status===404){showClickHeatDebug("click.php was not found at: "+(clickHeatServer!==""?clickHeatServer:"/clickheat/click.php")+" please set clickHeatServer value")}else{showClickHeatDebug("click.php returned a status code "+B.status+" with the following error: "+B.responseText)}}clickHeatLocalWait=0}}}B.open("GET",clickHeatServer+"?"+params,true);B.setRequestHeader("Connection","close");B.send(null);
v=true}}if(v===false){if(clickHeatDebug===true){showClickHeatDebug("Click recorded at "+clickHeatServer+" with the following parameters:<br />x = "+(t+y)+" ("+t+"px from left + "+y+"px of horizontal scrolling)<br />y = "+(u+z)+" ("+u+"px from top + "+z+"px of vertical scrolling)<br />width = "+s+"<br />browser = "+clickHeatBrowser+"<br />click = "+c+"<br />site = "+clickHeatSite+"<br />group = "+clickHeatGroup+'<br /><br />Server answer:<br /><iframe src="'+clickHeatServer+"?"+params+'" width="700" height="60"></iframe>')
}else{var h=new Image();h.src=clickHeatServer+"?"+params}}var C=new Date();clickHeatLocalWait=C.getTime()+clickHeatWait;while(clickHeatLocalWait>C.getTime()){C=new Date()}}catch(A){showClickHeatDebug("An error occurred while processing click (Javascript error): "+w.message)}return true}function initClickHeat(){if(clickHeatDebug===true){document.write('<div id="clickHeatDebuggerDiv" style="padding:5px; display:none; position:absolute; top:10px; left:10px; border:1px solid #888; background-color:#eee; z-index:99;"><strong>ClickHeat debug: <a href="#" onmouseover="document.getElementById(\'clickHeatDebuggerDiv\').style.display = \'none\'; return false">Rollover to close</a></strong><br /><br /><span id="clickHeatDebuggerSpan"></span></div>')
}if(clickHeatGroup===""||clickHeatServer===""){showClickHeatDebug("ClickHeat NOT initialised: either clickHeatGroup or clickHeatServer is empty");return false}domain=window.location.href.match(/http:\/\/[^/]+\//);if(domain!==null&&clickHeatServer.substring(0,domain[0].length)===domain[0]){clickHeatServer=clickHeatServer.substring(domain[0].length-1,clickHeatServer.length)}if(document.addEventListener){document.addEventListener("mousedown",catchClickHeat,false)
}else{if(document.attachEvent){document.attachEvent("onmousedown",catchClickHeat)}}iFrames=document.getElementsByTagName("iframe");for(i=0;i<iFrames.length;i++){if(document.addEventListener){iFrames[i].addEventListener("focus",catchClickHeat,false)}else{if(document.attachEvent){iFrames[i].attachEvent("onfocus",catchClickHeat)}}}clickHeatDocument=(document.documentElement!==undefined&&document.documentElement.clientHeight!==0)?document.documentElement:document.body;
var b=navigator.userAgent!==undefined?navigator.userAgent.toLowerCase().replace(/-/g,""):"";clickHeatBrowser=b.replace(/iceweasel/,"firefox").replace(/^.*(firefox|kmeleon|safari|msie|opera).*$/,"$1");if(b===clickHeatBrowser||clickHeatBrowser===""){clickHeatBrowser="unknown"}showClickHeatDebug("ClickHeat initialised with:<br />site = "+clickHeatSite+"<br />group = "+clickHeatGroup+"<br />server = "+clickHeatServer+"<br />quota = "+(clickHeatQuota===-1?"unlimited":clickHeatQuota)+"<br /><br />browser = "+clickHeatBrowser)
};