/* Concu par Yanonix */
////////////////////////////////////////////////////// JS ENGINE //////////////////////////////////////////////////////
/* PROCESSUS LIST */
var ProcessusList={};

/* BOUCLES */
function Boucle(Process,RepeatTime) {
	if(ProcessusList["Boucle_"+Process]===undefined)
		ProcessusList["Boucle_"+Process]=setInterval(Process,RepeatTime)
	window.eval(Process)
}
function StopBoucle(Process) {
	clearInterval(ProcessusList["Boucle_"+Process]);
	delete ProcessusList["Boucle_"+Process];
}


////////////////////////////////////////////////////// AJAX //////////////////////////////////////////////////////
var ChargementArray=new Array('','.',':',':.','::');

var Ajax=function(nom,url,methode,data_pour_post,destination,script_suppl)
{
	ProcessusList['Ajax_'+nom]=null;
    try { 
		ProcessusList['Ajax_'+nom] = new XMLHttpRequest(); 
	}            
    catch(e) {
		ProcessusList['Ajax_'+nom] = new ActiveXObject("Msxml2.XMLHTTP");
	} 
	if(ProcessusList['Ajax_'+nom]==null)
	{ 
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest / Ajax...\n Vous devez les supporter pour pouvoir jouer."); 
		return;
	}
	
	ProcessusList['Ajax_'+nom].onreadystatechange = function()
	{
		//~ document.getElementById('AjaxStatus').innerHTML='<img src="Images/wait.gif"/>'; //nom+' '+ChargementArray[ProcessusList['Ajax_'+nom].readyState];
		//~ document.getElementById('AjaxStatus').style.opacity=1;
		if(ProcessusList['Ajax_'+nom].readyState == 4 && ProcessusList['Ajax_'+nom].status==200)
		{
			//~ document.getElementById('AjaxStatus').style.opacity=0;
			if(destination)
			{
				destination.innerHTML=ProcessusList['Ajax_'+nom].responseText;
				ScriptAll = destination.getElementsByTagName('script');
				for(i=0;i<ScriptAll.length;i++)
				{
					if(window.execScript) // IE de *
						window.execScript(ScriptAll[i].text);
					else
						window.eval(ScriptAll[i].text);
				}
			} 
			else
			{
				if(window.execScript) // IE de *
					window.execScript(ProcessusList['Ajax_'+nom].responseText)
				else
					window.eval(ProcessusList['Ajax_'+nom].responseText)
			}
			if(script_suppl && window.execScript)  // IE de *
				window.execScript(script_suppl)
			else if(script_suppl)
				window.eval(script_suppl)
			
			delete ProcessusList['Ajax_'+nom]
		}
		//~ else if(ProcessusList['Ajax_'+nom].readyState == 4)
			//~ document.getElementById('ZoneChargement').style.opacity=0;
	} 

	if(methode=='GET' && data_pour_post!='')
		ProcessusList['Ajax_'+nom].open(methode, '/ajax/'+url+'?'+data_pour_post, true); 
	else
		ProcessusList['Ajax_'+nom].open(methode, '/ajax/'+url, true); 
	if(methode=='POST')
		ProcessusList['Ajax_'+nom].setRequestHeader('Content-type','application/x-www-form-urlencoded; charset=UTF-8'); // ;charset=ISO-8859-1
	ProcessusList['Ajax_'+nom].send(data_pour_post)
	//~ return false;
}

////////////////////////////////////////////////////// PAGES //////////////////////////////////////////////////////
/* OUVRIR POPUP */
/*function Ouvrir(Url,Width,Height){
	if(IE)	Height+=30;
	window.open('Simple.php?p='+Url,'WarEvoBox','toolbar=0, location=0, directories=0, status=0, scrollbars=1, resizable=1, copyhistory=0, menuBar=0,  width='+(Width)+', height='+(Height))
}*/

/*
		
Ajax('Ouverture de la page: '+Url,"AfficherPage.php?p="+Url,"GET","",				document.getElementById('Corps'))
Ajax('Ouverture de la page: '+Url,"AfficherPage.php",		"POST","p="+Url+""+Post,document.getElementById('Corps'))
*/

/* ECHAPPEMENT */
function Esc(Str){
	return escape(Str).replace(new RegExp( "\\+", "g" ),"%2B")
}

