// AjaxScript adaptation multi-navigateurs : Internet Explorer, Safari, Mozilla Firefox pour Windows, Mac, Linux.
// Permet surtout l'exécution des codes javascripts appellés en Ajax.
// A utiliser librement !!! by Cyrilouletouriste, le 18 Janvier 2007.

//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
if (src.indexOf('?') != -1)
return src.replace(/\?/, ext+'?');
else
return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs)
{
var str = '<object ';
for (var i in objAttrs)
str += i + '="' + objAttrs[i] + '" ';
str += '>';
for (var i in params)
str += '<param name="' + i + '" value="' + params[i] + '" > ';
str += '<embed ';
for (var i in embedAttrs)
str += i + '="' + embedAttrs[i] + '" ';
str += ' ></embed></object>';

document.write(str);
}

function AC_FL_RunContent(){
var ret =
AC_GetArgs
( arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
, "application/x-shockwave-flash"
);
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
var ret =
AC_GetArgs
( arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
, null
);
AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
var ret = new Object();
ret.embedAttrs = new Object();
ret.params = new Object();
ret.objAttrs = new Object();
for (var i=0; i < args.length; i=i+2){
var currArg = args[i].toLowerCase();

switch (currArg){
case "classid":
break;
case "pluginspage":
ret.embedAttrs[args[i]] = args[i+1];
break;
case "src":
case "movie":
args[i+1] = AC_AddExtension(args[i+1], ext);
ret.embedAttrs["src"] = args[i+1];
ret.params[srcParamName] = args[i+1];
break;
case "onafterupdate":
case "onbeforeupdate":
case "onblur":
case "oncellchange":
case "onclick":
case "ondblClick":
case "ondrag":
case "ondragend":
case "ondragenter":
case "ondragleave":
case "ondragover":
case "ondrop":
case "onfinish":
case "onfocus":
case "onhelp":
case "onmousedown":
case "onmouseup":
case "onmouseover":
case "onmousemove":
case "onmouseout":
case "onkeypress":
case "onkeydown":
case "onkeyup":
case "onload":
case "onlosecapture":
case "onpropertychange":
case "onreadystatechange":
case "onrowsdelete":
case "onrowenter":
case "onrowexit":
case "onrowsinserted":
case "onstart":
case "onscroll":
case "onbeforeeditfocus":
case "onactivate":
case "onbeforedeactivate":
case "ondeactivate":
case "type":
case "codebase":
ret.objAttrs[args[i]] = args[i+1];
break;
case "width":
case "height":
case "align":
case "vspace":
case "hspace":
case "class":
case "title":
case "accesskey":
case "name":
case "id":
case "tabindex":
ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
break;
default:
ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
}
}
ret.objAttrs["classid"] = classid;
if (mimeType) ret.embedAttrs["type"] = mimeType;
return ret;
}

function IS_image(source,largeur,hauteur)
	{
	winvar=window.open('pop_image.php?image='+source,"",'scrollbars=no, toolbar=no,directories=no,width='+largeur+',height='+hauteur+',top=50,left=50');
	winvar.focus();
	}

function sendData(data, page, div)
	{  
	if(document.all){
			var XhrObj = new ActiveXObject("Microsoft.XMLHTTP") ;
		} else {
			var XhrObj = new XMLHttpRequest();
	}
		var content = document.getElementById(div);
		XhrObj.open("POST", page);
		XhrObj.onreadystatechange = function() 
		{
		// Affichage des données cherchées et exécution des scripts Javascript selon le navigateur utilisé par le client //
					if (XhrObj.readyState == 4 && XhrObj.status == 200) {
										if(navigator.appName=='Netscape' && navigator.appVersion.indexOf("Safari",0)<0) {
													content.innerHTML = XhrObj.responseText;
													var allscript = content.getElementsByTagName('script');
													for(var i=0;i< allscript.length;i++){window.eval(allscript[i].text);}
										} else {
													var tmp = XhrObj.responseText;
													document.getElementById(div).innerHTML= tmp;
													y_exec_scripts(document.getElementById(div));
													
													function y_exec_scripts(obj){
													scripts = obj.getElementsByTagName("script");
													for(i=0;i<scripts.length;i++)
													eval(scripts[i].innerHTML);
													}
										}
								} 
		// Fin d'affichage des données et des scripts d'exécution selon le navigateur //
		}	
			XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
			XhrObj.send(data); 
		}

