/***********************************************************************************
*********************  L I S T E  D E S  F O N C T I O N S  ***********************
***********************************************************************************
GetRatioEcran()
GetHauteurFenetre() 
GetLargeurFenetre()
SetLargeurObjFromImage(spImage, spObjet)
ResizeFenetreFromImage(spIDImage)
ToggleVisibility (spNomObjet)
HideElement(spNomObjet)
ShowElement(spNomObjet)
SetVisible(spNomObjet, lpVisible)
IsVisible(spNomObjet)
GetLeft(opElement)
GetTop(opElement)
ShowBloc(divID)
HideBloc(divID)
ShowComboBox() 
HideComboBox() 
ExecuterFlash(spSource, nlLargeur, nlHauteur, npTransparent, npModulo)
***********************************************************************************/
function GetRatioEcran(){
	if (window.top.screen.width/window.top.screen.height > 1.5)
		return "16:9";
	
	return "4:3";
}

function GetHauteurFenetre(){
	if (window.innerHeight != window.undefined) {return window.innerHeight;}
	if (document.compatMode == 'CSS1Compat') {return document.documentElement.clientHeight;}
	if (document.body) {return document.body.clientHeight;}
	return window.undefined; 
}

function GetLargeurFenetre(){
	if (window.innerWidth != window.undefined) {return window.innerWidth;}
	if (document.compatMode=='CSS1Compat') {return document.documentElement.clientWidth;}
	if (document.body) {return document.body.clientWidth;}
	return window.undefined; 
}

function SetLargeurObjFromImage(spImage, spObjet){
	olImage = new Image();
	olImage.src = spImage;
	Elem(spObjet).width = olImage.width;
}


function GetLeft(opElement){
    if (opElement.offsetParent)
        return (opElement.offsetLeft + GetLeft(opElement.offsetParent));
    else
        return (opElement.offsetLeft);
}


function GetTop(opElement) {
    if (opElement.offsetParent)
        return (opElement.offsetTop + GetTop(opElement.offsetParent));
    else
        return (opElement.offsetTop);
}

function GetImage(spImage)
{
	for (i=0;i<document.images.length;i++){
		if (document.images[i].id == spImage)
			return document.images[i];
	}
}
 
function ResizeImageFromObjet(spImage, spObjet){
	var nlConteneurLargeur;
	var nlConteneurHauteur;
	var nlRatioLargeur = 0;
	var nlRatioHauteur = 0;
	var olImage = GetImage(spImage);
	//var olImage = new Image();
	//olImage.src = Elem(spImage).src;
	
	if(!IsEmpty(Elem(spObjet))){
		nlConteneurLargeur = Number(Elem(spObjet).style.width.replace("px", ""));
		nlConteneurHauteur = Number(Elem(spObjet).style.height.replace("px", ""));
				
		if(nlConteneurLargeur < olImage.width || nlConteneurHauteur < olImage.height){
			nlRatioLargeur = Number(olImage.width / nlConteneurLargeur);
			nlRatioHauteur = Number(olImage.height / nlConteneurHauteur);
						
			if(nlRatioLargeur >= nlRatioHauteur){
				Elem(spImage).style.width =  olImage.width / nlRatioLargeur + "px";
				Elem(spImage).style.height =  olImage.height / nlRatioLargeur + "px";
				Elem(spImage).style.marginTop = ((nlConteneurHauteur - Number(Elem(spImage).style.height.replace("px", ""))) / 2) + "px";
				Elem(spImage).style.marginLeft = 0;
			}else{
				Elem(spImage).style.width =  olImage.width / nlRatioHauteur + "px";
				Elem(spImage).style.height =  olImage.height / nlRatioHauteur + "px";
				Elem(spImage).style.marginLeft = ((nlConteneurLargeur - Number(Elem(spImage).style.width.replace("px", ""))) / 2) + "px";
				Elem(spImage).style.marginTop = 0;
			}
		}else{
			Elem(spImage).style.width =  olImage.width + "px";
			Elem(spImage).style.height =  olImage.height + "px";
			Elem(spImage).style.marginLeft = ((nlConteneurLargeur - Number(olImage.width)) / 2) + "px";
			Elem(spImage).style.marginTop = ((nlConteneurHauteur - Number(olImage.height)) / 2) + "px";;	
		}
	}
}

