function RefreshZoneNoWait( zone, url ){
	_refreshZone ( zone, url, false );
}

function RefreshZone( zone, url ){
	_refreshZone ( zone, url, true );
}

function _refreshZone ( zone, url, showWait )
{
    // définition de l'endroit d'affichage:
    var content = document.getElementById(zone);

    // Affichage zone de chargement
	if(showWait){
		var wait = document.getElementById("wait");
		wait.className="tumevois";
		FadeIn( "wait" , 20 , 20 , 70);

		document.getElementById("chargement").className="tumevois";
	}

    if(content) {
		content.className="tumevois";
    	var XhrObj = null;

        if(window.XMLHttpRequest) // Firefox et autres
            XhrObj = new XMLHttpRequest();
        else if(window.ActiveXObject){ // Internet Explorer
            try {
                XhrObj = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                XhrObj = new ActiveXObject("Microsoft.XMLHTTP");
            }
        } else {
        	alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
        	return false;
        }

        // ouverture du fichier sélectionné:
        XhrObj.open("GET", url,true );

        //Ok pour la page cible
        XhrObj.onreadystatechange = function() {
            if (XhrObj.readyState == 4 && XhrObj.status == 200){
                content.innerHTML = XhrObj.responseText;
				if(showWait){
					document.getElementById("chargement").className="tumevoispas";
					document.getElementById("wait").className="tumevoispas";
				}
			}
        }

        XhrObj.send(null);
 	}
}

function SetOpacity (opacity , id) {
	// On s'assure que la valeur transmise est dans les bornes
	if(opacity<0) opacity=0;
	else if(opacity>100) opacity=100;

	// Récupération du calque flottant
	var element=document.getElementById(id);

	// Modification de l'opacité du calque flottant
	if(element) {
		
		// Opacité définie par la norme CSS 3
		if(element.style.opacity!=null){
//			alert('CSS'+element.style.opacity );
			element.style.opacity = opacity/100;
		}

		// Opacité définie par les navigateurs Mozilla
		else if(element.style.MozOpacity!=null){
			element.style.MozOpacity = opacity/100;
//			alert('moz');
		}

		// Opacité définie par Internet Explorer
		else if(element.style.filter!=null){
			element.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+opacity+')';
//			alert ('ie');
		}
//		else
//			alert('nothing found');
	}


}


/**
 * Affiche progressivement le calque flottant du menu par un effet de fondu.
 * @param Number delay Vitesse de l'effet de fondu.
 */
function FadeIn(id , delay , opacity , max ) {

	if(opacity<=max) {
		SetOpacity(opacity , id);
		setTimeout('FadeIn(\''+id+'\' , '+delay+', '+(opacity+10)+' , '+max+')', delay);
	}
}
