

/*****************  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('corps').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
*/
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);
}