function ToggleVisibility (spNomObjet){
	if(Elem(spNomObjet) != undefined){
		if (Elem(spNomObjet).style.display == 'block'){
			HideElement(spNomObjet);
		}else{
			ShowElement(spNomObjet);
		}
	}
}

function HideElement(spNomObjet) {SetVisible(spNomObjet, false);}

function ShowElement(spNomObjet) {SetVisible(spNomObjet, true);}

function SetVisible(spNomObjet, lpVisible)
{
	if(!IsUndefined(Elem(spNomObjet)) && !IsEmpty(Elem(spNomObjet))){
		if (lpVisible){
			Elem(spNomObjet).style.display = 'block';
		}else{
			Elem(spNomObjet).style.display = 'none';
		}
	}
}

function IsVisible(spNomObjet)
{
	if(Elem(spNomObjet) != undefined){
		if(Elem(spNomObjet).style.display == 'block'){
			return true;
		}else{
			return false;
		}
	}else{
		return false;
	}
}

function SetFocus(spNomObjet){
	if(Elem(spNomObjet) != undefined){
		Elem(spNomObjet).focus();
	}
}

function ShowBloc(spID)
{     
   var slShow = spID + "Show";
   var slHide = spID + "Hide";
   
	SetVisible(spID, true);
	SetVisible(slShow, false);
	SetVisible(slHide, true);
}

function HideBloc(spID)
{
	var slShow = spID + "Show";
	var slHide = spID + "Hide";
   
	SetVisible(spID, false);
	SetVisible(slShow, true);
	SetVisible(slHide, false);
}

function SetBouton(opImage){
	var olImage = new Image;
	var slImageOut = opImage.src;
	
	olImage.src = GetNomFichierBouton(opImage.src) + "-i." + GetExtension(opImage.src);
	
	opImage.onmouseover = function(){opImage.src = olImage.src;};
	opImage.onmouseout = function(){opImage.src = slImageOut;};
	opImage.onload = '';
	
}

function GetNomFichierBouton(spFichier){
	var slNomFichier = spFichier.lastIndexOf('\\', spFichier.length - 1);

	slNomFichier = spFichier.substr(slNomFichier + 1);
	slNomFichier = slNomFichier.substr(0, slNomFichier.lastIndexOf('.', slNomFichier.length)).toLowerCase();
	return slNomFichier;
}

function ShowComboBox() {
	var i,j;
	
	for(i=0;i<document.forms.length;i++){
		for(j=0;j<document.forms[i].length;j++){
			if(document.forms[i].elements[j].tagName == "SELECT"){
				document.forms[i].elements[j].style.visibility = "visible";
			}
		}
	}
}

function HideComboBox() {
	var i,j;
	
	for(i=0;i<document.forms.length;i++){
		for(j=0;j<document.forms[i].length;j++){
			if(document.forms[i].elements[j].tagName == "SELECT"){
				document.forms[i].elements[j].style.visibility = "hidden";
			}
		}
	}
}

function ExecuterFlash(spSource, nlLargeur, nlHauteur, npTransparent, npModulo)
{
	document.write('<object type="application/x-shockwave-flash" data="' + spSource + '" width="' + nlLargeur + '" height="' + nlHauteur + '">');
	
	document.write('<param name="movie" value="' + spSource + '" />');
	document.write('<param name="quality" value="high" />');
	if(npTransparent == 1 || npModulo == 1){document.write('<param name="wmode" value="transparent">');}

	document.write('<embed src="' + spSource + '" wmode="transparent" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="' + nlLargeur + '" height="' + nlHauteur + '"></embed>');
	document.write('</object>');
}

function CurseurOut (element, evt) {
	if (typeof evt.toElement != 'undefined' && typeof element.contains != 'undefined'){
		return !element.contains(evt.toElement);
	}else if (typeof evt.relatedTarget != 'undefined' && evt.relatedTarget){
		return !contains(element, evt.relatedTarget);
	}
}

function contains (container, containee){
	while (containee){
		if (container == containee){
			return true;
		}
		containee = containee.parentNode;
	}
	return false;
}



