function esborraNotificacions(hiHaNotif)
{
	var noEsborrisFons = (hiHaNotif>0) ? true : false;
	for (var i=0; i<TotalNotificacionsXat; i++)
	{
		notificacio_esborraNotificacio(regNoti[i].idXat, regNoti[i].ran, noEsborrisFons);
		regNoti[i] = "";
	}
	
	TotalNotificacionsXat = 0;
}

function registraNotificacio(idXat, ran)
{
	this.idXat = idXat;
	this.ran = ran;
}


// Notificacions del XAT
var TotalNotificacionsXat = 0;
var regNoti = [];
function notificacio_escriuNotificacio(idXat, idUsuariRemot, nom)
{
	calculaAmpladaAlturaFrame();
	ampladaFrame -= 18;
	getScrollXY();
	calculaAmpladaAlturaDocument();

	var capaNotificacio = document.getElementById("notificacionsDiv");
	if (TotalNotificacionsXat == 0) capaNotificacio.innerHTML = "";
	var fonsCapaNotificacio = document.getElementById("fonsNotificacionsDiv");
	if (capaNotificacio && fonsCapaNotificacio)
	{
		var ran=aleat();
		var tlink = jsNivell+"xat-popup.php?idXat="+idXat+"&idUsuariRemot="+idUsuariRemot;
		var str = "<span id='notificacioXat"+idXat+"Div"+ran+"'>";
		str += "<table cellpadding=0 cellspacint=0 style='width:250px; height:65px;' class='negre'><tr><td align='center' valign='top'>";

		str += "<div id='notificacioCaixaBlanca' style='position:relative; height:65px; width:250px; padding:15px 0 0 0; background-color:#ffffff;'><b><br>"+idma_vols_parlar_amb + " "+nom+"? </b>&nbsp; &nbsp; &nbsp; ";

		str += "<a href='#' onClick='var w=window.open(\""+jsLinkXat+"?idUsuariRemot="+idUsuariRemot+"&idXat="+idXat+"\", \"xat"+idUsuariRemot+"\",jsParametresFinestraXat);w.focus();notificacio_obrirXat("+idXat+","+ran+",w);' class='verd12Link'><b>Si</b></a> ";
		str += " &nbsp; <a href='#' onClick=' notificacio_esborraNotificacio("+idXat+","+ran+",false);xat_eliminaXat("+idXat+"); ' class='verd12Link'><b>No</b></a>";
		
		str += "</div>";
		str += "</td></tr></table>";
		str += "</span>";
		
		_posicionaFonsNotif();
		fonsCapaNotificacio.style.visibility = "visible";
		
		capaNotificacio.style.width = "250px";
		capaNotificacio.style.height= "65px";
		_posicionaNotif(true);
		
		// Registrem l'event onScroll
		if (window.addEventListener) {
			window.addEventListener ("scroll",posicionaCaixaNotificacio,false);
			window.addEventListener ("resize",posicionaCaixaNotificacio,false);
		} else if (window.attachEvent) {
			window.attachEvent ("onscroll",posicionaCaixaNotificacio);
			window.attachEvent ("onresize",posicionaCaixaNotificacio);
		} else {
			window.onscroll = posicionaCaixaNotificacio;
			window.onresize = posicionaCaixaNotificacio;
		}
		
		capaNotificacio.innerHTML += str;
	
		regNoti[TotalNotificacionsXat] = new registraNotificacio(idXat,ran);
		TotalNotificacionsXat++;
	}
	window.focus();
//	alert(nom + " " + idma_vol_parlar_amb_tu);
}

function _posicionaFonsNotif()
{
	var ampl = (ampladaDocument+scrollOffsetX);
	if (ampl < 800) ampl = 800;
	document.getElementById("fonsNotificacionsDiv").style.width = ampl +"px";
	
	var alt = alturaDocument;//+scrollOffsetY;
	document.getElementById("fonsNotificacionsDiv").style.height = alt +"px";
}

function _posicionaNotif(posicio)
{
	var t = (parseInt(alturaFrame/2)+scrollOffsetY-35);
	var l = (parseInt(ampladaFrame/2)+scrollOffsetX-125);
	if (posicio){
		document.getElementById("notificacionsDiv").style.top = t +"px";
		document.getElementById("notificacionsDiv").style.left = l +"px";
	}
	else{
		gPosFinalCaixaNotif_Y = t;
		gPosFinalCaixaNotif_X = l;
	}
}

var gPosFinalCaixaNotif_Y = 0;
var gPosFinalCaixaNotif_X = 0;
var gCaixaNotifMoventse = 0;
function posicionaCaixaNotificacio()
{
	
	var capaNotificacio = document.getElementById("notificacionsDiv")
	if (!capaNotificacio){
		// Desregistrem l'event onScroll
		if (window.removeEventListener) {
			window.removeEventListener("scroll",posicionaCaixaNotificacio,false);
			window.removeEventListener("resize",posicionaCaixaNotificacio,false);
		} else if (window.detachEvent) {
			window.detachEvent ("onScroll",posicionaCaixaNotificacio);
			window.detachEvent ("onResize",posicionaCaixaNotificacio);
		} else {
			window.onscroll = "";
			window.onresize = "";
		}
		return;
	}
	getScrollXY();
	calculaAmpladaAlturaFrame();
	calculaAmpladaAlturaDocument();
	
	// Ajustem la grandāria de la capa de fons
	_posicionaFonsNotif();
	
	// Marquem les posicions X i Y finals de la capa del missatge
	_posicionaNotif(false);

	//Movem la capa de noticicaciķ
	if(gCaixaNotifMoventse == 0)
	{
		gCaixaNotifMoventse = 1;
		mouCaixaNotif(5,5);
	}
}

