/** 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	{
			if(grcurl===undefined) 
				return true;
				
			var e;
			var ie_var = "srcElement";
			var moz_var = "target";
			var evento;
			var clase="zona=sinzona";
			if (!l)	
				evento=window.event;
			else 
				evento=l;
			
			var original = evento[moz_var] ? evento[moz_var] : evento[ie_var];				
			var e = original;	
			
			while (e)
			{
				if (e.className && e.className.substr(0,4)=="zona")
				{
					clase="zona="+e.className;
					break;
				}
				else
					e=e.parentElement?e.parentElement:e.parentNode;				
			}

			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="CLICKJPLA:s="+clickHeatSite+"+g="+clickHeatGroup+"+x="+(o+j)+"+y="+(n+g)+"+w="+p+"+b="+clickHeatBrowser+"+c="+c+"+random="+Date()+"+"+clase;
			params="CLICKJPLA:x="+(o+j)+"+y="+(n+g)+"+w="+p+"+b="+clickHeatBrowser+"+c="+c+"+random="+Date()+"+"+clase;
			params="grcuser=" + grcuser + "&grcsesion=" + grcsesion + "&grcidcom=" + grcidcom + "&grcfrom=" + grcfrom + "&grcfecha=" + grcfecha + "&grcidfte="+grcidfte+"&grcidgrupo="+grcidgrupo + "&grcidelem="+grcidelem+"&grcidcat="+grcidcat + "&grcidsubc="+grcidsubc+"&grcidtcon="+grcidtcon+"&grcliga="+grcliga +"+"+params+"&grctit="+grctit + "&grcautornota=" + grcautornota + "&grcjver=" + escape(grcjver); 


			showClickHeatDebug("Ready to send click data...");
			var m=false; 
			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 />Clase = "+clase+'<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)
};