/** 
 *	arnaud@2exvia.com 
 *	27/08/2009 16:08:51
 *
 */

/**
 * Remplace document.getElementById
 */ 
function $(id) {  
	if (id == undefined) return false;
	return (document.getElementById(id.toString())) ? document.getElementById(id.toString()) : false; 
}


// ============================================================================
// récupère la largeur de la zone visible du document
function getWidth(){
	// IE
	if (document.all) {
		return document.documentElement.clientWidth;
	// FF
	}else{
		return window.innerWidth;
	}
}

// ============================================================================
// récupère la hauteur de la zone visible du document
function getHeight(){
	// IE
	if (document.all) {
		return document.documentElement.clientHeight;
	// FF
	}else{
		return window.innerHeight;
	}
}

// ============================================================================
// récupère le top de la zone visible du document
function getTop(){
	if (typeof(window.pageYOffset) != 'undefined'){
     return window.pageYOffset;
	}else if (typeof(document.documentElement.scrollTop) != 'undefined' && document.documentElement.scrollTop > 0){
     return document.documentElement.scrollTop;
	}else if (typeof(document.body.scrollTop) != 'undefined'){
     return document.body.scrollTop;
	}
}

// ============================================================================
// récupère le left de la zone visible du document
function getLeft(){
	if (typeof(window.pageYOffset) != 'undefined'){
     return window.pageXOffset;
	}else if (typeof(document.documentElement.scrollLeft) != 'undefined' && document.documentElement.scrollLeft > 0){
     return document.documentElement.scrollLeft;
	}else if (typeof(document.body.scrollLeft) != 'undefined'){
     return document.body.scrollLeft;
	}
}



// *********************************************************************************
// 																*** POPUP ****
// *********************************************************************************

	// ============================
	// On créé la popup
	function showPopup(message,largeur,hauteur){
	
		if($('popup_container')) hidePopup();
	
		opacity=50;
		
		if(largeur=="undefined") largeur=400;
		if(hauteur=="undefined") hauteur=400;
		
		// Body
		var _body = document.getElementById('body');
		
	
		
		// Conteneur
		var container = document.createElement("div");
		// voile
		var voile = document.createElement("div");
		// popup
		var popup = document.createElement("div");
		
		// ID'S
		container.setAttribute("id","popup_container");
		voile.setAttribute("id","popup_voile");
		popup.setAttribute("id","popup_message");
		
		// Dimensions de la zone visible
		W = getWidth();
		H = getHeight(); 
		
		// Récupère le top & left
		T = getTop();
		L = getLeft();
		
		// STYLES
		// IE
		if (document.all) {
			container.style.setAttribute("cssText","z-index:10000;position:absolute; left: 0px; top:"+T+"px; width: "+W+"px; height: "+H+"px;");
			voile.style.setAttribute("cssText","width: "+W+"px; height: "+H+"px; background: #000000; opacity: "+ opacity/100 +"; MozOpacity: "+ opacity/100 +"; KhtmlOpacity: "+ opacity/100 +"; filter: alpha(opacity="+ opacity +");");
			popup.style.setAttribute("cssText","padding:10px;background-color:#FFFFFF;border:1px solid #999999;font-family:Trebuchet ms;font-size:12px;color:#000000;position:absolute;left: 50%; top: 50%;");
		// FF
		}else{
			container.setAttribute("style","z-index:10000;position:absolute; left: 0px; top:"+T+"px; width: "+W+"px; height: "+H+"px;");
			voile.setAttribute("style","width: "+W+"px; height: "+H+"px; background: #000000; opacity: "+ opacity/100 +"; MozOpacity: "+ opacity/100 +"; KhtmlOpacity: "+ opacity/100 +"; filter: alpha(opacity="+ opacity +");");
			popup.setAttribute("style","-moz-border-radius:10px;-webkit-border-radius:10px;padding:10px;background-color:#FFFFFF;border:1px solid #999999;font-family:Trebuchet ms;font-size:12px;color:#000000;position: fixed;left: 50%; top: 50%;");
		}
		
		popup.style.width = largeur+"px";
		popup.style.height = hauteur+"px";
		popup.style.marginLeft = -(largeur/2)+"px";
		popup.style.marginTop = -(hauteur/2)+"px";
	
		
	
		// Ajout au DOM
		container.appendChild(voile);
		container.appendChild(popup);
		_body.appendChild(container);
		popup.innerHTML = message;
		
		voile.onclick = hidePopup;
	}


	// ============================
	// Ferme la popup
	function hidePopup() {
		var _body = document.getElementById('body');
		var container = document.getElementById('popup_container');
		_body.removeChild(container);
		/*setTimeout(function(){
			_body.removeChild(container);
		},100);*/
	}


	// =====================================================
	// On ajuste le voile quand on redimensionne la fenetre
	window.onresize = function(){
		if(document.getElementById('popup_container')){
			var W = getWidth();
			var H = getHeight(); 
			var T = getTop();
			var L = getLeft();
			document.getElementById('popup_container').style.top = T+"px";
			document.getElementById('popup_container').style.left = L+"px";
			
			document.getElementById('popup_container').style.width = W+"px";
			document.getElementById('popup_container').style.height = H+"px";
			document.getElementById('popup_voile').style.width = W+"px";
			document.getElementById('popup_voile').style.height = H+"px";
		}
	}
	

	// =================================================
	// On ajuste le voile quand on scrolle la fenetre
	window.onscroll = function(){
		if(document.getElementById('popup_container')){
			var T = getTop();
			var L = getLeft();
			document.getElementById('popup_container').style.top = T+"px";
			document.getElementById('popup_container').style.left = L+"px";
		}
	}