var preparatPerParar = 0;
function mouCaixaNotif(incy, incx)
{
	var capaNotificacio = document.getElementById("notificacionsDiv")
	ttop = parseInt(capaNotificacio.style.top);
	tleft = parseInt(capaNotificacio.style.left);	

	var ty = (gPosFinalCaixaNotif_Y - ttop)/15.0;
	incy = (incy/1.3)+ty;
	tmpy = parseInt(capaNotificacio.style.top) + incy;

	var tx = (gPosFinalCaixaNotif_X - tleft)/15.0;
	incx = (incx/1.3)+tx;
	tmpx = parseInt(capaNotificacio.style.left) + incx;

	if (Math.abs(ttop-tmpy) < 1 && Math.abs(tleft-tmpx) < 1) preparatPerParar++;
	else preparatPerParar = 0;

	if (preparatPerParar < 60)
	{
		capaNotificacio.style.top = tmpy + "px";
		capaNotificacio.style.left = tmpx + "px";
		setTimeout("mouCaixaNotif(" + incy+ ", " + incx+ ")", 40);
	}
	else
	{
		gCaixaNotifMoventse = 0;
	}

}


function apareixContingutCaixaLateralment(idCaixa, xFinal, inc)
{
	//alert(gInteriorCaixes.length);
	if (idCaixa < gInteriorCaixes.length && gInteriorCaixes[idCaixa]){
		tleft = parseInt(gInteriorCaixes[idCaixa].style.left);
		if ((inc*inc)/2 > 0.00005){
			var ty = (xFinal - tleft)/15.0;
			inc = (inc/1.3)+ty;
			tmp = parseInt(gInteriorCaixes[idCaixa].style.left) + inc;
			gInteriorCaixes[idCaixa].style.left = tmp + "px";
			setTimeout("apareixContingutCaixaLateralment(" +idCaixa+ ","+ xFinal + "," + inc+ ")", 40);
		}
		else{
			gInteriorCaixes[idCaixa].style.left = xFinal;
		}

	}

}


function notificacio_obrirXat(idXat, naleat, win)
{
	notificacio_esborraNotificacio(idXat, naleat, false);
	
	registraXatNotificacio(win, idXat);
}


function notificacio_esborraNotificacio(idXat, naleat, noEsborrisFons)
{
	var capa = document.getElementById("notificacioXat"+idXat+"Div"+naleat);
	if (capa) capa.innerHTML = "";
	TotalNotificacionsXat--;
	
	if (TotalNotificacionsXat == 0 && noEsborrisFons != true){
		var capaNotificacio = document.getElementById("notificacionsDiv");
		var fonsCapaNotificacio = document.getElementById("fonsNotificacionsDiv");
		capaNotificacio.style.width = "10px";
		capaNotificacio.style.height = "10px";
		fonsCapaNotificacio.style.visibility = "hidden";
	}
}


function xat_eliminaXat(idXat)
{
	if (idXat == "") return;
	var ran=aleat();
	var str = jsNivell+"ajax/peticions_ajax.php?consulta=eliminaXat&ran="+ran+"&idXat="+idXat;
	consultaHttp(str);
}

function xat_eliminaXatPerUsuaris(idUsuari1, idUsuari2)
{
	if (idUsuari1 == "" || idUsuari2 == "") return;
	var ran=aleat();
	var str = jsNivell+"ajax/peticions_ajax.php?consulta=eliminaXatPerUsuaris&ran="+ran+"&idUsr1="+idUsuari1+"&idUsr2="+idUsuari2;
	consultaHttp(str);
}



var ampladaFrame = -1;
var alturaFrame = -1;
function calculaAmpladaAlturaFrame()
{
	if (self.innerWidth){
		ampladaFrame = self.innerWidth;
		alturaFrame = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientWidth){
		ampladaFrame = document.documentElement.clientWidth;
		alturaFrame = document.documentElement.clientHeight;
	}
	else if (document.body){
		ampladaFrame = document.body.clientWidth;
		alturaFrame = document.body.clientHeight;
	}
	else{
		ampladaFrame = 0;
		alturaFrame = 0;
	}
}

var ampladaDocument = -1;
var alturaDocument = -1;
function calculaAmpladaAlturaDocument()
{
	if (document.all && document.body && typeof document.body.scrollHeight != 'undefined') {
		alturaDocument = document.body.scrollHeight;
		ampladaDocument = document.body.scrollWidth;
	}
	else if (typeof document.body.offsetHeight != 'undefined'){
		alturaDocument = document.body.offsetHeight;
		ampladaDocument = document.body.offsetWidth;
	}
	else if (typeof document.height != 'undefined'){
		alturaDocument = document.height;
		ampladaDocument = document.width;
	}
}

var scrollOffsetX = -1;
var scrollOffsetY = -1;
function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrollOffsetY = window.pageYOffset;
    scrollOffsetX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrollOffsetY = document.body.scrollTop;
    scrollOffsetX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrollOffsetY = document.documentElement.scrollTop;
    scrollOffsetX = document.documentElement.scrollLeft;
  }
}