function iframe_autosize()
	{
	if (this.document.height)
		{var iframeElement = parent.document.getElementById(this.name);}
	else if (this.document.all) 
		{var iframeElement=parent.document.all[this.name];}
	else
		{return;}
	var _w_resize=false;
	var _h_resize=false;
	if(iframeElement.lang)
		{
		tab1=iframeElement.lang.split(";");
		for(z=0;z<tab1.length;z++)
			{
			if(tab1[z])
				{
				tab2=tab1[z].split("=");
				for(y=0;y<tab2.length;y++)
					{
					if(tab2[0]=="_w_resize")
						{var _w_resize=tab2[1];}
					if(tab2[0]=="_h_resize")
						{var _h_resize=tab2[1];}
					}
				}
			}
		}	
	if(_w_resize=="1")
		{
		if (this.document.width)
			{iframeElement.style.width=this.document.width+"px";}
		else if (this.document.all) 
			{
			if(this.document.compatMode && this.document.compatMode!="BackCompat") 
				{iframeElement.style.width=this.document.documentElement.scrollWidth+5+"px";}
			else 
				{iframeElement.style.width=this.document.body.scrollWidth+5+"px";}
			}
		}	
	if(_h_resize=="1")
		{
		if (this.document.height)
			{iframeElement.style.height=this.document.height +"px";}
		else if (document.all) 
			{
			if(this.document.compatMode && this.document.compatMode!="BackCompat")  
				{iframeElement.style.height=this.document.documentElement.scrollHeight+5+"px";}
			else 
				{iframeElement.style.height=this.document.body.scrollHeight+5+"px";}
			}
		}		
	}

	
function div_apply_dimensions(element,l,h)
	{
	if(l!=undefined && l!="")
		{
		l=new Number(l);
		element.style.width=l+"px";
		}
	else
		{element.style.width="auto";}

	if(h!=undefined && h!="")
		{h=new Number(h);
		element.style.height=h+"px";}
	else
		{element.style.height="auto";}
	}

function set_event(e)
	{
	var e=(!e)?window.event:e;//IE:Moz
	this.evt=e;
	parent.top.evt=e;
	var s=e.srcElement? e.srcElement : e.target; 
	this.evtsrc=s;
	parent.top.evtsrc=s;
	}
	
