

/*****************  gestion dynamique de la taille de police  *****************/
/*****************                 ylc 08/2007                *****************/

var MinFontSize = 0.8;
var MaxFontSize = 2.5;
var ActualFontSize = 1;

function modFontSize(step) {
    ActualFontSize += (step/10);
    if (ActualFontSize > MaxFontSize) ActualFontSize = MaxFontSize;
    if (ActualFontSize < MinFontSize) ActualFontSize = MinFontSize;
    document.getElementById('conteneur').style.fontSize = ActualFontSize+'em';
    
}

function ecrireCourriel(part1,part2,libelle){
	if(libelle==null){
		libelle = part1 + "@" + part2;
	}
	document.write("<a href=" + "mail" + "to:" + part1 + "@" + part2 + ">" + libelle + "</a>");
}

function zoomPhoto(urlPhoto) {
	
	var largeur = 0;
	var hauteur = 0;
	if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
		largeur = document.documentElement.clientWidth;
		hauteur = document.documentElement.clientHeight;
	}
	else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
		largeur = document.body.clientWidth;
		hauteur = document.body.clientHeight;
	}
	else {
		largeur = -1;
		hauteur = -1;
	}
	
		
	var divFondZoomPhoto = document.createElement("div");
	var divZoomPhoto = document.createElement("div");
	var divContenuZoomPhoto = document.createElement("div");
	var divContourZoomPhoto = document.createElement("span");
	
	
	
	divZoomPhoto.setAttribute("id","zoomPhoto");
	divFondZoomPhoto.setAttribute("id","fondZoomPhoto");
	divContenuZoomPhoto.setAttribute("id","contenuZoomPhoto");
	divContourZoomPhoto.setAttribute("id","contourZoomPhoto");
	
	divZoomPhoto.appendChild(divContenuZoomPhoto);
	divContenuZoomPhoto.appendChild(divContourZoomPhoto);
	
			
	var retourLigne = document.createElement("br");
			
			
	var photo = document.createElement("img");
	photo.setAttribute("src",urlPhoto);
	photo.setAttribute("alt","");
	photo.setAttribute("style","max-height:"+(hauteur-100)+"px;height:expression((this.height > "+(hauteur-100)+") ? "+(hauteur-100)+": true)");
	
	
	var lienFermer = document.createElement("a");
	lienFermer.setAttribute("href","javascript:fermerZoomPhoto();");
	lienFermer.setAttribute("onclick","fermerZoomPhoto();");
	lienFermer.innerHTML = "Fermer cette fenêtre";
	var lienFermer2 = document.createElement("a");
	lienFermer2.setAttribute("href","javascript:fermerZoomPhoto();");
	lienFermer2.setAttribute("title","Cliquez pour fermer cette fenêtre");
	lienFermer2.setAttribute("onclick","fermerZoomPhoto();");
	
	
	lienFermer2.appendChild(photo);
	divContourZoomPhoto.appendChild(lienFermer2);	
	divContourZoomPhoto.appendChild(retourLigne);
	divContourZoomPhoto.appendChild(lienFermer);
	
	var premiereDivBody = document.body.getElementsByTagName('div')[0]
	
	document.body.insertBefore(divFondZoomPhoto,premiereDivBody);
	document.body.insertBefore(divZoomPhoto,premiereDivBody);
	
}

function fermerZoomPhoto() {
	document.body.removeChild(document.getElementById("fondZoomPhoto"));
	document.body.removeChild(document.getElementById("zoomPhoto"));
}

/*
* La fonction httpRequest permet de mettre à jour un contenu html
* à l'aide d'une requête XMLHttpRequest.
*
* paramêtres : 
*	- htmlElement : élément HTML dont le contenu devra être mis à jour (objet Element) 
*	- urlToCall : adresse du script à appeler (chaine de caractères)
*	- params : paramêtres à envoyer au script. Doivent être sous la forme d'une query (chaine de caractères)
*
*	Pour executer du code à la fin de la request, redefinir dans la page la méthode toCallAtEndOfRequest()
*/
function httpRequest(htmlElement, urlToCall, params){
	//Création de l'objet XMLHTTPREQUEST
	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", urlToCall, true);

	xhr_object.onreadystatechange = function() {
		//alert ("reponse");
		if(xhr_object.readyState == 4){
//			alert("reponse ok");
//			alert(xhr_object.responseText);
   			htmlElement.innerHTML= xhr_object.responseText;
   			toCallAtEndOfRequest();
		}
	}

	xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xhr_object.setRequestHeader("Content-Transfer-Encoding", "iso-8859-1");
	xhr_object.send(params);
}