/* ENVOI FORM (ou Comment réinventer la roue...) */
/*
function Form(FormObj){		
	var RequettesForm='';
	
	// Générer la requette
	Nombre=FormObj.length
	for(i=0;i<Nombre;i++)
	{
		if(FormObj.elements[i].name!=undefined && FormObj.elements[i].type!=undefined)
		{
			if(FormObj.elements[i].type!="submit")
			{
				if(FormObj.elements[i].type=="select-multiple")
				{
					for(j=0;j<FormObj.elements[i].options.length;j++)
					{
						if(FormObj.elements[i].options[j].selected==true)
							RequettesForm+='&'+FormObj.elements[i].name+'='+Esc(FormObj.elements[i].options[j].value)
					}
				}
				else if(FormObj.elements[i].type=="checkbox" )
				{
					if(FormObj.elements[i].checked==true)
						RequettesForm+='&'+FormObj.elements[i].name+'='+Esc(FormObj.elements[i].value)
					else
						RequettesForm+='&'+FormObj.elements[i].name+'='
				}
				else if(FormObj.elements[i].type=="radio" )
				{
					if(FormObj.elements[i].checked==true)
						RequettesForm+='&'+FormObj.elements[i].name+'='+Esc(FormObj.elements[i].value)
				}
				else if(FormObj.elements[i].type!="button")
					RequettesForm+='&'+FormObj.elements[i].name+'='+Esc(FormObj.elements[i].value)
			}
		}
	}

	
	return RequettesForm;
}
*/

////////////////////////////////////////////////////// AFFICHAGE //////////////////////////////////////////////////////
/* CACHER / MONTRER */
/*
function CacherMontrer(Obj, Force){
	if(ProcessusList['DragDrop']===undefined)
	{
		if((document.getElementById(Obj).className.indexOf('Cacher')!=-1 || Force=='M') && Force!='C')
		{
			removeClass(document.getElementById(Obj),'Cacher')
			addClass(document.getElementById(Obj),'Montrer')
		}
		else
		{
			removeClass(document.getElementById(Obj),'Montrer')
			addClass(document.getElementById(Obj),'Cacher')
		}
	}
}
function addClass(Object, Class) { 
    if(Object.className.indexOf(Class) != -1)
		return;
    if(Object.className != '' )
		Object.className += ' '+Class;
	else
		Object.className = Class;
} 
function removeClass(Object, Class) { 
    rxp = new RegExp( "\\s?\\b"+Class+"\\b", "g" ); 
	Object.className = Object.className.replace( rxp, '' ); 
} 
*/
/* SLIDER */
/*
function Slider(Racine, Obj){
	BaliseDiv=document.getElementsByTagName('div');
	Nombre=BaliseDiv.length
	for(i=0;i<Nombre;i++)
	{
		if((BaliseDiv[i].id).indexOf(Racine,0)>=0)
			BaliseDiv[i].className='CacherTransparent'
	}
	document.getElementById(Racine+'_'+Obj).className='MontrerTransparent'
}
*/

//////////////////////////////////////////////////// DRAG/DROP ////////////////////////////////////////////////////
/*
var Precedantism=-1;
function Drag(object){
	ProcessusList['DragDrop']=new Array();
	ProcessusList['DragDrop']['Object']=object;
	ProcessusList['DragDrop']['Group']=object.parentNode;

	addClass(ProcessusList['DragDrop']['Object'],'drag_hover')
	document.onselectstart = function() { return false; };
	Precedantism=-1;
}
function Offset(elem) { 
	y = elem.offsetTop; 
	while (elem = elem.offsetParent) { 
		if(elem.offsetTop>1)
			y += elem.offsetTop; 
	} 
	return y; 
} 
function SourisMouvement(evt){
	if(ProcessusList['DragDrop']!==undefined)
	{
		if (evt.pageY)
			Souris_Y=evt.pageY;
		else
		{
			evt = window.event;
			Souris_Y=evt.clientY+document.documentElement.scrollTop;
		}
				
		NbrNodes=ProcessusList['DragDrop']['Group'].children.length
		for(ism=0;ism<NbrNodes;ism++)
		{
			OffsetNode=Offset(ProcessusList['DragDrop']['Group'].children[ism])
			Taille=		OffsetNode + ProcessusList['DragDrop']['Object'].clientHeight;
			TailleAfter=OffsetNode + ProcessusList['DragDrop']['Group'].children[ism].clientHeight;
			
			if(Taille!==NaN && Souris_Y<Taille && Souris_Y<TailleAfter)
				break;
		}

		if(Precedantism!=ism)
		{
			if(ism<NbrNodes-1) 	// Début et milieu de la liste
			{
				if(ProcessusList['DragDrop']['Group'].children[ism].className.indexOf('drag')!=-1)
				{
					ProcessusList['DragDrop']['Group'].removeChild(ProcessusList['DragDrop']['Object']);
					ProcessusList['DragDrop']['Group'].insertBefore(ProcessusList['DragDrop']['Object'],ProcessusList['DragDrop']['Group'].children[ism]);
				}
			}
			else 				// Fin de la liste
			{
				ProcessusList['DragDrop']['Group'].removeChild(ProcessusList['DragDrop']['Object']);
				ProcessusList['DragDrop']['Group'].appendChild(ProcessusList['DragDrop']['Object']);
			}
			Precedantism=ism;
		}
	}
}
function SourisUp(evt){
	if(ProcessusList['DragDrop']!==undefined)
	{
		removeClass(ProcessusList['DragDrop']['Object'],'drag_hover')
		delete ProcessusList['DragDrop'];
		Stratégie_Générer();
		document.onselectstart = function() { return true; };
	}
}
document.onmousemove = SourisMouvement;
document.onmouseup   = SourisUp;
*/

