var clickHeatGroup="",clickHeatSite="",clickHeatServer="",clickHeatLastIframe=-1,clickHeatTime=0,clickHeatQuota=-1,clickHeatBrowser="",clickHeatDocument="",clickHeatWait=500,clickHeatLocalWait=0,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(b){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(b==undefined){b=window.event;c=b.button;element=b.srcElement}else{c=b.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 d=b.clientX,e=b.clientY,h=clickHeatDocument.clientWidth!=undefined?clickHeatDocument.clientWidth:window.innerWidth,j=clickHeatDocument.clientHeight!=undefined?clickHeatDocument.clientHeight:window.innerHeight,f=window.pageXOffset==undefined?clickHeatDocument.scrollLeft:window.pageXOffset,g=window.pageYOffset==undefined?clickHeatDocument.scrollTop:window.pageYOffset;if(d>h||e>j){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-=1;params="s="+clickHeatSite+"&g="+clickHeatGroup+"&x="+(d+f)+"&y="+(e+g)+"&w="+h+"&b="+clickHeatBrowser+"&c="+c+"&random="+Date();showClickHeatDebug("Ready to send click data...");j=false;if(clickHeatServer.substring(0,4)!="http"){var a=false;try{a=new ActiveXObject("Msxml2.XMLHTTP")}catch(m){try{a=new ActiveXObject("Microsoft.XMLHTTP")}catch(n){a=null}}if(!a&&typeof XMLHttpRequest!=undefined)a=new XMLHttpRequest;if(a){if(clickHeatDebug==true)a.onreadystatechange=function(){if(a.readyState==4){if(a.status==200)showClickHeatDebug("Click recorded at "+clickHeatServer+" with the following parameters:<br />x = "+
(d+f)+" ("+d+"px from left + "+f+"px of horizontal scrolling)<br />y = "+(e+g)+" ("+e+"px from top + "+g+"px of vertical scrolling)<br />width = "+h+"<br />browser = "+clickHeatBrowser+"<br />click = "+c+"<br />site = "+clickHeatSite+"<br />group = "+clickHeatGroup+"<br /><br />Server answer: "+a.responseText);else a.status==404?showClickHeatDebug("click.php was not found at: "+(clickHeatServer!=""?clickHeatServer:"/clickheat/click.php")+" please set clickHeatServer value"):showClickHeatDebug("click.php returned a status code "+
a.status+" with the following error: "+a.responseText);clickHeatLocalWait=0}};a.open("GET",clickHeatServer+"?"+params,true);a.setRequestHeader("Connection","close");a.send(null);j=true}}if(j==false)if(clickHeatDebug==true)showClickHeatDebug("Click recorded at "+clickHeatServer+" with the following parameters:<br />x = "+(d+f)+" ("+d+"px from left + "+f+"px of horizontal scrolling)<br />y = "+(e+g)+" ("+e+"px from top + "+g+"px of vertical scrolling)<br />width = "+h+"<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 l=new Image;l.src=clickHeatServer+"?"+params}var k=new Date;for(clickHeatLocalWait=k.getTime()+clickHeatWait;clickHeatLocalWait>k.getTime();)k=new Date}catch(o){showClickHeatDebug("An error occurred while processing click (Javascript error): "+b.message)}return true}
function initClickHeat(){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:\/\/[^/]+\
catchClickHeat,false);else 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)};