function toCallAtEndOfRequest(){}
/*************************************************************************************************/

/*
* La fonction createHTTPRequest permet de créer et d'éxécuter une requete http
*
* paramêtres : 
*	- urlToCall : adresse du script à appeler (chaine de caractères)
*	- params : paramêtres à envoyer au script. Doivent être sous la forme d'une query (chaine de caractères)
*   - fonction_at_return : fonction a éxécuter au retour de la requète (doit avoir un parametre, qui sera l'objet xhr)
*   - method : optionnel, par défaut : GET
*
* Element utile à connaitre sur un objet xhr : 
* - xhr_object.readyState : indique l'état de la requette ( 4 indique que tout s'est bien passé)
* - xhr_object.responseText : contenu du retour
*
* exemple de contenu de la fonction_at_return : 
	if(xhr_object.readyState == 4){
		document.getElementById("contenuFicheDetailPoint").innerHTML = xhr_object.responseText;
		document.getElementById('listeFichesOffreHXR').scrollTop = 0;
	}
*
*/
function createHTTPRequest(urlToCall, params, fonction_at_return, method){
	if(!method){method = "GET";}
	//Création de l'objet XMLHTTPREQUEST
	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(method, urlToCall, true);

	xhr_object.onreadystatechange = function(){
		fonction_at_return(xhr_object);
	}

	xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xhr_object.setRequestHeader("Content-Transfer-Encoding", "iso-8859-1");
	xhr_object.send(params);
}

function afficherDetail(ident,hauteur_div){
	obj=document.getElementById(ident);
	obj2=document.getElementById("lire_la_suite_"+ ident );
    if(obj!=null){
        if(obj.style.overflow=="hidden" || obj.style.overflow==""){ 
        		obj.style.overflow="visible";
        		obj.style.height="100%";
        		
        		if(obj2!=null){obj2.innerHTML="Masquer";}
        }
        else{ 
        		obj.style.overflow="hidden"
        		obj.style.height=hauteur_div+"px";
        		
        		if(obj2!=null){obj2.innerHTML="Lire la suite";}
        };
    }
    //alert(obj.style.overflow);
    return false;
	
}

function agrandir_image(id_image){
	obj=document.getElementById(id_image);
	if(obj!=null){
		if (obj.style.maxWidth==""){
			obj.style.maxWidth="600px";
			obj.style.maxHeight="500px";
		}else{
			obj.style.maxWidth="";
			obj.style.maxHeight="";
		}
	}
}

function affiche_carte_region(){
	obj=document.getElementById("selection_region");
	obj2=document.getElementById("carteRegionFlash");
	obj3=document.getElementById("libelle_region");
	if(obj!=null){
		if (obj.style.height==""){
			obj.style.height="197px";
			obj2.style.display="";
			obj3.style.display="none";
		}else{
			obj.style.height="";
			obj2.style.display="none";
			obj3.style.display="";
		}
	}
}

function affiche_panier(){
	/*obj=document.getElementById("kameleon_panier");
	
	if(obj!=null){
		if (obj.style.height==""){
			obj.style.height="197px";
			kameleon_affiche_panier();
		}else{
			kameleon_affiche_nb_articles_panier();
			obj.style.height="";
		}
	}*/
	window.location="default.asp?mode=commande_panierliste";
}
function afficheId(index,display){
    //alert(index +"-"+ display);
	var obj=document.getElementById(index);
	if(obj!=null) {
		if (display==""){
		    if (currentDiv!=null) afficheId(currentDiv,"none");
		    currentDiv=index;
		}else currentDiv=null;
		obj.style.display=display;
	}
}
function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|s)" + className + "(s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i ];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

function afficheDetailTarif(ident){
	bloc1=getElementsByClassName("ligne_tarifs_"+ ident);
	for (i=0;i<bloc1.length;i++){
    	bloc1[i].style.display='';
    }
	//Afficher le bouton pour masquer les tarifs
	document.getElementById("lien_masquer_tarifs_"+ ident).style.display="";
	document.getElementById("lien_afficher_tarifs_"+ ident).style.display="none";
}
function masquerDetailTarif(ident){
	bloc1=getElementsByClassName("ligne_tarifs_"+ ident);
	for (i=0;i<bloc1.length;i++){
    	bloc1[i].style.display='none';
    }
	//Afficher le bouton pour afficher les tarifs
	document.getElementById("lien_masquer_tarifs_"+ ident).style.display="none";
	document.getElementById("lien_afficher_tarifs_"+ ident).style.display="";
}