function div_apply_coordinates(target,element,x,y,bool_mouse_xy)
	{
	element.style.position="absolute";
	if(bool_mouse_xy==undefined || bool_mouse_xy=="")
		{bool_mouse_xy=false;}
	if(bool_mouse_xy)
		{
		e=this.evt;
		source=this.evtsrc;
		while(source.parentNode)
			{source=source.parentNode;}
		var tmpX = 0;
		var tmpY = 0;
		tmpw=getDocumentWidth();
		tmph=getDocumentHeight();
		if(e.pageX)
			{
			tmpX = e.pageX;
			//+ window.pageXOffset;
			//window.alert(e.pageY+"/"+window.pageYOffset);
			tmpY = e.pageY ;
			}
		else if(e.clientX)
			{
			if(document.documentElement)
				{
				//IE 6+ strict mode
				tmpX = e.clientX + document.documentElement.scrollLeft;
				tmpY = e.clientY + document.documentElement.scrollTop;
				}
			else if(document.body)
				{
				//Other IE
				tmpX = e.clientX + document.body.scrollLeft;
				tmpY = e.clientY + document.body.scrollTop;
				}
			}
		else
			{return false;}
			
		if(element.style.width && element.style.width!="auto")
			{
			if(source!=this)
				{
				wi=Number(element.style.width.substr(0,(element.style.width.length-2)));
				if(tmpX>wi)
					{tmpX-=(wi+20);}
				else
					{tmpX+=15;}
				if(tmpX+wi>tmpw)
					{tmpX=tmpw+20-wi;}
				if(tmpX<0)
					{tmpX=40;}	
				}
			}
		if(element.style.height && element.style.height!="auto")
			{
			if(source!=this)
				{
				he=Number(element.style.height.substr(0,(element.style.height.length-2)));
				//window.alert(tmpY+"/ H element : "+he+"; H doc :"+tmph);
				if(tmpY>he)
					{tmpY-=(he);}
				else
					{tmpY+=10;}
				
				if(tmpY+he>tmph)
					{tmpY-=(tmpY+he-tmph);}
				if(tmpY<0)
					{tmpY=10;}
				}
			}
		element.style.left=tmpX+'px';
		element.style.top=tmpY+'px';
		return;
		}
	
	if(x=="" || x==undefined)
		{
		x=window.getComputedStyle(document.getElementById(target), null).getPropertyValue('left');		if(x=="0px" || x=="auto")
			{
			l=window.getComputedStyle(document.getElementById(target), null).getPropertyValue('width');			if(l=="auto")
				{
				element.style.left="50%";
				element.style.marginLeft="auto";
				element.style.marginRight="auto";
				}
			else
				{
				l=l.substr(0,(l.length-2));
				dx="-"+Math.round(l)/2;
				element.style.marginLeft=dx+"px";
				element.style.left="50%";
				}
			}
		else
			{
			// a priori, positionnement réglé.
			}
		}
	else
		{
		x=new Number(x);
		element.style.left=x+"px";
		}
	if(y=="" || y==undefined)
		{
		y=window.getComputedStyle(document.getElementById(target),null).getPropertyValue('top');		if(y=="0px" || y=="auto")
			{
			h=window.getComputedStyle(document.getElementById(target), null).getPropertyValue('height');			if(h=="auto")
				{
				element.style.top="50%";
				element.style.marginTop="auto";
				element.style.marginBottom="auto";
				}
			else
				{
				h=h.substr(0,(h.length-2));
				dy="-"+Math.round(h/2);
				element.style.marginTop=dy+"px";
				element.style.top="50%";
				}
			}
		else
			{
			}
		}
	else
		{
		y=new Number(y);
		element.style.top=y+"px";
		}
	}
	
function shut_layer(target)
	{
	Effect.SwitchOff(target);
	Effect.Fade(target);
	}
	
function shut_me()
	{
	var main_layer=parent.document.getElementById(window.frameElement.containerObject);
	Effect.SwitchOff(main_layer);
	Effect.Fade(main_layer);
	}
	
function opener_reload()
	{
	if(window.frameElement)
		{if(window.frameElement.openerObject)
			{if(window.frameElement.openerObject.reload)
				{window.frameElement.openerObject.reload();}
			}
		}
	}
	
function chk_layer(target,close_bool)
	{
	if(target=="" || target==undefined)
		{target="std_layer";}
	var main_layer=document.getElementById(target);
	if(!main_layer)
		{
		var main_layer=document.createElement("div");
		main_layer.setAttribute("id",target);
		main_layer.setAttribute("className",target);
		document.body.appendChild(main_layer);
		if(close_bool)
			{
			var shutButtonLayer=document.createElement("div");
			shutButtonLayer.setAttribute("id","std_shut");
			shutButtonLayer.setAttribute("alt","Fermer cette fenêtre");
			shutButtonLayer.setAttribute("title","Fermer cette fenêtre");
			shut_onclick="shut_layer('"+target+"')";
			shutButtonLayer.setAttribute("onclick",shut_onclick);			main_layer.appendChild(shutButtonLayer);
			}
		}
	return target;
	}

//-------------------------------------------	
function popup(url,name,parameters) 
	{
	largeur=Math.round((screen.availWidth-640)/2);
	hauteur=Math.round((screen.availHeight-480)/2);
	ph="";
	ph+="toolbar=0,location=0,directories=0,status=0,scrollbars=0,resizable=0,menubar=0";
	ph+=",top="+hauteur+",left="+largeur;
	window.open(url, name, ph); 
	}
	
function adv_popup(url,name,l,h,p)
	{
	largeur=Math.round((screen.availWidth-l)/2);
	hauteur=Math.round((screen.availHeight-h)/2);
	ev=new String();
	if(p!="" && p!=undefined)
		{ev=p+",";}
	ev+="top="+hauteur+",left="+largeur+",width="+l+",height="+h;
	eval(name+"=window.open(url,name,ev);");
	if(eval(name))
		{eval(name+".focus();");}
	}
