/** Code by www.labsmedia.com */
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(a) {
 if(clickHeatDebug==true) {
  document.getElementById("clickHeatDebuggerSpan").innerHTML=a;
  document.getElementById("clickHeatDebuggerDiv").style.display="block"}
}
function catchClickHeat(l) { 
 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 (l==undefined) {
       l=window.event;
       c=l.button;
       element=l.srcElement
    } else { 
       c=l.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 o=l.clientX;
    var n=l.clientY;
    var p=clickHeatDocument.clientWidth!=undefined?clickHeatDocument.clientWidth:window.innerWidth;
    var k=clickHeatDocument.clientHeight!=undefined?clickHeatDocument.clientHeight:window.innerHeight;
    var j=window.pageXOffset==undefined?clickHeatDocument.scrollLeft:window.pageXOffset;
    var g=window.pageYOffset==undefined?clickHeatDocument.scrollTop:window.pageYOffset;
    if (o>p||n>k) {
       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="+(o+j)+"&y="+(n+g)+"&w="+p+"&b="+clickHeatBrowser+"&c="+c+"&random="+Date();
    showClickHeatDebug("Ready to send click data...");
var m=false;if(clickHeatServer.substring(0,4)!="http"){var d=false;try{d=new ActiveXObject("Msxml2.XMLHTTP")}catch(r){try{d=new ActiveXObject("Microsoft.XMLHTTP")}catch(a){d=null}}if(!d&&typeof XMLHttpRequest!=undefined){d=new XMLHttpRequest()}if(d){if(clickHeatDebug==true){d.onreadystatechange=function(){if(d.readyState==4){if(d.status==200){showClickHeatDebug("Click recorded at "+clickHeatServer+" with the following parameters:<br />x = "+(o+j)+" ("+o+"px from left + "+j+"px of horizontal scrolling)<br />y = "+(n+g)+" ("+n+"px from top + "+g+"px of vertical scrolling)<br />width = "+p+"<br />browser = "+clickHeatBrowser+"<br />click = "+c+"<br />site = "+clickHeatSite+"<br />group = "+clickHeatGroup+"<br /><br />Server answer: "+d.responseText)}else{if(d.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 "+d.status+" with the following error: "+d.responseText)
}}clickHeatLocalWait=0}}}d.open("GET",clickHeatServer+"?"+params,true);d.setRequestHeader("Connection","close");d.send(null);m=true}}if(m==false){if(clickHeatDebug==true){showClickHeatDebug("Click recorded at "+clickHeatServer+" with the following parameters:<br />x = "+(o+j)+" ("+o+"px from left + "+j+"px of horizontal scrolling)<br />y = "+(n+g)+" ("+n+"px from top + "+g+"px of vertical scrolling)<br />width = "+p+"<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 q=new Image();q.src=clickHeatServer+"?"+params}}var b=new Date();clickHeatLocalWait=b.getTime()+clickHeatWait;while(clickHeatLocalWait>b.getTime()){b=new Date()}}catch(f){showClickHeatDebug("An error occurred while processing click (Javascript error): "+l.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 a=navigator.userAgent!=undefined?navigator.userAgent.toLowerCase().replace(/-/g,""):"";
clickHeatBrowser=a.replace(/iceweasel/,"firefox").replace(/^.*(firefox|kmeleon|safari|msie|opera).*$/,"$1");if(a==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)};

