var precparle="";
var heureprec="";
var ajaxencours=0;
var intervalle=10000;
var convson=1;

/*wa="0123456789"
wtxt=""
for (wj=1;wj<=60;wj++) {
	for (wi=0; wi<10; wi++) {
		wtxt=wtxt + wa;
	}
	Ecrire_Cookie("tst", wtxt, 1);
}
wc=""
wc=Lire_Cookie("tst");
var tailcookie=wc.length;
alert("taille max cookie : "+tailcookie);*/

function InitConv() {
	// recharge les boites si existent
	var convchaine=Lire_Cookie("conv");
	if (convchaine!="") {
		var convlist=convchaine.split("|");
		var convnb=convlist.length;
		var i=0;
		for (i=0; i<convnb; i++) {
			var convelt=convlist[i].split(",");
			var nomboite=convelt[0]; var num=parseInt(convelt[1]); var gauche=parseInt(convelt[2]); var haut=parseInt(convelt[3]); var ouvert=parseInt(convelt[4]);
			var offsetx = (document.documentElement && document.documentElement.scrollLeft) || window.pageXOffset || self.pageXOffset || document.body.scrollLeft;
			var offsety = (document.documentElement && document.documentElement.scrollTop) || window.pageYOffset || self.pageYOffset || document.body.scrollTop;
			document.getElementById("conv"+num).style.display='block';
			document.getElementById("conv"+num).style.left= gauche + offsetx +"px";
			document.getElementById("conv"+num).style.top= haut + offsety +"px";
			document.getElementById("convqui"+num).innerHTML = nomboite;
			imtxt=Lire_Cookie(nomboite);
			var msglist=imtxt.split("|");
			var msgnb=msglist.length-1;
			// alert(msgnb+" messages dans :"+imtxt);
			var j = 0;
			var affhtml=""
			for (j=0; j<msgnb; j++) {
				var msg=msglist[j]
				var car=msg.substr(0,1)
				// alert(msg);
				if (car>="0" && car<="9") {
					heure=msg.substr(0,2)+":"+msg.substr(2,2);
					car=msg.substr(4,1)
					texte=msg.substring(5);
				} else {
					heure=""
					car=msg.substr(0,1)
					texte=msg.substring(1);
				}
				if (heure=="") {
					affhtml = affhtml + "<div>" + texte + "</div>";
				} else {
					affhtml = affhtml + "<div style='border-top:solid #808080 1px;'>";
					if (car=="E") { affhtml = affhtml+"<font color=#666666><b>" + usrnom   + "</b></font>"; precparle=usrnom; }
					if (car=="R") { affhtml = affhtml+"<font color=#000000><b>" + nomboite + "</b></font>"; precparle=nomboite; }
					affhtml = affhtml + "<span class='convheure'>"+heure+"</span><br />";
					affhtml = affhtml + texte + "</div>";
				}
				heureprec=heure;
				// alert(affhtml)
			}
			document.getElementById("convtext"+num).innerHTML = affhtml;
			document.getElementById("convtext"+num).scrollTop=document.getElementById("convtext"+num).scrollHeight;
			if (ouvert==0) RedimConv(num);
			if (ie) {
				if (num==1) convtitre1.onmousedown=beginDrag1;
				if (num==2) convtitre2.onmousedown=beginDrag2;
				if (num==3) convtitre3.onmousedown=beginDrag3;
				if (num==4) convtitre4.onmousedown=beginDrag4;
			}else{
				if (num==1) document.getElementById("convtitre1").addEventListener("mousedown",beginDrag1, false);
				if (num==2) document.getElementById("convtitre2").addEventListener("mousedown",beginDrag2, false);
				if (num==3) document.getElementById("convtitre3").addEventListener("mousedown",beginDrag3, false);
				if (num==4) document.getElementById("convtitre4").addEventListener("mousedown",beginDrag4, false);
			}
		}
	}
	// Actualise les boites
	f5();
}

	function getHTTPObject() {
		var xhr=null;
		if(window.XMLHttpRequest) // Firefox et autres
			xhr = new XMLHttpRequest();
		else if(window.ActiveXObject){ // Internet Explorer
			try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP");
			} catch (e) {
				try {
					xhr = new ActiveXObject("Microsoft.XMLHTTP");
				} catch (e1) {
					xhr = null;
				}
			}
		} else { // XMLHttpRequest non supporté par le navigateur
			alert("Votre navigateur ne gère pas les objets XMLHTTPRequest...");
		}
		return xhr;
	}

	function OpenConv(qui) {
		var convchaine=Lire_Cookie("conv");
		if (convchaine=="") {
			convnb=0;
		} else {
			var convlist=convchaine.split("|");
			var convnb=convlist.length;
		}
		if (convnb < convmaxnb) {
			var trouve=0;
			if (convnb>0) {
				var convqui=new Array;
				var convnum=new Array;
				var i = 0;
				for (i=0; i<convnb; i++) {
					var convelt=convlist[i].split(",");
					convqui[i]=convelt[0];
					convnum[i]=convelt[1];
					if (qui == convqui[i]) trouve=i;
				}
			}
			if (trouve == 0) {
				// crée conv
				var i = convnb+1;
				document.getElementById("conv"+i).style.display='block';
				var offsetx = (document.documentElement && document.documentElement.scrollLeft) || window.pageXOffset || self.pageXOffset || document.body.scrollLeft;
				var offsety = (document.documentElement && document.documentElement.scrollTop) || window.pageYOffset || self.pageYOffset || document.body.scrollTop;
				var posx = 880 - (i*20)
				var posy = 300 - (i*20)
				document.getElementById("conv"+i).style.left = offsetx + posx + "px";
				document.getElementById("conv"+i).style.top = offsety + posy + "px";
				document.getElementById("convqui"+i).innerHTML = qui;

				if (ie) {
					if (i==1) convtitre1.onmousedown=beginDrag1;
					if (i==2) convtitre2.onmousedown=beginDrag2;
					if (i==3) convtitre3.onmousedown=beginDrag3;
				}else{
					if (i==1) document.getElementById("convtitre1").addEventListener("mousedown",beginDrag1, false);
					if (i==2) document.getElementById("convtitre2").addEventListener("mousedown",beginDrag2, false);
					if (i==3) document.getElementById("convtitre3").addEventListener("mousedown",beginDrag3, false);
				}
				if (convchaine!="") convchaine=convchaine + "|" ;
				convchaine=convchaine + qui + "," + i + "," + posx + "," + posy + "," + 1;
				Ecrire_Cookie("conv", convchaine, 1);
				document.getElementById("convmsg"+i).style.display="block";
				document.getElementById("convmsg"+i).focus();
			}
		}
	}

	function envoi(num) {
		var qui = document.getElementById("convqui"+num).innerHTML;
		var texte = document.getElementById("convmsg"+num).value;
		if (texte!="") {
			document.getElementById("musique").innerHTML = "";
			ajaxencours=1;
			document.getElementById("convmsg"+num).style.display="none";
			var xhr = getHTTPObject();
			xhr.onreadystatechange = function() {
				if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) {
					// ajout à cookie
					Today = new Date; hh = Today.getHours(); mn = Today.getMinutes();
					if (hh<10) hh="0"+hh;
					if (mn<10) mn="0"+mn;
					var heure=hh+":"+mn;
					var imtxt=Lire_Cookie(qui);
					var ajout=""
					if (heure!=heureprec) ajout = ajout + hh + mn;
					ajout = ajout + "E" + texte + "|"
					while ((ajout.length+imtxt.length)>2400) {
						// reduire taille cookie
						var deb = imtxt.indexOf("|") + 1
						imtxt = imtxt.substring(deb);
					}
					imtxt += ajout
					Ecrire_Cookie(qui, imtxt, 1);
					// Affichage
					if (usrnom!=precparle || heure!=heureprec) {
						var affhtml = "<div style='border-top:solid #808080 1px;'>";
						affhtml = affhtml+"<font color=#666666><b>" + usrnom + "</b></font><span class='convheure'>"+heure+"</span><br />";
					} else {
						var affhtml = "<div>";
					}
					affhtml = affhtml + texte + "</div>";
					precparle=usrnom; heureprec=heure;
					document.getElementById("convtext"+num).innerHTML = document.getElementById("convtext"+num).innerHTML + affhtml;
					document.getElementById("convtext"+num).scrollTop=document.getElementById("convtext"+num).scrollHeight;
					document.getElementById("convmsg"+num).value="";
					intervalle=Math.max(2000,intervalle/2);
					document.getElementById("convmsg"+num).style.display="block";
					document.getElementById("convmsg"+num).focus();
					ajaxencours=0;
				}
			};
			xhr.open("GET","im_ajx.php?opt=envoi&qui="+qui+"&texte="+texte, true);
			xhr.send(null);
		}
	}

	function f5() 	{
		if (ajaxencours==0) {
		var xhr = getHTTPObject();
		xhr.onreadystatechange = function() {
			if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) {
				var reponse=xhr.responseText;
				if (reponse=="") {
					intervalle=Math.min(10000,intervalle*2);
				} else {
					// reponse du style NomBoite|QuiParle|Que dit il[.]Seth|Momo|Msg de Momo  ...
					intervalle=Math.max(2000,intervalle/2);
					var msglist=reponse.split("[.]");
					var msgnb=msglist.length;
					var i = 0;
					var son=0;
					for (i=0; i<msgnb; i++) {
						var msgelt=msglist[i].split("|");
						var nomboite=msgelt[0];
						var quiparle=msgelt[1];
						var texte=msgelt[2];
						// alert("msg:"+msglist[i]+" quiparle:"+quiparle);
						if (texte!="") {
							son=1
							texte = texte.replace(/\\\'/g,"'");
							texte = texte.replace(/\\\"/g,'"');
							var num=ChercheNum(nomboite);
							if (num==0 && quiparle!="SystemClose" && quiparle!="System") {
								OpenConv(nomboite);
								num=ChercheNum(nomboite);
							}
							if (num!=0) {
								var imtxt=Lire_Cookie(nomboite);
								// ajout à cookie
								Today = new Date; hh = Today.getHours(); mn = Today.getMinutes();
								if (hh<10) hh="0"+hh;
								if (mn<10) mn="0"+mn;
								var heure=hh+":"+mn;
								var ajout=""
								if (quiparle=="SystemClose") {
									ajout = ajout + "K" + texte + "|"
								} else {
									if (quiparle=="System") {
										ajout = ajout + "S" + texte + "|"
									} else {
										if (heure!=heureprec) ajout = ajout + hh + mn;
										ajout = ajout + "R" + texte + "|"
									}
								}
								while ((ajout.length+imtxt.length)>2400) {
									// reduire taille cookie
									var deb = imtxt.indexOf("|") + 1
									imtxt = imtxt.substring(deb);
								}
								imtxt += ajout
								Ecrire_Cookie(nomboite, imtxt, 1);

								// Affichage
								if (quiparle=="SystemClose" || quiparle=="System") {
									affhtml = "<div>" + texte + "</div>";
									if (num!=0 && quiparle=="SystemClose") document.getElementById("convmsg"+num).style.display="none";
								} else {
									if (quiparle!=precparle || heure!=heureprec) {
										var affhtml = "<div style='border-top:solid #808080 1px;'>";
										affhtml = affhtml+"<b>" + quiparle + "</b><span class='convheure'>"+heure+"</span><br />";
										precparle=quiparle; heureprec=heure;
									} else {
										var affhtml = "<div>";
									}
									affhtml = affhtml + texte + "</div>";
								}
								document.getElementById("convtext"+num).innerHTML = document.getElementById("convtext"+num).innerHTML + affhtml;
								document.getElementById("convtext"+num).scrollTop=document.getElementById("convtext"+num).scrollHeight;
								o=document.getElementById("convcontenu"+num).style;
								if (o.overflow=="hidden") {
									document.getElementById("convatt"+num).style.display="block";
								} else {
									document.getElementById("convatt"+num).style.display="none";
								}
							}
						}
					}
					if (num!=0 && convson==1 && son==1) {
						document.getElementById("musique").innerHTML = '<object type="audio/mpeg" width="0" height="0" data="msg.wav"><param name="filename" value="msg.wav" /><param name="autostart" value="true" /><param name="loop" value="false" /></object>';
					}

				}
			}
		};
		xhr.open("GET","im_ajx.php?opt=f5", true);
		xhr.send(null);
		window.setTimeout('f5()', intervalle);
		}
	}

	function FermeConv(num) {
		var qui = document.getElementById("convqui"+num).innerHTML;
		// ferme boite
		document.getElementById("convtext"+num).innerHTML = "";
		document.getElementById("conv"+num).style.display='none';
		var qui = document.getElementById("convqui"+num).innerHTML;
		// détruit cookie
		var convchaine=Lire_Cookie("conv");
		var convlist=convchaine.split("|");
		var convnb=convlist.length;
		convchaine="";
		var i = 0;
		for (i=0; i<convnb; i++) {
			var convelt=convlist[i].split(",");
			if (convelt[1]!=num) {
				if (convchaine!="") convchaine=convchaine + "|" ;
				convchaine=convchaine + convlist[i];
			}
		}
		Ecrire_Cookie("conv", convchaine, 1);
		Detruire_Cookie(qui);
		// envoi msg ferme conv
		xhr = getHTTPObject();
		xhr.onreadystatechange = function() {
			if(xhr.readyState == 4) {
				if(xhr.status == 200) {
				} else {
					sts="Erreur " + xhr.status + " : " + xhr.statusText;
					document.getElementById("convmsg"+i).value=sts;
				}
			}
		};
		xhr.open("GET","im_ajx.php?opt=ferme&qui="+qui, true);
		xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		xhr.send(null);
	}

	function RedimConv(num) {
		o=document.getElementById("convcontenu"+num).style;
		/*if (o.display=="block") {
			o.display="none";
		} else {
			o.display="block";
		}*/
		if (o.overflow=="hidden") {
			o.overflow="visible";
			o.height="auto";
			document.getElementById("convmsg"+num).focus();
			document.getElementById("convreduire"+num).src="images/conv/reduire.gif";
			document.getElementById("convreduire"+num).alt="Réduire";
			document.getElementById("convreduire"+num).title="Réduire";
			document.getElementById("convmsg"+num).focus();
			document.getElementById("convatt"+num).style.display="none";
			ouvert=1;
		} else {
			o.overflow="hidden";
			o.height="0px";
			document.getElementById("convreduire"+num).src="images/conv/agrandir.gif";
			document.getElementById("convreduire"+num).alt="Agrandir";
			document.getElementById("convreduire"+num).title="Agrandir";
			ouvert=0;
		}
		// Stocke paramètres
		var convchaine=Lire_Cookie("conv");
		var convlist=convchaine.split("|");
		var convnb=convlist.length;
		convchaine="";
		var i = 0;
		for (i=0; i<convnb; i++) {
			var convelt=convlist[i].split(",");
			if (convchaine!="") convchaine=convchaine + "|" ;
			if (convelt[1]!=num) {
				convchaine=convchaine + convlist[i];
			} else {
				var qui=convelt[0]; var num=convelt[1]; var gauche=convelt[2]; var haut=convelt[3];
				convchaine=convchaine+ qui + "," + num + "," + gauche + "," + haut + "," + ouvert;
			}
		}
		Ecrire_Cookie("conv", convchaine, 1);
	}

	function ChercheNum(qui) {
		var convchaine=Lire_Cookie("conv");
		var convlist=convchaine.split("|");
		var convnb=convlist.length;
		var i = 0;
		for (i=0; i<convnb; i++) {
			var convelt=convlist[i].split(",");
			if (convelt[0]==qui) return convelt[1];
		}
		return 0;
	}

function beginDrag1(e) {		// Paramétrage du déplacement des Divs-Layers et des onmousemove & onmouseup
	if (ie) {
		window.lastX=event.clientX;
	   window.lastY=event.clientY;
	   document.onmousemove=doDrag1;
	   document.onmouseup=endDrag;
	}else{
		window.lastX=e.clientX;
	   window.lastY=e.clientY;
	   window.onmousemove=doDrag1;
	   window.onmouseup=endDrag;
		myattr=e.target.getAttribute("ID");
	}
}
function beginDrag2(e) {		// Paramétrage du déplacement des Divs-Layers et des onmousemove & onmouseup
	if (ie) {
		window.lastX=event.clientX;
	   window.lastY=event.clientY;
	   document.onmousemove=doDrag2;
	   document.onmouseup=endDrag;
	}else{
		window.lastX=e.clientX;
	   window.lastY=e.clientY;
	   window.onmousemove=doDrag2;
	   window.onmouseup=endDrag;
		myattr=e.target.getAttribute("ID");
	}
}
function beginDrag3(e) {		// Paramétrage du déplacement des Divs-Layers et des onmousemove & onmouseup
	if (ie) {
		window.lastX=event.clientX;
	   window.lastY=event.clientY;
	   document.onmousemove=doDrag3;
	   document.onmouseup=endDrag;
	}else{
		window.lastX=e.clientX;
	   window.lastY=e.clientY;
	   window.onmousemove=doDrag3;
	   window.onmouseup=endDrag;
		myattr=e.target.getAttribute("ID");
	}
}
function beginDrag4(e) {		// Paramétrage du déplacement des Divs-Layers et des onmousemove & onmouseup
	if (ie) {
		window.lastX=event.clientX;
	   window.lastY=event.clientY;
	   document.onmousemove=doDrag4;
	   document.onmouseup=endDrag;
	}else{
		window.lastX=e.clientX;
	   window.lastY=e.clientY;
	   window.onmousemove=doDrag4;
	   window.onmouseup=endDrag;
		myattr=e.target.getAttribute("ID");
	}
}

function doDrag1(e) {			// Déplacement des Divs-Layers
	if (ie) {
		var difX=event.clientX-window.lastX;
	   var difY=event.clientY-window.lastY;
		var newX1 = parseInt(conv1.style.left)+difX;
	   var newY1 = parseInt(conv1.style.top)+difY;
	   conv1.style.left=newX1+"px";
	   conv1.style.top=newY1+"px";
	   window.lastX=event.clientX;
	   window.lastY=event.clientY;
	}else{
       var difX=e.clientX-window.lastX;
	   var difY=e.clientY-window.lastY;
	   var newX1 = parseInt(document.getElementById("conv1").style.left)+difX;
	   var newY1 = parseInt(document.getElementById("conv1").style.top)+difY;
	   document.getElementById("conv1").style.left=newX1+"px";
	   document.getElementById("conv1").style.top=newY1+"px";
	   window.lastX=e.clientX;
	   window.lastY=e.clientY;
	}
}
function doDrag2(e) {			// Déplacement des Divs-Layers
	if (ie) {
		var difX=event.clientX-window.lastX;
	   var difY=event.clientY-window.lastY;
		var newX1 = parseInt(conv2.style.left)+difX;
	   var newY1 = parseInt(conv2.style.top)+difY;
	   conv2.style.left=newX1+"px";
	   conv2.style.top=newY1+"px";
	   window.lastX=event.clientX;
	   window.lastY=event.clientY;
	}else{
       var difX=e.clientX-window.lastX;
	   var difY=e.clientY-window.lastY;
	   var newX1 = parseInt(document.getElementById("conv2").style.left)+difX;
	   var newY1 = parseInt(document.getElementById("conv2").style.top)+difY;
	   document.getElementById("conv2").style.left=newX1+"px";
	   document.getElementById("conv2").style.top=newY1+"px";
	   window.lastX=e.clientX;
	   window.lastY=e.clientY;
	}
}
function doDrag3(e) {			// Déplacement des Divs-Layers
 if (ie) {
  var difX=event.clientX-window.lastX;
    var difY=event.clientY-window.lastY;
  var newX1 = parseInt(conv3.style.left)+difX;
    var newY1 = parseInt(conv3.style.top)+difY;
    conv3.style.left=newX1+"px";
    conv3.style.top=newY1+"px";
    window.lastX=event.clientX;
    window.lastY=event.clientY;
 }else{
       var difX=e.clientX-window.lastX;
    var difY=e.clientY-window.lastY;
    var newX1 = parseInt(document.getElementById("conv3").style.left)+difX;
    var newY1 = parseInt(document.getElementById("conv3").style.top)+difY;
    document.getElementById("conv3").style.left=newX1+"px";
    document.getElementById("conv3").style.top=newY1+"px";
    window.lastX=e.clientX;
    window.lastY=e.clientY;
 }
}
function doDrag4(e) {			// Déplacement des Divs-Layers
 if (ie) {
  var difX=event.clientX-window.lastX;
    var difY=event.clientY-window.lastY;
  var newX1 = parseInt(conv4.style.left)+difX;
    var newY1 = parseInt(conv4.style.top)+difY;
    conv3.style.left=newX1+"px";
    conv3.style.top=newY1+"px";
    window.lastX=event.clientX;
    window.lastY=event.clientY;
 }else{
       var difX=e.clientX-window.lastX;
    var difY=e.clientY-window.lastY;
    var newX1 = parseInt(document.getElementById("conv4").style.left)+difX;
    var newY1 = parseInt(document.getElementById("conv4").style.top)+difY;
    document.getElementById("conv4").style.left=newX1+"px";
    document.getElementById("conv4").style.top=newY1+"px";
    window.lastX=e.clientX;
    window.lastY=e.clientY;
 }
}

function endDrag(e) {		// Stabilisation des Divs-Layers dans la fenetre
	 if (ie) {
	 	document.onmousemove=null;
	 }else{
		window.onmousemove=null;
	}
	// Récupère position fenetre
	var convchaine=Lire_Cookie("conv");
	var convlist=convchaine.split("|");
	var convnb=convlist.length;
	convchaine="";
	var i = 0;
	for (i=0; i<convnb; i++) {
		var convelt=convlist[i].split(",");
		var qui=convelt[0]; var num=convelt[1]; var ouvert=parseInt(convelt[4]);
		var offsetx = (document.documentElement && document.documentElement.scrollLeft) || window.pageXOffset || self.pageXOffset || document.body.scrollLeft;
		var offsety = (document.documentElement && document.documentElement.scrollTop) || window.pageYOffset || self.pageYOffset || document.body.scrollTop;
		var gauche=parseInt(document.getElementById("conv"+num).style.left) - offsetx;
		var haut=parseInt(document.getElementById("conv"+num).style.top) - offsety;
		if (convchaine!="") convchaine=convchaine+"|";
		convchaine=convchaine+ qui + "," + num + "," + gauche + "," + haut + "," + ouvert;
	}
	Ecrire_Cookie("conv", convchaine, 1);
}

function SonConv(num) {
	o=document.getElementById("convson"+num);
	// alert(o.src);
	if (o.src=="http://www.egyptis.com/images/conv/sonoff.png") {
		convson=0;
		document.getElementById("convson"+num).src="images/conv/sonon.png";
	} else {
		convson=1;
		document.getElementById("convson"+num).src="images/conv/sonoff.png";
	}
}


