

function son(s)
{
        retDiv("musique").src='/sons/'+s;
}
function addLoadEvent(func)
{
        var oldonload = window.onload;

        if (typeof window.onload != 'function')
                window.onload = func;
        else
                window.onload = function() {
                                            oldonload();
                                            func();
                                        }
}


//---------------------
svObjName = new Array();
svObj = new Array();
function retDiv(div)
{
        if(!(elem=retDiv_(div,1)))
		alert(div+": calque introuvable");
        return elem;
}
function retDiv_(div,cache)
{
        if(cache)
        for(o=0;o<svObjName.length;o++)
                if(svObjName[o]==div)
                        return svObj[o];

        if (document.getElementById)
                obj= eval("document.getElementById('"+div+"')");
        else
                obj= eval("document.all["+div+"]");

        svObjName[svObjName.length]=div;
        svObj[svObj.length]=obj;
        return obj;
}
//---------------------
function trim(string,d,f) 
{ 
	if(d  && !f)	return string.replace(/(^[ \n\r	]+)/g,''); 
	if(!d  && f)	return string.replace(/(\s*$)/g,''); 
	if(d  && f)	return string.replace(/(^\s*)|(\s*$)/g,''); 
	return string;
} 
function setInnerHTML(divContent, HTML) // attention avec IE si HTML debute par <script>... il ne sera pas pris en compte
{					// il faut mettre avant par exemple un <br style="line-height:0px;"> avant
	if(trim(HTML,1,0).toLowerCase().substr(0,7)=="<script")
		HTML="<br style=\"line-height:0px;\">"+HTML; // POUR BUG IE

      divContent.innerHTML=HTML;

      var All=divContent.getElementsByTagName("*");
      for (var i=0; i<All.length; i++)
      {
        All[i].id=All[i].getAttribute("id")
        All[i].name=All[i].getAttribute("name")
//        All[i].className=All[i].getAttribute("class")
      }
      var AllScripts=divContent.getElementsByTagName("script")
      for (var i=0; i<AllScripts.length; i++)
      {
/*
         var s=AllScripts[i];
         if (s.src && s.src!="")
         {
            // Précédement asynchrone, mis en synchrone pour éviter des problèmes de dépendances de scripts
            eval(getFileContent(s.src))
         }
         else
         {
//alert(s.innerHTML);
            eval(s.innerHTML)
         }
*/
       	  	s=AllScripts[i];
		script=s.innerHTML;

                if(window.execScript)
                    window.execScript(script);
                else 
		if(navigator.userAgent.indexOf('KHTML') != -1) 
		{ //safari, konqueror..
                    var s = document.createElement('script');
                    s.type = 'text/javascript';
                    s.innerHTML = script;
                    document.getElementsByTagName('head')[0].appendChild(s);
                } 
		else
                    window.eval(script);
      }
}
/*
HsAjax.prototype.loadHTML = function() {
        var s = this.xmlHttp.responseText;
        if (!hs.ie || hs.ieVersion() >= 5.5) {
                s = s.replace(/\s/g, ' ');
                if (this.iframe) {
                        s = s.replace(new RegExp('<link[^>]*>', 'gi'), '');
                        s = s.replace(new RegExp('<script[^>]*>.*?</script>', 'gi'), '');
                        var doc = this.iframe.contentDocument || this.iframe.contentWindow.document;
                        doc.open();
                        doc.write(s);
                        doc.close();
                        try { s = doc.getElementById(this.id).innerHTML; } catch (e) {
                                try { s = this.iframe.document.getElementById(this.id).innerHTML; } catch (e) {} // opera
                        }
                        hs.container.removeChild(this.iframe);
                } else {
                        s = s.replace(new RegExp('^.*?<body[^>]*>(.*?)</body>.*?$', 'i'), '$1');
                }

        }
        hs.identifyContainer(this.content, 'highslide-body').innerHTML = s;
        this.onLoad();
};
*/
function replaceDiv(div,txt)
{
        if(!(elem=retDiv(div))) return 0;
        setInnerHTML(elem,txt);
        return 1;
}       
function ecrit(div,txt,n,step)
{
        if(!(elem=retDiv(div))) return 0;
        l=txt.length; 
        for(i=0,b=0;i<l && (i<n || b==1);i++)
        {
                c=txt.substr(i,1); 
                        if(c=='<') b=1;
                else    if(c=='>') b=0;
        }               
        n=i;  
        elem.innerHTML=txt.substr(0,n);
        
        if(n<l) 
        {
                var exp = new RegExp("[\"]","gi");
                txt=txt.replace(exp,"\\\"");
                var exp = new RegExp("[']","gi");
                txt=txt.replace(exp,"\\'");
                var exp = new RegExp("[\n]","gi");
                setTimeout("ecrit('"+div+"',\""+txt.replace(exp,'')+"\","+(n+step)+","+step+");",1);
        }
        return 1;
}
function makeGETquery(f,q)
{
	objets=f.elements;
	for(i=0;i<objets.length;i++) 
	{
                if(objets[i].type=="submit"
		||(objets[i].type=='radio' && !objets[i].checked))
                        continue;
                     if(objets[i].type=='checkbox')  val=(objets[i].checked?1:0);
                else if(objets[i].type=='select')    val=objets[i][objets[i].selectedIndex].value;
                else  	                             val=objets[i].value;
                q+=objets[i].name+"="+escape(val)+"&";
        }
	return q;
}
function submit_request(f,idName,action)
{
        var tmp="";

/*
        for(objets = document.getElementsByTagName("input"),i=0;i<objets.length;i++)
        {
                if(objets[i].type=='radio' && !objets[i].checked)
                        continue;
                if(objets[i].type=='checkbox')  val=(objets[i].checked?1:0);
                else                            val=objets[i].value;
                tmp+=objets[i].name+"="+escape(val)+"&";
        }
        for(objets = document.getElementsByTagName("select"),i=0;i<objets.length;i++)
                tmp+=objets[i].name+"="+escape(objets[i][objets[i].selectedIndex].value)+"&";
        for(objets = document.getElementsByTagName("textarea"),i=0;i<objets.length;i++)
                tmp+=objets[i].name+"="+escape(objets[i].value)+"&";
*/
	tmp=makeGETquery(f,'');

        //-HttpRequest-------------------------------         
        var xhr_object = null;

        if(window.XMLHttpRequest) // Firefox
                xhr_object = new XMLHttpRequest();
        else if(window.ActiveXObject) // Internet Explorer
                xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
        else
        { // XMLHttpRequest non supporté par le navigateur
                alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
                return;
        }

        xhr_object.open("POST", action, true);

        xhr_object.onreadystatechange = function anonymous()
        {
                if(xhr_object.readyState == 4)
                {
                        if(xhr_object.responseText.substr(0,8)=='errMess:')
                        {
                                son("b3.mp3");
                                if(!ecrit("errMess",xhr_object.responseText.substr(8),10,5))
                                        alert('le calque nommé "errMess" n a pas été trouve !');
                        }
                        else
                        {
                                son("b1.mp3");
                                if(!replaceDiv(idName,xhr_object.responseText))
                                 alert('???');
                        }
                }
        }
        xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded; charset=iso-8859-1;");
        xhr_object.send(tmp);
        //---------------------------------------------   
}
function prepare_input(o)
{
	var xhr_object = null;
	
	if(window.XMLHttpRequest) // Firefox
		xhr_object = new XMLHttpRequest();
	else if(window.ActiveXObject) // Internet Explorer
		xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
	else 
	{ // XMLHttpRequest non supporté par le navigateur
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		return;
	}

	xhr_object.open("POST", "/textes.php?f="+escape(o)+"&act=w", true);
	
	xhr_object.onreadystatechange = function anonymous()    
	{
		if(xhr_object.readyState == 4)
		{
//alert(xhr_object.responseText)
			replaceDiv(o,xhr_object.responseText);
		}
	}                                               
								
	xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xhr_object.send();          

	//---------------------------------------------         
} 