//-------------------------------------------

function dsp_adv_layer(target,close_bool,l,h,x,y,bool_mouse_xy,bool_draggable)
	{
	target=chk_layer(target,close_bool);
	dsp_layer(target,x,y,l,h,bool_mouse_xy,bool_draggable);
	}
function dsp_layer(target,x,y,l,h,bool_mouse_xy,bool_draggable)
	{
	var _div = document.getElementById(target);
	_div.style.display="none";
	div_apply_dimensions(_div,l,h);
	var main_iframe=document.getElementById("iframe_"+target);
	div_apply_coordinates(target,_div,x,y,bool_mouse_xy);
	if(bool_draggable)
		{new Draggable(_div);}
	Effect.Appear(_div);
	_div.style.visibility="visible";
	_div.style.zIndex=98;
	}
//-------------------------------------------

function dsp_adv_imglayer(target,url,close_bool,l,h,x,y,bool_mouse_xy)
	{
	url="/front/display/display_imglayer.php?_url_image="+url;
	dsp_adv_framelayer(target,url,close_bool,l,h,x,y,bool_mouse_xy);
	}
	
//-------------------------------------------	

function dsp_std_messagelayer(target,content)
	{
	target=chk_layer(target,true);
	shut_title="Fermer cette fenêtre";
	dsp_messagelayer(target,content,15,"","","","");
	}
	
function dsp_adv_messagelayer(target,content,close_bool,l,h,x,y)
	{
	if(close_bool==undefined || close_bool=="")
		{close_bool=true;}
	target=chk_layer(target,close_bool);
	shut_title="Fermer cette fenêtre";
	dsp_messagelayer(target,content,15,l,h,x,y);
	}
function dsp_messagelayer(target,content,padding,x,y,l,h)
	{
	if(content.length==0)
		{return;}
	var _div=document.getElementById(target);
	_div.style.padding=padding+"px";
	_div.style.backgroundColor="#FFFFE1";
	_div.style.display="none";
	div_apply_dimensions(_div,l,h);
	Effect.Appear(_div);
	for(var i=0;i <content.length;++i)
		{
		if(i)
			{
			var theBR = document.createElement('br');
			_div.appendChild(theBR);
			}
		var text = document.createTextNode(content[i]);
		_div.appendChild(text);
		}
	div_apply_coordinates(target,_div,x,y,false);
	//_div.style.visibility="visible";
	_div.style.zIndex=98;
	}
	
//-------------------------------------------	
	
function dsp_std_framelayer(target,url)
	{
	target=chk_layer(target,true);
	if_param="style='border:none;' ";
	shut_title="Fermer cette fenêtre";
	dsp_framelayer(target,url);
	}
	
function dsp_adv_framelayer(target,url,close_bool,l,h,x,y,bool_mouse_xy,bool_draggable,openerObject)
	{
	target=chk_layer(target,close_bool);
	shut_title="Fermer cette fenêtre";
	dsp_framelayer(target,url,x,y,l,h,bool_mouse_xy,bool_draggable,openerObject);
	}

function dsp_framelayer(target,url,x,y,l,h,bool_mouse_xy,bool_draggable,openerObject)
	{
	var _div = document.getElementById(target);
	_div.style.display="none";
	div_apply_dimensions(_div,l,h);
	var main_iframe=document.getElementById("iframe_"+target);
	if(!main_iframe)
		{
		var main_iframe=document.createElement("iframe");
		// il faut id et nom uniques...
		//var suf=Math.random();
		// Id et Name : ID pour retrouver dans parent fenetre courante By ID, Name pour retrouver window.name
		main_iframe.setAttribute("id","iframe_"+target);
		main_iframe.setAttribute("name","iframe_"+target);
		main_iframe.setAttribute("frameBorder",0);
		//main_iframe.setAttribute("id","iframe_"+target+suf);
		//main_iframe.setAttribute("name","iframe_"+target+suf);
		main_iframe.style.border=0;
		main_iframe.allowTransparency="true";
		_div.appendChild(main_iframe);
		}
	
	main_iframe.width="100%";
	main_iframe.height="100%";
	main_iframe.src=url;
	main_iframe.containerObject=target;
	main_iframe.openerObject=openerObject;
	div_apply_coordinates(target,_div,x,y,bool_mouse_xy);
	if(bool_draggable)
		{new Draggable(_div);}
	Effect.Appear(_div);
	_div.style.visibility="visible";
	_div.style.zIndex=98;
	}
	
function ajax_open(_url,_func,ct)
	{
	if(!ct)
		{ct="application/x-www-form-urlencoded;";}
	var xhr_object = null; 
	if(window.XMLHttpRequest)
		{xhr_object = new XMLHttpRequest();}
	else if(window.ActiveXObject)
		{xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); }
	else
		{window.alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest."); }
	xhr_object.open("GET",_url,true); 
	xhr_object.setRequestHeader("Content-type", ct);
	xhr_object.send(null);
	xhr_object.onreadystatechange = function()
		{ 
		if(xhr_object.readyState == 4) 
			{
			if(xhr_object.responseText)
				{
				if(_func)
					{_func(xhr_object.responseText);}
				} 
			else
				{
				// Pas de réponse
				}
			}
		else
			{
			//window.alert(xhr_object.readyState);
			}
		}
	}

function ajax_open_post(_url,_func,_var,ct)
	{
	if(!ct)
		{ct="application/x-www-form-urlencoded;";}
	var xhr_object = null; 
	if(window.XMLHttpRequest)
		{xhr_object = new XMLHttpRequest();}
	else if(window.ActiveXObject)
		{xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); }
	else
		{window.alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest."); }
	xhr_object.open("POST",_url,true); 
	xhr_object.onreadystatechange = function()
		{
		if(xhr_object.readyState == 4) 
			{
			if(xhr_object.responseText)
				{
				if(_func)
					{_func(xhr_object.responseText);}
				} 
			else
				{
				//window.alert("null rep");
				// Pas de réponse
				}
			}
		else
			{
			//window.alert(xhr_object.readyState);
			}
		}
	xhr_object.setRequestHeader("Content-type", ct);
	xhr_object.send("_arg="+_var);
	}
	
function getWindowWidth()
	{
	var windowHeight=0;
	if (typeof(window.innerWidth)=='number')
		{windowWidth=window.innerWidth;}
	else 
		{
		if(document.documentElement && document.documentElement.clientWidth)
			{windowWidth = document.documentElement.clientWidth;}
		else 
			{
			if(document.body&&document.body.clientWidth)
				{windowWidth=document.body.clientWidth;}
			}
		}
	return windowWidth;
	}
	
function getWindowHeight()
	{
	var windowHeight=0;
	if (typeof(window.innerHeight)=='number')
		{windowHeight=window.innerHeight;}
	else 
		{
		if(document.documentElement && document.documentElement.clientHeight)
			{windowHeight = document.documentElement.clientHeight;}
		else 
			{
			if(document.body&&document.body.clientHeight)
				{windowHeight=document.body.clientHeight;}
			}
		}
	return windowHeight;
	}

function getDocumentWidth()
	{
	docw=0;
	if(this.document.width)
		{docw=this.document.width;}
	else if (this.document.all) 
		{
		if(this.document.compatMode && this.document.compatMode!="BackCompat") 
			{docw=this.document.documentElement.scrollWidth+5;}
		else 
			{docw=this.document.body.scrollWidth+5;}
		}
	return(docw);
	}
function getDocumentHeight()
	{
	doch=0;
	if(this.document.height)
		{doch=this.document.height;}
	else if (this.document.all) 
		{
		if(this.document.compatMode && this.document.compatMode!="BackCompat") 
			{doch=this.document.documentElement.scrollHeight+5;}
		else 
			{doch=this.document.body.scrollHeight+5;}
		}
	return(doch);
	}